87 lines
2.3 KiB
Markdown
87 lines
2.3 KiB
Markdown
# Z-Lab Arduino-Grundkurs Projekt 3: Externe LED und mehrere LEDs
|
|
|
|
In diesem Projekt lassen wir eine LED blinken.
|
|
|
|
Zuerst öffnen wir das Projekt über den gewohnten Weg. Der Name ist "03_Externe_LED"
|
|
|
|
![Projekt öffnen](image.png)
|
|
|
|
Wenn du dieses Projekt öffnest wunderst du dich bestimmt. Das sieht ja genau so aus wie beim letzten Mal.
|
|
|
|
Genau! Um mehrere LEDs und auch externe LEDs anzusteuern reicht unser C-Wissen aus den letzten beiden Projekten völlig aus. Wir müssen nur das gelernte neu kombinieren und schon können wir externe LEDs und auch mehrere LEDs anschließen und unterschiedlich blinken lassen.
|
|
|
|
## Teileliste
|
|
|
|
Für dieses Projekt brauchst du:
|
|
* 2 oder mehr (kommt drauf an, was du vor hast) LEDs mit 20ma Leistungsaufnahme
|
|
* 2 oder mehr 220ohm -1kohm-Widerstände
|
|
|
|
## Wenn wir wollen können wir also auch eine externe LED anschließen...
|
|
|
|
Das Ganze verkabeln wir mit dem Arduino so:
|
|
|
|
<img src="Blinken_bb.svg">
|
|
|
|
Also:
|
|
* Die LED kommt in ein Breadboard
|
|
* an die längere Seite der LED schließen wir den Widerstand an
|
|
* das andere Ende des Widerstands verbinden wir mit dem Ausgang 12 des Arduino
|
|
* Wie müssen wir den Code anpassen?
|
|
|
|
<details>
|
|
<summary>hier klicken für (zwei mögliche) Lösungen</summary>
|
|
|
|
### Lösung mit "hart-Kodierter" Nummer
|
|
```c
|
|
void setup() {
|
|
pinMode(12, OUTPUT);
|
|
}
|
|
|
|
void loop() {
|
|
digitalWrite(12, HIGH);
|
|
delay(1000);
|
|
digitalWrite(12, LOW);
|
|
delay(1000);
|
|
}
|
|
```
|
|
|
|
|
|
### Lösung mit #define
|
|
```c
|
|
#define LED1 12
|
|
|
|
void setup() {
|
|
pinMode(LED1, OUTPUT);
|
|
}
|
|
|
|
void loop() {
|
|
digitalWrite(LED1, HIGH);
|
|
delay(1000);
|
|
digitalWrite(LED1, LOW);
|
|
delay(1000);
|
|
}
|
|
```
|
|
</details>
|
|
|
|
|
|
|
|
## Und wie könnte es weiter gehen?
|
|
* Was müssten wir denn tun, wenn wir beide LEDs (die interne und die externe) abwechselnd blinken lassen wollten?
|
|
* Und wir müssten wir vorgehen, wenn wir 3 LEDs nacheinander blinken lassen wollen?
|
|
* Welche Ideen habt ihr noch (Zeit im Auge behalten)
|
|
|
|
|
|
<details>
|
|
<summary>Hier klicken für Lösungsvorschläge - aber bitte erst selbst probieren! </summary>
|
|
<details>
|
|
<summary>Ja wirklich. Bitte erst selbst probieren. Nicht gleich nach der Lösung schauen.</summary>
|
|
|
|
### Lösung mit #define
|
|
|
|
```c
|
|
|
|
TODO: hier Lösungsvorschläge
|
|
|
|
```
|
|
</details>
|
|
</details> |