Binärzähler mit LEDs
Teil des Abschnitts Ausgaben der Arduino-Journey von Coddy. Lektion 19 von 24.
Vier LEDs können eine beliebige Zahl von 0 bis 15 in Binärdarstellung anzeigen, so wie Computer Zahlen speichern. Jede LED-Stelle ist doppelt so viel wert wie die vorherige: 1, 2, 4 und 8. Eine leuchtende LED addiert ihren Wert:
- 5 ist 4 + 1: Die LEDs mit den Werten 4 und 1 leuchten
- 10 ist 8 + 2
- 15 sind alle vier
Jede Stelle wird Bit genannt und ab 0 nummeriert, dem Bit mit dem Wert 1. bitRead(number, n) gibt Bit n einer Zahl zurück, 1 oder 0:
bitRead(5, 0); // 1: 5 enthält die 1
bitRead(5, 1); // 0: 5 enthält keine 2
bitRead(5, 2); // 1: 5 enthält die 4Da 1 HIGH und 0 LOW ist, kann Bit i direkt an LED i angeschlossen werden:
for (int i = 0; i < 4; i++) {
digitalWrite(ledPins[i], bitRead(count, i));
}Hier ist ledPins[0], Pin 2, die LED auf der rechten Seite mit dem Wert 1, wie die letzte Ziffer einer Zahl.
Aufgabe
MittelLass die vier LEDs binär zählen:
- setze
countauf 0 - zeige den Wert mit
bitRead()auf den LEDs an, BitiaufledPins[i] - warte 250 ms, addiere 1 und beginne nach 15 wieder bei 0
Klicke auf Run und dann auf Check.
Probier es selbst
int ledPins[] = {2, 3, 4, 5}; // Wertigkeit: 1, 2, 4, 8
int count = 0;
void setup() {
for (int i = 0; i < 4; i++) {
pinMode(ledPins[i], OUTPUT);
}
}
void loop() {
// count binär anzeigen, 250 ms warten, dann hochzählen (nach 15 zurück zu 0)
}
Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Ausgaben
Übe selbstständig: Arduino-Playground