LED Steuerung für Zustandsanzeige

Eine einfache Art der Anzeige ist das Ampelsystem. Dieses kann mit 2 oder 3 LEDs verwirklicht werden. Rot bedeutet, dass die Pflanzenerde trocken ist und grün bedeutet, dass die Erde feucht ist. Zusätzlich kann auch noch orange hinzugefügt werden, um einen Zwischenwert anzuzeigen. Der Programmcode funktioniert für alle Ansteuerungsarten. Lediglich die Schemen ändern sich je nach Bedarf.

RGB-LED Steuerung für Zustandsanzeige

Eine einfache Art der Anzeige ist das Ampelsystem. Dieses kann mit einer RGB-LED verwirklicht werden. Rot bedeutet, dass die Pflanzenerde trocken ist orange ist ein Zwischenwert und grün bedeutet, dass die Erde feucht ist.

 

///////////////////////////////////*DEFINITIONEN*///////////////////////////////////
  /*LEDs*/
#define LED_ORANGE 3 //Die orange LED wird am Pin3 angesteuert
#define LED_GREEN 5 //Die grüne LED wird am Pin5 angesteuert
#define LED_RED 6 //Die rote LED wird am Pin6 angesteuert

///////////////////////////////////*SETUP*///////////////////////////////////
void setup() {
  /*LEDs*/
  pinMode(LED_ORANGE, OUTPUT); //Definerte den PIN der orangen LED als Ausgang
  pinMode(LED_GREEN, OUTPUT); //Definerte den PIN der grünen LED als Ausgang
  pinMode(LED_RED, OUTPUT); //Definiert den PIN der roten LED als Ausgang

}

///////////////////////////////////*LOOP*///////////////////////////////////
void loop() {
  /*LEDs*/
  Green(); //Öffnet das Programm, in welchem die grüne LED angeschaltet und die anderen LEDs ausgeschaltet werden
  delay(1000); //Wartet 1 Sekunde
  
  Orange(); //Öffnet das Programm, in welchem die orange LED angeschaltet und die anderen LEDs ausgeschaltet werden
  delay(1500); //Wartet 1.5 Sekunden
  
  Red(); //Öffnet das Programm, in welchem die rote LED angeschaltet und die anderen LEDs ausgeschaltet werden
  delay(2000); //Wartet 2 Sekunden
}

///////////////////////////////////*WEITERE FUNKTIONEN*///////////////////////////////////
  /*LEDs*/
void Green(){
  /*Dieses Programm lässt die grüne LED leuchten und löscht die anderen LEDs*/
  digitalWrite(LED_GREEN, HIGH);
  digitalWrite(LED_ORANGE, LOW);
  digitalWrite(LED_RED, LOW);
}

void Orange(){
  /*Dieses Programm lässt die orange LED leuchten und löscht die anderen LEDs*/
  digitalWrite(LED_GREEN, LOW);
  digitalWrite(LED_ORANGE, HIGH);
  digitalWrite(LED_RED, LOW);
}

void Red(){
    /*Dieses Programm lässt die rote LED leuchten und löscht die anderen LEDs*/
    digitalWrite(LED_GREEN, LOW);
    digitalWrite(LED_ORANGE, LOW);
    digitalWrite(LED_RED, HIGH);
}

 

 

///////////////////////////////////*DEFINITIONEN*///////////////////////////////////
  /*RGB*/
#define LED_BLUE  3 //Die blaue RGB-LED wird am Pin3 angesteuert
#define LED_GREEN 5 //Die grüne RGB-LED wird am Pin5 angesteuert
#define LED_RED 6 //Die rote RGB-LED wird am Pin6 angesteuert

///////////////////////////////////*SETUP*///////////////////////////////////
void setup() {
  /*RGB*/
  pinMode(LED_BLUE, OUTPUT); //Definerte den PIN der blauen RGB-LED als Ausgang
  pinMode(LED_GREEN, OUTPUT); //Definerte den PIN der grünen RGB-LED als Ausgang
  pinMode(LED_RED, OUTPUT); //Definiert den PIN der roten RGB-LED als Ausgang

}

///////////////////////////////////*LOOP*///////////////////////////////////
void loop() {
  /*RGB*/
  RGB();

}

///////////////////////////////////*WEITERE FUNKTIONEN*///////////////////////////////////
void RGB (){
  /*Dieser Programmteil lässt die blaue RGB-LED leuchten*/
  analogWrite(LED_BLUE, 255);
  analogWrite(LED_GREEN, 0);
  analogWrite(LED_RED, 0);
  delay(1000); //Wartet 1 Sekunde
  
  /*Dieser Programmteil lässt die grüne RGB-LED leuchten*/
  analogWrite(LED_BLUE, 0);
  analogWrite(LED_GREEN, 255);
  analogWrite(LED_RED, 0);
  delay(1500); //Wartet 1.5 Sekunden
  
  /*Dieser Programmteil lässt die rote RGB-LED leuchten*/
  analogWrite(LED_BLUE, 0);
  analogWrite(LED_GREEN, 0);
  analogWrite(LED_RED, 255);
  delay(2000); //Wartet 2 Sekunden
}