PICmicro Cult – Interfaccia per telecomando ad infrarossi

Interfaccia per telecomando ad infrarossi

In questa lezione proveremo a realizzare un semplice decodificatore per telecomandi TV ad infrarossi.

Il telecomando scelto è il tecomando universale SIMPLEX prodotto dalla società VISA Electronics.
Ho scelto questo telecomando per questa esercitazione in quanto è facilmente reperibile in qualsiasi negozio di apparecchiature elettriche ad un prezzo molto interessante ed è in grado di generare segnali per una grande varietà di TV color.
È un telecomando semplificato, da cui il nome SIMPLEX, dotato solamente di sei pulsanti:


  • Cambio canale + (che indicheremo con la sigla P+)
  • Cambio canale - (che indicheremo con la sigla P-)
  • Volume + (che indicheremo con la sigla V+)
  • Volume - (che indicheremo con la sigla V-)
  • Mute (che indicheremo con la sigla M)
  • Power (che indicheremo con la sigla PW)

Questo telecomando dispone di un dip switch accessibile rimuovendo lo sportello del porta batteria (una pila piatta da 9 volt) a cinque elementi con cui è possibile selezionare il tipo di televisore che si vuole comandare. Per questa esercitazione ho scelto il seguente settaggio dei dip switch:


  • DIP1 = On
  • DIP2 = Off
  • DIP3 = Off
  • DIP4 = Off
  • DIP5 = On

che corrisponde ad alcuni modelli di televisori Hitachi, Sony, Mitsubishi e Sharp. Più che al tipo di televisore la scelta della configurazione è stata dettata dalla semplicità con cui sono riuscito ad interpretare il tipo di segnale in uscita dal telecomando.
Per decodificarlo ho usato un ricevitore IS1U60 ad infrarossi prodotto dalla SHARP il cui schema a blocchi interno è riportato nella figura seguente:

Esternamente si presenta come un normale transistor a cui è stata montata una specie di calotta di plastica trasparente verde dotata di una lente da un lato. Internamente contiene tutta la circuiteria necessaria per ricevere un segnale ad infrarossi modulato a 38Khz, demodularlo e generare un segnale TTL pronto per essere decodificato dal nostro PIC.

Nella figura seguente sono riportate le dimensioni e la piedinatura estratte dal datasheet della Sharp:

L'intero datasheet dell'IS1U60 puo' essere scaricato da questo link

Per scrivere il firmware d'esempio per questa esercitazione ho alimentato l'IS1U60 collegando il pin GND (pin 2) a massa ed il pin Vcc (pin 3) a +5 volt e quindi con un oscilloscopio digitale ho osservato il segnale in uscita dal pin Vout (pin 1) premendo i tasti sul telecomando VISA.
I segnali che ho ottenuto corrispondono al segnale già demodulato inviato dal telecomando ad infrarossi. Come visibile nella figura seguente per ogni tasto viene generata una sequenza diversa ripetuta continuamente finché si mantiene il tasto premuto.

Con la nostra esercitazione vedremo come sia possibile riconoscere le diverse sequenze inviate dal telecomando.

Tecnica per il riconoscimento delle sequenze di codifica

Osservando la figura sopra riportata possiamo notare che cio' che cambia nelle diverse sequenze è il numero di impulsi a zero di durata pari a 1mS separati da impulsi a 1 da 3.4mS. Contando quanti impulsi a zero sono contenuti in ogni gruppo otteniamo la seguente tabella:

Tasto Sequenza
P+ 1,6,0,0
M 1,3,3,0
V+ 1,1,5,0
P- 2,5,0,0
PW 2,1,1,3
V- 3,4,0,0

Su questa tabella lavora la routine RxIfr contenuta nel source RXIFR.ASM che utilizzeremo per questa esercitazione. Una volta lanciata in esecuzione, questa routine controllerà se è presente almeno un impulso a zero sulla linea RX_IFR (linea RA2), quindi effettuerà il conteggio degli impulsi successivi fino ad un massimo di 4 gruppi.
Se al termine del conteggio il numero di impulsi corrisponde ad una delle sei combinazioni possibili, allora ritorna nel registro accumulatore W il valore corrispondente alla sequenza rilevata secondo la seguente tabella:

Valore di W Sequenza rilevata
0 Nessun tasto premuto
1 P+
2 M
3 V+
4 P-
5 PW
6 V-

Una volta rilevato il tasto premuto, il nostro programma visualizzerà in chiaro sul display LCD il nome del tasto premuto sul display.

Schema elettrico

Lo schema utilizzato per questa esercitazione è un derivato dello schema già usato nelle lezioni precedenti e riportato nel seguente file EXAMPLE8.PDF.

In aggiunta all'LCD già connesso al PIC è stato aggiunto il ricevitore ad infrarossi IS1U60 alimentato tramite i suoi pin 2 per la massa e 3 per la Vcc e collegato alla linea RA2 (pin1) del PIC tramite il pin di uscita del segnale demodulato Vout (pin 1).

Scarica subito una copia gratis
Tags:

Scrivi un commento

Seguici anche sul tuo Social Network preferito!

Send this to a friend