Mithilfe serieller Schnittstelle LEDs zum leuchten bringen?!

Hallo zusammen!

Für ein Projekt im Betrieb soll ich mithilfe einer seriellen Schnittstelle(USB) über den Arduino 4 LEDs steuern können.

Das Prinzip soll folgendermaßen funktionieren:

Das Programm gibt eine "1" aus, damit soll die LED1 angeschaltet werden. Wenn nun erneut eine "1" gesendet wird, soll die LED1 ausgeschaltet werden.

Das selbe Prinzip soll genauso für "2"-"4" funktionieren.

Meinen bisherigen Versuch habe ich leider auf dem Firmenpc und kann es gerade nicht mitposten.

Habt ihr eine Idee, wie ich es, möglichst einfach, lösen kann?

Gruß

ProgoX

Einfach und nicht besonders elegant, sollte aber tun was du verlangst (nur übersetzt, nicht getestet).

const byte led1 = 2;
const byte led2 = 3;
const byte led3 = 4;
const byte led4 = 5;

void setup() {
  pinMode(led1, OUTPUT);
  pinMode(led2, OUTPUT);
  pinMode(led3, OUTPUT);
  pinMode(led4, OUTPUT);
  Serial.begin(115200);
}

void loop() {
  if (Serial.available()) {
    switch (Serial.read()) {
      case '1': digitalWrite(led1, !digitalRead(led1)); break;
      case '2': digitalWrite(led2, !digitalRead(led2)); break;
      case '3': digitalWrite(led3, !digitalRead(led3)); break;
      case '4': digitalWrite(led4, !digitalRead(led4)); break;
    }
  }
}

Danke Whandall!

Der Code funktioniert einwandfrei!
Jetzt habe ich auch noch eine neue Funktion gelernt!
Von SwitchCase habe ich vorher noch nicht gehört.

Kannst du mir das mit dem Toggeln der LEDs noch näher erklären?

switch/case ist nur eine andere Schreibweise für if/else if

digitalWrite(led1, !digitalRead(led1));

Pin auslesen. Zustand invertieren. Pin setzten.