Steuerung für Binäranzeige

Binärschaltung:

Dieser Programmcode steuert die Ansteuerung von 8 LEDs. Momentan wird in einer for-Schleife von 0 auf 255 gezählt, doch kann mit wenigen Wechseln ein anderer Zahlenwert bzw. ein Messwert wie die Umgebungstemperatur binär visualisiert werden. Die Schaltung ist mit LEDs und Widerständen günstig aufzubauen, doch braucht sie auch viele Verbindungsdrähte.

 

///////////////////////////////////*DEFINITIONEN*///////////////////////////////////
  /*LED binär*/
  //In diesem Abschnitt werden 8 LEDs zu 8 Pins des Arduinos zugeordnet.
#define LED1 5
#define LED2 6
#define LED4 7
#define LED8 8
#define LED16 9
#define LED32 10
#define LED64 11
#define LED128 12

///////////////////////////////////*SETUP*///////////////////////////////////
void setup() {
  /*LED binär*/
  //In diesem Abschnitt werden die Pins am Ardunio als Ausgänge definiert.
  pinMode(LED1, OUTPUT);
  pinMode(LED2, OUTPUT);
  pinMode(LED4, OUTPUT);
  pinMode(LED8, OUTPUT);
  pinMode(LED16, OUTPUT);
  pinMode(LED32, OUTPUT);
  pinMode(LED64, OUTPUT);
  pinMode(LED128, OUTPUT);
}

///////////////////////////////////*LOOP*///////////////////////////////////
void loop() {
  /*LED binär*/
  //In diesem Abschnitt wird von 0 auf 255 gezählt. Sobald 255 erreicht ist, beginnt das Zählen wieder bei 0. Mit Hilfe der Division und der Modulorechnung kann bestimmt werde, dass jede LED nur ab einem bestimmten Wert HIGH ist.
  for (byte i = 0; i < 256; i++){
    digitalWrite(LED1, (i/1)%2);
    digitalWrite(LED2, (i/2)%2);
    digitalWrite(LED4, (i/4)%2);
    digitalWrite(LED8, (i/8)%2);
    digitalWrite(LED16, (i/16)%2);
    digitalWrite(LED32, (i/32)%2);
    digitalWrite(LED64, (i/64)%2);
    digitalWrite(LED128, (i/128)%2);
    delay(200);
  }
}