Schaltplan für eine rote, grüne und blaue LED
In diesem Schaltplan werden drei LEDs mit drei verschiedenen Pins verbunden: 10, 11 und 12.
Gehe wieder zum Sketch zurück und ändere ihn wie folgt:
int redPin = 12; // Rote LED an Pin 12
int greenPin = 11; // Gruene LED an Pin 11
void setup() // Startet einmal am Anfang
{
pinMode(redPin, OUTPUT); // Digital Pin ist output
pinMode(greenPin, OUTPUT); // Digital Pin ist output
}
void loop() // Staendige Wiederholung
{
digitalWrite(redPin, HIGH); // Schatet die rote LED an
digitalWrite(greenPin, HIGH); // Schatet die gruene LED an
delay(500); // eine halbe Sekunde warten
digitalWrite(redPin, LOW); // Schatet die rote LED aus
digitalWrite(greenPin, LOW); // Schatet die gruene LED aus
delay(500); // eine halbe Sekunde warten
}
Du kannst diesen Text einfach kopieren und in das Arduino Eingabefenster einfügen.
Blitz Quiz
Was macht dieser Sketch? Kompiliere und übertrage diesen Sketch, um Deine Überlegungen zu überprüfen.
Markiere den folgenden Text mit der Maus, um die Lösung zu sehen!
Die beiden mit Pin 11 und 12 verbundenen LEDs blinken gleichzeitig.
Zum Abspielen, anklicken
Falls der Sketch nicht richtig laufen sollte, überprüfe alles genau:
- Wird der Sketch fehlerfrei kompiliert? Hat die Übertragung funktioniert?
- Sind die LEDs richtig angeordnet?
- Sind die Widerstände in den richtigen Steckbuchsen?
- Sind die LEDs auf der anderen Seite mit GND verbunden?
- Ist das Steckbrett richtig verdrahtet? Überprüfe die Verbindungen.
- Ändere den Code so, dass die LEDs abwechselnd blinken
Zum Abspielen, anklicken
Markiere den folgenden Text mit der Maus, um die Lösung zu sehen!
Ändere den zweiten Prozeduraufruf von digitaWrite um den Pin auf LOW zu setzen, und in dem vierten Aufruf auf HIGH
- Ändere die loop()-Prozedur so, dass beide LEDs für 500 ms an sind, dann soll nur die rote LED für 500 ms an sein, dann sollen beide LEDs aus sein, und zum Schluß soll die grüne LED für 500 ms an sein. Markiere den folgenden Text mit der Maus, um die Lösung zu sehen! void loop() // run over and over again { digitalWrite(redPin, HIGH); // sets the Red LED on digitalWrite(greenPin, HIGH); // sets the Green LED on delay(500); // waits for half a second digitalWrite(redPin, HIGH); // sets the Red LED on digitalWrite(greenPin, LOW); // sets the Green LED off delay(500); // waits for half a second digitalWrite(redPin, LOW); // sets the Red LED off digitalWrite(greenPin, LOW); // sets the Green LED off delay(500); // waits for half a second digitalWrite(redPin, LOW); // sets the Red LED off digitalWrite(greenPin, HIGH); // sets the Green LED on delay(500); // waits for half a second }




vor 2 years 38 weeks
Hallo, ich mache meine ersten Schritte mit dem Arduino Nano Board und habe natürlich auch mit den LEDs angefangen. Allerdings verhält sich mein Board/Programm nicht so wie erwartet: int led1 = 7; int led2 = 13; void setup() { // initialize the digital pin as an output: pinMode(led1, OUTPUT); pinMode(led2, OUTPUT); } void loop() { digitalWrite(led1, LOW); digitalWrite(led2, LOW); delay(500); digitalWrite(led1, HIGH); digitalWrite(led2, HIGH); delay(500); } Bei dem Programm würde man erwarten, dass beide LEDS gleichzeitig an bzw. aus gehen. In Wirklichkeit blinken die LEDs abwechselnd. Als Gegentest habe ich die Hauptschleife mal komplett auskommentiert und siehe da, LED1 leuchtet, LED2 nicht. Somit scheinen bei der Initialisierung unterschiedliche Werte gesetzt zu werden. Oder verstehe ich da was falsch ? Kann mir jemand helfen ? Danke, Maurice
Login or register to post comments