Tutorials - PIC 

 

PIC16F526


I Comparatori

In 16F526 è presente una coppia di comparatori analogici.
Si tratta di una funzione di impiego non comune, in quanto fa riferimento strettamente più di altre alla struttura dell' hardware che contorna il microcontroller.
Nella trattazione di questo modulo non è quindi possibile fare a meno di confrontarsi con concetti propri dell' elettronica. 

Un comparatore è un circuito che confronta due segnali applicati in ingresso e rende una uscita a due livelli, alto e basso, compatibili con quelli digitali, in funzione dell' esito del confronto.
Costituisce un ponte tra il campo analogico e quello digitale, dato che i segnali di ingresso possono essere di livello variabile (analogici), mentre l' uscita ha solo i due livelli digitali (alto/basso) 

Ad esempio, nell' immagine a lato il foglio dati esemplifica la funzione del comparatore: un segnale variabile viene applicato ad un ingresso mentre all' altro è applicata una tensione di riferimento. Ogni volta che il primo segnale supera il valore di riferimento, l' uscita va a livello alto, indicando la condizione.

I due ingressi prendono il nome di Vin- e Vin+:Quando Vin+ supera il valore di Vin-, scatta il comparatore.

Gli usi di questa funzione sono molteplici: discriminazione di un segnale rispetto ad un riferimento, rilevatore di sovra o sotto tensione, trigger per misure di grandezze fisiche, ecc.

I comparatori che utilizzano i seguenti segnali:

  • CNxIN+ : ingresso analogico Vin+
  • CNxIN- : ingresso analogico Vin-
  • CxOUT   : uscita digitale

Tutti questi sono multiplexati con altre funzioni sui pin del chip, come abbiamo visto all' inizio.
Per fornire un supporto il più completo possibile, Microchip ha reso possibile collegare alla Vin- anche il generatore di tensione da 0.6V già citato in relazione al modulo ADC. Come informazione, PIC maggiori, dal 16F506 in su, incorporano un generatore di tensione di riferimento più complesso, che deriva dalla Vdd ed è programmabile in 16 step e possono avere più di un comparatore, anche realizzati con strutture più complesse.

Per capire meglio come funzioni la logica del comparatore, abbastanza intricata nelle sue possibilità, occorre fare forzatamente riferimento al diagramma riportato dal foglio dati

Per i non addetti ai lavori sarà certamente poco comprensibile, ma si tratta di una necessaria visione di insieme del modulo, che cerchiamo ora di spiegare.

Per prima cosa da dire è che, evidentemente, anche i comparatori dispongono di registri di controllo, chiamati CM1CON0 e CM2CON0.

La sua struttura è la seguente:

CMxCON0

bit

7 6 5 4 3 2 1 0

nome

CxOUT

!CxOUTEN

CxPOL

!CxT0CS

CxON

CxNREF

CxPREF

!CxWU

funzione

R/W R/W R/W R/W R/W R/W R/W R/W

default

1 1 1 1 1 1 1 1
  • bit 7  CxOUT   : flag uscita del comparatore
                   1 = Vin+ > Vin-
                   0 = Vin+ < Vin-

  • bit 6  !CxOUTEN: abilitazione uscita del comparatore
                   1 = disabilitata
                   0 = uscita sul pin C1OUT

  • bit 5  CxPOL   : polarità uscita del comparatore
           
           1 = non invertita
                   0 = invertita

  • bit 4  !CxT0CS : comparatore come sorgente di Timer0
                   1 = la sorgente è scelta dal bit T0CS
                   0 = la sorgente è l'uscita del comparatore

  • bit 3  CxON    : accensione comparatore
                   1 = abilitato
                   0 = disabilitato

  • bit 2  CxNREF  : selezione dell' ingresso Vin-
                   1 = C1IN-
                   0 = Vref 0.6V

  • bit 1  CxPREF  : selezione dell' ingresso Vin+
                   1 = C1IN+
                   0 = C1IN-

  • bit 0  !CxWU   : Wake up per cambio di stato del comparatore
                   1 =  disabilitato
                   0 =  abilitato

Vediamo un maggiore dettaglio:

bit Funzione valore
CxOUT Questo bit permette di conoscere lo stato dell' uscita del comparatore.
  • Vin+ > Vin-
  • Vin+< Vin-              
!CxOUTEN
Questo bit abilita l' uscita del comparatore sul pin CxOUT. Se l' uscita non è abilitata il comparatore funziona ugualmente, ma il risultato della comparazione viene utilizzato solo internamente al micro.
Se è abilitata l' uscita, essa sostituisce ogni altra funzione sul pin corrispondente.
Con riferimento al diagramma iniziale, il bit comanda l' interruttore che collega l' uscita del comparatore al pin fisico.
  • 1 disab.(default) 
  • uscita su CxOUT
 
CxPOL
Questo bit inverte il livello di uscita del comparatore. L' azione è effettuata da un gate XOR che inverte o meno il segnale a seconda del livello dei bit CxPOL
  • 1 non inv.(default) 
  • invertita
 
!CxT0CS Questo bit, se a 0, fa si che l' uscita del comparatore sia collegata all' ingresso del Timer0. Questa scelta sovrappassa l' eventuale assegnazione con l' OPTION_REG  
Se è posto a 1 (default) la scelta della sorgente è quella impostata col bit T0CS dell' OPTION_REG 
  • 1 T0CS(default) 
  • uscita a Timer0
 
CxON
Questo bit accende o spegne il comparatore. In condizioni di spento, il consumo di corrente viene ridotto.
  • 1 abilitato (default) 
  • disabilitato
 
CxNREF
Questo bit consente di scambiare C1IN- e 0.6Vref all' ingresso Vin- del comparatore.
  • 1 CxIN1-(default) 
  • 0.6Vref
 
CxREF
Questo bit consente di scambiare C1IN+ e C1IN- all' ingresso Vin+ del comparatore.
  • 1 CxIN1+(default) 
  • CxIN-
 
!CxWU
Questo bit abilita o disabilita (default) la possibilità che l' uscita del comparatore, se cambia di stato, faccia cessare la condizione di sleep 
  • 1 disab.(default) 
  • abilitato
 

La scelta 0 sul bit !C1OUTEN sovrappassa quanto indicato nel bit T0CS per il TRIS del pin RB2.
La scelta 0 sul bit !C2OUTEN sovrappassa quanto indicato nel bit T0CS per il TRIS del pin RC4.

Quando i comparatori sono selezionati, selezionando i bit CxNREF e CxPREF  per una tensione esterna, si sovrappassano le funzioni digitali dei pin.


    Anche se dal punto di vista della componentistica elettronica un comparatore è realizzabile con un amplificatore operazionale, questo comparatore integrato non è utilizzabile come op-amp in quanto la sua uscita non è analogica, ma esclusivamente digitale.

Per chi è interessato a sapere qualcosa di più sui comparatori, il documento PICmicro Comparator Tip 'n trick è disponibile da Microchip. 


 

Copyright © afg. Tutti i diritti riservati.
Aggiornato il 21/01/15.