Untitled
unknown
plain_text
a year ago
2.8 kB
5
Indexable
import RPi.GPIO as GPIO import time # Definir os pinos dos LEDs e da lâmpada, excluindo os pinos 23 e 24 LED_PINS = [17, 27, 22, 5, 6, 13, 19, 26] LAMPADA_PIN = 12 # Configurar os pinos GPIO GPIO.setmode(GPIO.BCM) for pin in LED_PINS: GPIO.setup(pin, GPIO.OUT) GPIO.setup(LAMPADA_PIN, GPIO.OUT) # Definir a sequência de ações conforme o padrão especificado sequencia_acoes = [ (['Led1', 'Led2'], None, 2), (['Led3'], None, 2), (['Led4'], None, 2), (['Led5', 'Led6'], None, 2), (['Led7', 'Led8'], ['Led1', 'Led2'], 2), (['Led3'], None, 2), (None, ['Lâmpada'], 2), (['Led4'], None, 2), (['Led5', 'Led6'], None, 2), (['Led4'], None, 2), (None, ['Lâmpada'], 2), (['Led4'], None, 2), (['Led5', 'Led6'], None, 2), (['Led4'], None, 2), (None, ['Lâmpada'], 2), (['Led7', 'Led8'], ['Led1', 'Led2'], 2), (['Led3'], None, 2), (['Led5', 'Led6'], None, 2), (None, ['Lâmpada'], 2), (['Led7', 'Led8'], ['Led1', 'Led2'], 2), (['Led5', 'Led6'], None, 2), (['Led3'], None, 2), (['Led1', 'Led2'], None, 2), (['Led5', 'Led6'], None, 2), ] def sequencia_leds_lampada(): for acao in sequencia_acoes: leds_on = acao[0] lampada_on = acao[1] duracao = acao[2] # Desligar todos os LEDs e a lâmpada for pin in LED_PINS: GPIO.output(pin, False) GPIO.output(LAMPADA_PIN, False) # Ligar os LEDs especificados na ação if leds_on: for led in leds_on: if led == 'Led1': GPIO.output(LED_PINS[0], True) elif led == 'Led2': GPIO.output(LED_PINS[1], True) elif led == 'Led3': GPIO.output(LED_PINS[2], True) elif led == 'Led4': GPIO.output(LED_PINS[3], True) elif led == 'Led5': GPIO.output(LED_PINS[4], True) elif led == 'Led6': GPIO.output(LED_PINS[5], True) elif led == 'Led7': GPIO.output(LED_PINS[6], True) elif led == 'Led8': GPIO.output(LED_PINS[7], True) # Ligar a lâmpada se especificado na ação if lampada_on: GPIO.output(LAMPADA_PIN, True) # Esperar pela duração especificada time.sleep(duracao) # Fim da sequência, desligar todos os LEDs e a lâmpada for pin in LED_PINS: GPIO.output(pin, False) GPIO.output(LAMPADA_PIN, False) # Chamada da função principal sequencia_leds_lampada() # Limpeza dos pinos GPIO ao final do programa GPIO.cleanup()
Editor is loading...
Leave a Comment