Snelle levering
Kortingsvoorwaarden voor bedrijven
Tot 10% korting voor scholieren, studenten en onderwijsinstellingen
Verzending binnen Europa begint bij € 4,90
Filter sluiten
Filter op:

Afwisselend knipperende LED's op de Raspberry Pi microcontroller

Hoe laat je twee LED's op de Raspberry Pi afwisselend knipperen?

Je kunt de elektronische componenten ook zonder T-cobbler op het breadboard aansluiten. In dit geval heb je echter een verbindingsdraad nodig van het type female - male voor de verbinding met de J6 connectorstrip van de Raspberry Pi, d.w.z. een bus voor de Raspberry Pi en een stekker voor het breadboard.

Bedradingsschema afwisselend knipperende LED's op de Raspberry Pi


De programmacode (afwisselend knipperende LED op de Raspberry Pi)

# Vanaf hier kan de code direct in de Python software worden gekopieerd.
# Zwart, gekleurd = code en grijs = uitleg
#We beginnen met het importeren van de programmamodules
importeer RPI.GPIO als GPIO
importeer tijd
GPIO.setmode(GPIO.BCM) #We stellen de modus in op BCM
GPIO.setup(23,GPIO.OUT) #Pin 23 is een uitgang.
GPIO.setup(24,GPIO.OUT) #Pin  24 is een uitgang.
# De lus begint hier
proberen:
while True: #While loop zodat het programma continu draait
GPIO.output(23,GPIO.HIGH) #Start de LED op pin 23.
GPIO.output(24,GPIO.LOW) # Schakelt de LED op pin 24 uit.
time.sleep(1) # Wacht 1 seconde
GPIO.output(23,GPIO.LOW) # Schakelt de LED op pin 23 uit.
GPIO.output(24,GPIO.HIGH) # Schakelt  de LED op pin 24 in.
time.sleep(1)
# Hier springt het programma aan het einde naar het begin van de lus. Dus..
# ...zet de LED aan op pin 23.
# ... enz... enz... enz..
except KeyboardInterrupt: # Met CTRL+C onderbreken we het programma
print ("Finished") # Schrijf "Finished" in het commandoregelvenster
GPIO.cleanup() # Beëindig het programma

In voorbeeld nr. 01 Knipperende LED hadden we de oneindige lus gerealiseerd met while True en inspringing van de volgende coderegels. Als je deze oneindige lus hebt afgebroken met de toetscombinatie Ctrl-C, zul je gemerkt hebben dat je ten eerste een foutmelding krijgt en ten tweede de LED kan blijven branden. Om deze twee ongewenste effecten te voorkomen, zijn er een paar regels code toegevoegd aan dit voorbeeld. De regel try: is ingevoegd vóór de while true-lus. De dubbele punt leidt tot het inspringen van de hele lus. Als er een fout optreedt in deze lus terwijl het programma draait, is er geen foutmelding, maar wordt het programma voortgezet bij except KeyboardInterrupt:. Met het print-commando wordt het einde van het programma afgedrukt in de Python-shell (onderste venster bij Thonny), met GPIO.cleanup() worden de GPIO's (dus onze LED's) uitgeschakeld en vrijgegeven voor andere doeleinden.

Voorbeeld: Verkeerslichtcyclus op de Raspberry Pi

Hier is een voorgestelde oplossing voor een verkeerslichtcyclus met behulp van de module gpiozero:

verkeerslichtcyclus op raspberry pi schema

stoplichtcyclus op raspberry pi schema replica

Uitleg Raspberry Pi code

Onderwerpen: #raspberry
Voer de tekenreeks in het onderstaande tekstveld in.

De velden met een * zijn verplicht.