Pages: [1]   Go Down
Author Topic: Ricevitore IR + SPEAKER..Strano problema  (Read 433 times)
0 Members and 1 Guest are viewing this topic.
Montalbano Jonico
Offline Offline
Sr. Member
****
Karma: 1
Posts: 287
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

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:

Code:
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:

Code:
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..
Code:
  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!!
Logged

Catania
Offline Offline
Sr. Member
****
Karma: 0
Posts: 346
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Credo dipenda dal fatto che sia la libreria IR che la funzione Tone utilizzano entrambi il Timer2 di Arduino, quindi non è possibile usarli insieme.  Ma lascio la parola agli esperti...
Logged

BZ (I)
Online Online
Brattain Member
*****
Karma: 250
Posts: 21201
+39 349 2158303
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

che altoparlante é e come lo hai collegato ad Arduino?
Ciao Uwe
Logged

Montalbano Jonico
Offline Offline
Sr. Member
****
Karma: 1
Posts: 287
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

che altoparlante é e come lo hai collegato ad Arduino?
Ciao Uwe
Un semplice speaker di quelli che si vedono negli esempi.. Collegato il negativo e poi l altro ad un pin digitale di arduino.. Dopo ho provato anche a mettere una resistenza da 220 ohm ma niente .. Anzi ne ho provata anche da 100 ma comunque nnt ovviamente ..
Logged

Pages: [1]   Go Up
Jump to: