Arduino -> Progetti -> Accendi e spegni vari LED con la voce
Schema elettrico
Codice sorgente Arduino
#include <SoftwareSerial.h>
SoftwareSerial BT(10, 11); //Utilizzo i pin 10 e 11
String state; //Variabile stringa da utilizzare per inviare il messaggio a bluetooth
void setup() {
BT.begin(9600); //Predispongo i pin 10 e 11 alla comunicazione seriale al posto di Rx e Tx
Serial.begin(9600); // Comunicazione seriale standard
pinMode(13, OUTPUT); // LED connected to 13th pin
pinMode(7, OUTPUT); // LED connected to 7th pin
pinMode(4, OUTPUT); // LED connected to 7th pin
}
//-----------------------------------------------------------------------//
void loop() {
while (BT.available()){ //Verificare se vi è un byte disponibili per la lettura
delay(10); //attendi per un decimo di secondo
char c = BT.read(); //Conduct a serial read
state = state + c; //Usa la seguente stringa per accendere i vari lLED
}
if (state.length() > 0) {
Serial.println(state);
if(state == "accendi rosso")
digitalWrite(13, HIGH);
else if(state == "spegni rosso")
digitalWrite(13, LOW);
if(state == "accendi verde")
digitalWrite(7, HIGH);
else if(state == "spegni verde")
digitalWrite(7, LOW);
if(state == "accendi giallo")
digitalWrite(4, HIGH);
else if(state == "spegni giallo")
digitalWrite(4, LOW);
if(state == "spegni tutto")
{ digitalWrite(4, LOW);
digitalWrite(7, LOW);
digitalWrite(13, LOW);
}
if(state == "accendi tutto")
{ digitalWrite(4, HIGH);
digitalWrite(7, HIGH);
digitalWrite(13, HIGH);
}
state ="";} //Resetta per il prossimo ciclo o loop la stringa
}