#define zielona 8
#define czerwona 9
#define ON "Włączam"
#define OFF "Wyłączam"
String odebraneDane = ""; //Pusty ciąg odebranych danych
bool stanZielona = false, stanCzerwona = false;
void setup() {
Serial.begin(9600); //Uruchomienie komunikacji
pinMode(zielona, OUTPUT); //Konfiguracja wyjść
pinMode(czerwona, OUTPUT);
digitalWrite(zielona, LOW); //Wyłączamy diody
digitalWrite(czerwona, LOW);
Serial.println("> Podaj kolor diody");
}
void loop() {
if(Serial.available() > 0) { //Czy Arduino odebrało dane
//Jeśli tak, to odczytujemy je do znaku końca linii i zapisz w zmiennej odebraneDane
odebraneDane = Serial.readStringUntil('\n');
if (odebraneDane == "zielona") { //Jeśli odebrano słowo "zielona"
digitalWrite(zielona, stanZielona = !stanZielona);
Serial.print(stanZielona ? ON : OFF); // operator warunkowy trójargumentowy
Serial.println(" zieloną");
}
else if (odebraneDane == "czerwona") { //Jeśli odebrano słowo "czerwona"
digitalWrite(czerwona, stanCzerwona = !stanCzerwona);
Serial.print(stanCzerwona ? ON : OFF);
Serial.println(" czerwoną");
}
else {
Serial.print("[BŁĄD]: nieznany kolor diody: \"");
Serial.print(odebraneDane);
Serial.println("\"");
}
Serial.println("\n> Podaj kolor diody");
}
}