Home
Accesso / Registrazione
 di 

Usiamo il DTMF TRANSCEIVER MT 8889 C

DTMF TRANSCEIVER MT 8889 C

DTMF transceiver MT 8889.Credo che tutti almeno una volta abbiamo avuto a che fare con l’8870, il più famoso e diffuso decodificatore di segnali DTMF.

Introduzione DTMF transceiver MT 8889 C

Il decodificatore di segnali DTMF infatti, è presente in molte applicazioni sia hobbystiche che professionali, con un corredo molto vasto di esempi ed applicazioni. Un parente strettissimo dell’8870 di cui ho avuto bisogno di avvalermi recentemente, e di cui desidero parlarvi in queste righe è l’MT8889. Non lasciatevi intimorire dal tipo di gestione, che richiede esclusivamente l’adozione di circuiti a microcontrollore od a microprocessore. L’MT8889 racchiude al suo interno un validissimo, nonché efficientissimo ricevitore e trasmettitore full duplex per segnali DTMF. Dispone inoltre di un sensibile e selettivo circuito, chiamato sul datasheet “call progress”, grazie al quale, nel caso venisse utilizzato sulle linee telefoniche, sarebbe in grado di determinare con esattezza se la linea telefonica sulla quale si sta operando, è libera od occupata; semplicemente testando il tono di chiamata o di squillo.

dtmf_transceiver_diagramma_blocchi_funzionamento

Le procedure che troverete descritte più avanti, ovviamente sono state tratte dal datasheet molto dettagliato ed esauriente che ho trovato in rete, e riguarderanno esclusivamente le prove da me effettuate in laboratorio, inerenti la ricezione e la trasmissione dei toni DTMF; demandando a chi legge eventuali approfondimenti circa l’utilizzo della sezione “call progress”.

“Data Bus Buffer”

Cominciamo con l’esaminare lo schema a blocchi interno dell’MT8889 visibile in Fig.1, focalizzando la nostra attenzione sul registro di comunicazione “Data Bus Buffer”, che può essere predisposto da programma come porta di comunicazione d’uscita oppure d’ingresso. Tale buffer, è accessibile tramite quattro linee di I/O indicate con D0, D1, D2 e D3, attraverso le quali è possibile scrivere sul registro “Transmit Data Register” il dato relativo al tono da trasmettere; leggere sul registro “Receive Data Register” il dato relativo ai toni ricevuti; scrivere sui registri di controllo “Control register A” e “Control register B”, per selezionare il tipo di funzionamento; ed infine leggere il registro “Status Register”, monitorando il quale è possibile conoscere istante per istante e con esattezza, lo stato di funzionamento dell’intero chip.

dtmf_transceiver_toni_alti_toni_bassi

Se state ancora leggendo questo articolo, vuol dire che siete a conoscenza della funzione svolta dai toni DTMF e di come e dove essi siano usati. Solo per completezza quindi, nella fig.2 vi propongo una tabella di corrispondenza tra toni e relativi caratteri associati; dove per ogni carattere, verticalmente ed orizzontalmente possiamo facilmente individuare quali frequenze sono generate.

Mentre nella fig.3 è riportato per ogni carattere, il numero binario ad esso associato, che scriveremo sulle linee di I/O affinché sia trasmesso, oppure leggeremo dalle linee di I/O quando ricevuto.

dtmf_transceiver_digit

“Control register A”

Esaminiamo adesso la funzione svolta dal registro di controllo “A” il cui contenuto è rappresentato nella tabella di seguito riportata, dalla quale si intuisce che il registro e costituito da quattro bits, per ognuno dei quali è riportato il nome e la funzione svolta.

“Control register B”

É la volta adesso del registro di controllo “B” il cui contenuto è rappresentato nella tabella di seguito riportata; anche questo registro è costituito da quattro bits, per ognuno dei quali è riportato il nome e la funzione svolta.

“Status Register”

Veniamo adesso alle possibilità offerte dal registro di stato “Status Register”, sul quale non è consentito scrivere, ma soltanto leggere.

 Temporizzazioni

Per rendere più comprensibile quanto fin qui descritto, nonché per stilare le istruzioni nel linguaggio da voi preferito con le temporizzazioni opportune, nella fig.4 vi propongo il grafico che ho rilevato dal mio circuito di prova, da cui si evince lo stato logico dei vari pins interessati alle varie fasi di lettura e scrittura, nonché la corretta sequenza delle istruzioni da impartire.

Conclusioni

Spero di aver fornito degli spunti utili, sui quali basarsi per stilare un eventuale programma nel linguaggio da voi preferito. Chi lo desidera può anche richiedere il programmino che ho usato durante le mie prove, col quale potrete verificare immediatamente, gli effetti delle varie impostazioni. In questo caso, dovrete realizzare lo schemino che vi propongo nella fig.5, badando bene che tutti i collegamenti siano rispettati, onde evitare brutte sorprese con la porta parallela del vostro PC. A tal proposito, visto l’esiguo assorbimento del circuito, ma soprattutto per proteggere la preziosa porta parallela del PC, suggerisco caldamente di alimentare il circuito con delle pilette, io ne ho usate quattro in serie da 1,2V.

Non essendoci tarature da effettuare, non appena darete alimentazione, tutto dovrà funzionare al primo colpo. Occorre soltanto regolare i due potenziometri, per dosare i segnali a livelli opportuni. Durante le mie prove, ho riscontrato che il livello ottimale del segnale di B.F. misurato nel punto “Lev.”, è di 150 mVpp. Il software è a disposizione di tutti coloro che vogliono cimentarsi in questa impresa, o che desiderano semplicemente provare questo fantastico componente; è scaricabile gratuitamente dal sito www.edizionicec.it, così come l'articolo completo che, per ragioni di spazio è stato qui ridotto.

radiokit elettronica

 

 

Scrivi un commento all'articolo esprimendo la tua opinione sul tema, chiedendo eventuali spiegazioni e/o approfondimenti e contribuendo allo sviluppo dell'argomento proposto. Verranno accettati solo commenti a tema con l'argomento dell'articolo stesso. Commenti NON a tema dovranno essere necessariamente inseriti nel Forum creando un "nuovo argomento di discussione". Per commentare devi accedere al Blog

 

 

Login   
 Twitter Facebook LinkedIn Youtube Google RSS

Chi è online

Ci sono attualmente 1 utente e 63 visitatori collegati.

Utenti online

Ultimi Commenti