ADC 0804 Descrizione generale L'AD0804 è un convertitore ad 8 bit ad approssimazioni successive. Il segnale di clock può essere generato applicando all'esterno una semplice rete RC (f=1/ (1.1RC) ). In alternativa può essere applicato un clock esterno. Caratteristiche Facile interfacciamento ai sistemi a uP Ingresso in tensione differenziale Tensione di riferimento di2,5V(LM336) Generatore di clock On-chip Ingresso 0/5V con alimentazione singola da 5V Non necessita di aggiustamento dello zero Frequenza tipica di clock 640KHz Tempo di conversione 100uS Masse separate per la sezione analogica e digitale Alimentazione 4,5V/6,3V (tipica 5V) Corrente di sink digitale 16mA (tipica) Corrente di source digitale 6mA (tipica) Linea INTR di segnalazione "fine conversione" Funzionamento Se lasciamo scollegato Vref/2 otterremo un "range" da 0v a 5v. Se ad esempio vogliamo ottenere un "range" da 0,5v a 3,5v (3v di escursione) fisseremo Vin- = 0,5v e Vref/2= 3/2=1,5v. Range = 0,5v - 3,5v Valore min = 0,5v Valore MAX = 3,5V Escursione = 3,5v - 0,5v = 3v 1 LSB = 3v / 256 Vin- = Valore min = 0,5v Vref/2 = Escursione / 2 = 1,5v Da considerare che una riduzione del "range" provocherà una riduzione del valore di un LSB con una conseguente maggiore criticità di funzionamento se l'IC dovrà lavorare in ambienti dove la temperatura varia in modo sensibile o dove sono presenti sorgenti varie di rumore. Una tensione di Vcc di alimentazione non perfettamente di 5v causa un valore di fondo scala diverso da 5v. In ogni caso il valore di fondo scala potrà essere tarato agendo su Vref/2. Regolazione dello ZERO Lo zero non richiede aggiustamento. Se il valore minimo del "range" non è massa un aggiustamento dello zero può essere fatto. Può essere tarato lo zero per il valore minimo applicando al Vin- la tensione minima desiderata. Applicando piccoli segnali al Vin+ è possibile valutare l'entità di errori di zero. Fondo scala Può essere aggiustata applicando una tensione corrispondente ad un LSB più piccola rispetto al valore di fondo scala e aggiustando l'ampiezza al pin 9 in modo da ottenere per un incremento della Vin di un LSB applicato: 1111. 1110 1111. 1111 Ciclo di conversione 1. 2. 3. Mentre CS=0 viene abbassato WR ed ha inizio la conversione. Notare che la linea INTR può trovarsi H se è stata eseguita una operazione di lettura del dato precedente(RD=0) oppure L se il dato precedente è stato letto. Dopo un certo tempo, determinato dalla frequenza del clock, la conversione termina ed il terminale INTR si abbassa e così resta fino ad una richiesta di lettura del dato (RD=0). Ponendo a questo punto RD=0, la linea INTR viene automaticamente riportata a livello H ad indicare che il dato è stato letto. Il dato convertito è ora disponibile sulla linea dati (D0 - D7). Clock La Frequenza di clock è facilmente determinabile dalla formula: f = ( 1 / (1.1 R C ) Ckin (Pin4) Min (V) Tipica (V) MAX (V) Vt+ 2.7 3.1 3.5 Vt- 1.5 1.8 2.1 Isteresi 0.6 1.3 2.0 Osservando la tabella, ci si può rendere conto che la frequenza di oscillazione può assumere valori notevolmente discordi rispetto alla formula riportata. Tuttavia, raramente è importante determinare con precisione la frequenza di clock. Comunque, qualora fosse indispensabile fare funzionare il convertitore ad una ben precisa frequenza, nulla ci vieta di applicare al Pin 4 un segnale a frequenza rigorosamente determinata. La soluzione circuitale più semplice per testare il convertitore è rappresentata in figura. Il convertitore opera in modo continuo dato che il Pin INTR di fine conversione è collegato a WR (avvio conversione). I pin 1,2 sono sempre attivi tanto che l'IC è sempre abilitato(CS=0) e il dato, appena convertito, risulta disponibile venendo posto in uscita (RD=0). L'avvio della conversione, è attivato ad ogni fine conversione. N.B. Un impulso di Start (chiusura per un istante dell'interruttore) può essere indispensabile, per avviare il ciclo che poi proseguira in modo automatico. Regolando la Vcc= 5.120V avremo il valore LSB=20mV. Infatti 256 * (20*10^-3) = 5.12 La frequenza di clock sarà circa f = 1 / (1.1 R C) = 600KHz (circa ) La corrente di accensione dei LED risulta (Vcc- V LED) / R = (5.12 - 1.8) / 1000 = 3.3mA (circa) compatibile con la corrente fornibile (MAX 6mA) Per una migliore stabilità nel funzionamento è consigliabile abbassare l'impedenza dinamica al Pin Vref/2 collocando un condensatore di 0.1uF (O.D.G.) tra il piedino e massa. Se si volesse effettuare un aggiustamento (taratura) del convertitore, potremmo applicare una tensione = 5.090 al Pin di ingresso analogico e aggiustare la Vref/2 affinchè le uscite digitali cambino da 1111 1110 a 1111 1111 giusto a quel valore di tensione applicata. Circuito di prova 2 Possiamo variare il RANGE della tensione di ingresso applicando al Pin Vin- la tensione minima e al Pin Vref/2 il valore dell'escursione totale in tensione fratto 2. Esempio: Tensione minima di ingresso = 0.5V (corrispondente allo zero digitale) Tensione MASSIMA di ingresso = 3,5V (corrispondente alla combinazione digitale in uscita massima 1111 1111) La tensione da applicare al Pin Vin- sarà = 0.5V mentre quella da applicare al pin Vref/2 sarà = 1.5V Notiamo anche che la frequenza di clock è stata modificata. (1Hz) pertanto il tempo di conversione risulterà leggermente superiore al minuto.