Indice |
Finalità
Questo articolo nasce da recenti richieste poste nel Forum di ElectroPortal ed ha il duplice scopo di richiamare i concetti elementari del conteggio elettronico e mostrare come è oggi possibile simulare il comportamento dei circuiti che lo realizzano.
Dai noti contatori binari e poi a quelli decimali, vengono infatti illustrati i meno noti contatori per 6 impiegati per il conteggio dei secondi in un minuto (e dei i minuti in un'ora) nella misura digitale del tempo.
Si dà per scontato che il lettore conosca già i fondamenti quali gli elementi logici booleani e i blocchi sequenziali di base, quali i JK-FlipFlop,
e che abbia familiarità con la numerazione binaria e BCD.
Da queste premesse, è facile passare al concetto di "conteggio", cioè dallo stato di diversi elementi divisori per 2, messi in serie tra di loro.
Conteggio binario asincrono
L'essenza del conteggio binario non è infatti altro che l'interpretazione dello stato di questi stadi successivi, come è evidenziato nel seguente schema (tratto dall'edizione Demo di MicroCap9):
e dalle relative forme d'onda:
Si vede infatti che mettendo di seguito n stadi (JK-FF, in questo caso 4: U1...U4) si possono distinguere 2n combinazioni che rappresentano appunto il numero di impulsi di clock (CLK) applicati al primo. Nel caso illustrato caso si possono contare fino a 24 = 16 (da 0 a 15) impulsi ed ogni stadio aggiunto raddoppierebbe il conteggio, ma si vede che ciò rende piuttosto scomoda la "lettura".
La struttura di questi contatori è elementare: l'uscita Q di uno stadio viene utilizzata per l'ingresso CLK dello stadio successivo. Ciò però comporta una trasmissione ritardata nelle commutazioni dei vari stadi, con passaggi instabili intermedi che rendono impraticabile un confronto con valori prestabiliti. E' questa caratteristica che identifica come asincroni tali contatori.
Conteggio BCD
Per rendere molto più semplice l'interpretazione del dato di conteggio, si preferisce allora sacrificare alcune delle combinazioni binarie .
Arrestandolo infatti a 9 (e ripristinando a zero tutti gli stadi all'arrivo dell'impulso successivo) si ha un conteggio a "decadi" , dove ogni decade è rappresentata dalla sua combinazione binaria (BCD: Binary Coded Decimal, appunto)
L'arresto del conteggio a 9 viene ottenuto sfruttando le caratteristiche funzionali degli ingressi J e K, in quanto gli stati di questi condizionano la commutazione dei singoli FlipFlop.
Questo si vede chiaramente dalle forma d'onda relative:
Ma vi è un altro importante aspetto da sottolineare in questa struttura: i tre stadi finali ricevono lo stesso CLK (l'uscita del primo FF), quindi la loro commutazione è "sincrona" (cioè avviene nello stesso tempo), evitando così gli inconvenienti segnalati precedentemente.
Conteggio Mod 6
In particolari applicazioni di conteggio è però necessario limitare il conteggio ad un numero diverso da 10.
Il caso tipico del conteggio di tempi richiede ad es. la limitazione a 6. Sono infatti 60 i secondi in un minuti, 60 i minuti in un'ora e anche le ore del giorno sono un multiplo di 6,
Prendendo dalla matematica la definizione di modulo (resto della divisione intera), si chiamano Mod N questi contatori, ricavati dal controllo dei J-K, quindi normalmente di tipo sincrono.
Ecco, simulato in MicroCap9, un possibile contatore Mod 6 (da 0 a 5):
la conferma del suo funzionamento è data dall'andamento delle forme d'onda in uscita dai 3 stadi:
Un contatore di questo tipo può quindi costituire il rilievo delle decine nel conteggio dei secondi (o dei minuti), mentre per le unità può essere impiegato un normale contatore decadico
CMOS 4518 simulato con Multisim
Finora abbiamo considerarto il caso di costruzione del contatore partendo da JK-FF, ma nella pratica è molto più vantaggioso utilizzare integrati che già effettuano il conteggio a decadi.
Fra i molti tipi in commercio, prendiamo qui in considerazione il CMOS 4518 che contiene 2 decadi indipendenti, con uscite BCD.
La particolarità di questo componente è anche la possibilità di arrestare il conteggio a qualsiasi numero <10, in particolare al 6.
Un breve filmato in YouTube permette di verificarne, attraverso una simulazione dinamica, il comportamento. La simulazione è realizzato con il software Multisim 10.1:
Siamo così ora in grado di assiemare un contatore di secondi con relativi displays a catodo comune, pilotati di rispettivi driver 4511, e di simularlo con Multisim.
(Nota: le irregolaritè riscontrate nelle indicazioni dei displays sono dovute alla registrazione. Nella simulazione reale non compaiono)
Si noti anche che le lampade di segnalazione sono qui messe all'uscita del contatore decimale delle unità, per sui è possibile seguire il conteggio binario di questo.
Conclusioni
A conclusione della panoramica sui principi di conteggio elettronico, devo però dichiarare che queste tecnologie valgono ancora per casi particolarmente semplici (impieghi hobbystici o di produzioni limitate).
Per progetti più complessi o di grande produzione, sono ormai più competitive soluzioni basate su microprocessori. Ciò comporta però un approccio completamente differente, basato essenzialmente sullo sviluppo di software anzichè circuitistico.