Ciao a tutti.. ho uno strano problema.. Arduino con un ricevitore iR (funzionante alla perfezione) + uno SPEAKER.. Praticamente arduino con il ricevitore IR funziona correttamente se non passa dallo speaker.
Mi spiego meglio! Faccio le prove ad utilizzare il ricevitore senza speaker e funziona benissimo, stampa su monitor della seriale i valori da me decisi.. ogni volta risponde..
Se gli dico che dopo che ha mandato il messaggio sulla seriale.. di passare su una semplica funzione suona().. che mi suona lo speaker per 1 secondo.. dopo non risponde più!!
Vi posto un pezzo di codice per capire meglio:
void loop()
{
if (irrecv.decode(&results))
{
// B U T T O N 1
if ((results.value == BUTTON_1)||(results.value == BUTTON_1_ALT))
{
Serial.println("1000");
delay(500);
suona();
Serial.println("ritornato");
irrecv.resume();
Serial.println("ho fatto il resume");
}
// B U T T O N 2
if ((results.value == BUTTON_2)||(results.value == BUTTON_2_ALT))
{
Serial.println("1001");
delay(500);
irrecv.resume();
suona();
}
Questa è la funzione suona:
void suona()
{
tone(SPEAKER, 1000);
delay(200);
noTone(SPEAKER);
}
Ho provato anche a mettere tutto fuori dalla funzione ad ogni if ma niente.. non va.. Sulla seriale anche se premo i pulsanti dal telecomando non viene stampato più niente..
Inoltre vi dico che nel pezzo di codice..
Serial.println("ritornato");
irrecv.resume();
Serial.println("ho fatto il resume");
il messaggio "ho fatto il resume" viene stampato tranquillamente..
Dove sbaglio?!
Grazie mille a tutti!!