Menu
CoddyTech

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 4

Da 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.

challenge icon

Aufgabe

Mittel

Lass die vier LEDs binär zählen:

  • setze count auf 0
  • zeige den Wert mit bitRead() auf den LEDs an, Bit i auf ledPins[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)
}
quiz iconTeste dich selbst

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