Home
Accesso / Registrazione
 di 

Chiave DTMF 2 canali 2/4

Chiave DTMF 2 canali progetto open source

La sezione di uscita della chiave è rappresentata da due relè alimentati a 12 volt e controllati da due linee di I/O del micro. Attraverso un dip-switch a tre poli è possibile selezionare le varie modalità di funzionamento della scheda. Il dip 1 attiva nella EEPROM del micro il codice di accesso di default mentre il dip 2 seleziona il modo di funzionamento dei relè: astabile o bistabile. Il dip 3 consente, se portato in ON, di attivare la funzione di ripristino dei canali; questa opzione consente di riportare, all’atto dell’accensione, i relè nello stesso stato in cui si trovavano prima dello spegnimento.

chiave_dtmf_diagramma_flusso_subroutine

IL SOFTWARE

Come detto in precedenza, tutte le funzioni logiche della scheda sono affidate ad un microcontrollore ed al relativo software. Vediamo quindi com’è realizzato quest’ultimo (cod. MF69) con l’aiuto dello schema a blocchi riportato nell’articolo. Per prima cosa il micro inizializza le porte di I/O, ovvero configura ogni suo piedino al funzionamento richiesto per poi leggere nella memoria EEPROM sia i quattro toni di accesso che la cella contenente lo stato dei relè.

A questo punto, accende e inizializza il telefono cellulare per poi passare a svolgere il primo test, quello sul dip 3 di DS1. Se tale dip è chiuso, il micro agisce sui relè riportandoli nello stato assunto prima dell’ultimo spegnimento, in caso contrario (dip aperto) va a verificare lo stato del primo polo. Se questo è chiuso, nella EEPROM viene memorizzato un codice di accesso di default che coincide con i toni “1”, “2”, “3” e “4”.

I test sul dip 1 di DS1 e sulla chiamata dal cellulare appartengono al “main program”, ovvero il micro ricicla in continuazione finché non si verifica uno dei due eventi. Qualora venga rilevata una chiamata, il programma chiude la linea telefonica, inizializza il timer per generare una interruzione dopo circa 30 sec e attende ciclicamente una sequenza di quattro toni DTMF validi. Se i toni ricevuti coincidono con quelli disponibili in memoria, il programma invia una nota di risposta e passa alla gestione della subroutine “comandi”. In caso contrario (sequenza di toni errata) la linea viene subito disimpegnata. Lo schema a blocchi della subroutine “comandi” è riportato nell’articolo. Il micro attende, con un time-out di due minuti, dei particolari toni DTMF a cui associa una precisa funzione: i toni interpretati sono “1”, “2”, “#” e “*”. Inviando alla chiave il tono “1”, il micro agisce sul relè 1 in due diversi modi, in funzione del dip 2 di DS1: se tale dip è in OFF il relè cambia stato, ovvero viene aperto se era precedentemente chiuso o viceversa (funzionamento bistabile); se il dip è in ON il relè viene chiuso per circa un secondo (funzionamento astabile).

Il programma genera poi una nota di risposta che invia in linea per confermare l’avvenuta esecuzione del comando. Tale nota è di tipo continuo se il relè viene chiuso, oppure è modulata se il relè viene aperto. Nel funzionamento astabile la nota di risposta è sempre di tipo continuo. Inviando alla chiave il tono 2, il micro si comporta come sopra, agendo però sul secondo canale della chiave (RL2). Per programmare un nuovo codice di accesso occorre inviare alla chiave il tono cancelletto (#): in questo caso, il programma genera una nota modulata di retroazione e attende una sequenza di quattro toni DTMF. Successivamente trasferisce i toni ricevuti nella memoria EEPROM e invia una seconda nota modulata per indicare il termine della subroutine di programmazione del codice. Il tono * (asterisco) o lo scadere del time-out di due minuti provocano l’uscita del programma dalla subroutine “comandi”: il software apre la linea telefonica e ritorna nel main program. Ultimata così l’analisi del software implementato, non ci resta che entrare nei dettagli del circuito analizzandone lo schema elettrico.

Il kit è disponibile da Futura 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

Ultimi Commenti