AD seconda parte Conversione AD La conversione da

  • Slides: 23
Download presentation
A/D seconda parte

A/D seconda parte

Conversione A/D • La conversione da segnale analogico a digitale è importante per due

Conversione A/D • La conversione da segnale analogico a digitale è importante per due motivi: – Il segnale digitale è più preciso di quello analogico, nel senso che è meno sensibile ai disturbi esterni – Ogni microcontrollore che si interfaccia ai segnali, lavora in digitale • Come detto nella prima parte, prima di trasformare un segnale da analogico a digitale bisogna campionarlo • Il teorema di Shanon ci da indicazioni sulla frequenza di campionamento fc>=2 fmax

Teorema di Fourier • Un qualsiasi segnale periodico, può essere ottenuto mediante la somma

Teorema di Fourier • Un qualsiasi segnale periodico, può essere ottenuto mediante la somma di un termine costante e di infinite funzioni sinusoidali e cosinusoidali, le cui frequenze sono multipli interi di quella del segnale

Caratteristiche • Errore di quantizzazione: Dove FS è la tensione di fondoscala, n è

Caratteristiche • Errore di quantizzazione: Dove FS è la tensione di fondoscala, n è il numero di bit • Risoluzione: variazione minima del segnale di ingresso in grado di determinare la variazione del codice digitale in uscita • Accuratezza: differenza tra valore analogico in ingresso e il valore analogico in uscita • Tempo di conversione tc Parametro fondamentale • Importante è la seguente relazione

Esempio • Determinare il valore massimo di frequenza di un segnale analogico sinusoidale che

Esempio • Determinare il valore massimo di frequenza di un segnale analogico sinusoidale che può essere convertito direttamente da un ADC a 8 bit con FS=10 V e tempo di conversione 100 s • Dalla relazione della slide precedente si ricava che fmax<=12, 4 Hz

A/D • Alcuni microcontrollori sono dotati di convertitori A/D altri non sono dotati •

A/D • Alcuni microcontrollori sono dotati di convertitori A/D altri non sono dotati • Per poter acquisire grandezze analogiche è necessario quindi, collegare un convertitore A/D esterno • Il convertitore preso in considerazione è MCP 3008 oppure MCP 3208 • I convertitori MCP 300 x e MCP 320 X sono dotati di x canali; nel nostro caso ci sono 8 canali • MCP 300 X è un convertitore a 10 bit; MCP 320 X è un convertitore a 12 bit • La comunicazione tra Raspberry e l’integrato MCP 3 Y 0 X avviene attraverso il bus SPI Serial Peripheral Interface Bus • La comunicazione SPI è utilizzata per piccole distanze ed è full duplex ed è stato sviluppato dalla Motorola. • Utilizza una architettura master-slave con un solo master e più slave

MCP 300 X-MCP 320 X

MCP 300 X-MCP 320 X

Pin per la comunicazione SPI • MOSI (Master Output Slave Input) - uscita dei

Pin per la comunicazione SPI • MOSI (Master Output Slave Input) - uscita dei dati dal micro verso la periferica • MISO (Master Input, Slave output) - usato dalla periferica per trasmettere dati al micro • SCLK - clock, generato dal micro • CS: Chip Select

SPI • La comunicazione SPI è abbastanza veloce, può raggiungere 10 Mbps • La

SPI • La comunicazione SPI è abbastanza veloce, può raggiungere 10 Mbps • La lettura e la scrittura di un dato avviene sul fronte di salita o di discesa del clock. Ciò rende immune dal rumore. • Si possono collegare più slave

SPI • Un dispositivo SPI possiede due bit di configurazione detti CPOL Clock POLarity

SPI • Un dispositivo SPI possiede due bit di configurazione detti CPOL Clock POLarity e CPHA Clock PHAse. • CPOL determina lo stato idle del segnale di sincronismo • CPOL=0 - segnale di clock è considerato idle quando è a livello logico basso. • CPHA determina su quale fronte del segnale di clock vengono letti i dati • CPHA=0 i dati in uscita dal Master vengono letti in corrispondenza del fronte di discesa e i dati in uscita dagli Slave vengono letti in corrispondenza del fronte di salita del segnale di clock.

SPI

SPI

SPI

SPI

MCP 3004 ed MCP 3008 • • MCP 3208 è un convertitore A/D a

MCP 3004 ed MCP 3008 • • MCP 3208 è un convertitore A/D a 12 bit e 8 canali MCP 3008 è un convertitore meno recente a 10 bit e 8 canali. MCP 3004 è un convertitore a 4 canali e a 10 bit Per aumentare il numero di canali, si possono collegare più device in parallelo Schema di conversione per MCP 3008 o 3004 a 10 bit

MCP 3204/MCP 3208 Per il convertitore MCP 300 x è previsto uno shift dei

MCP 3204/MCP 3208 Per il convertitore MCP 300 x è previsto uno shift dei bit diverso da quello del convertitore MCP 320 X; lo si può notare dal confronto tra questo schema e quello precedente Schema di conversione per MCP 3008 o 3004 a 10 bit

MCP 3008

MCP 3008

MCP 3204

MCP 3204

MCP 3208

MCP 3208

MCP 320 X bit 0 Liv bit Liv 0 11 bit Liv 22 bit

MCP 320 X bit 0 Liv bit Liv 0 11 bit Liv 22 bit Liv 33 ---------------- Liv bit bit bit ----------------Liv Liv 4091 4092 4093 4094 4095 4091 3. 3 V L’integrato MCP 3208 è a 12 bit, è quindi formato da 212=4096 livelli. La tensione di riferimento 3. 3 V viene diviso per 4095 livelli; la risoluzione è quindi 3. 3 V/4095=0. 000806 V

MCP 300 X Liv 0 Liv 1 Liv 2 Liv 3 ……………………………………………… Liv 1019

MCP 300 X Liv 0 Liv 1 Liv 2 Liv 3 ……………………………………………… Liv 1019 Liv 1020 3. 3 V • L’integrato MCP 3008 è a 12 bit, è quindi formato da 210=1024 livelli. • La tensione di riferimento 3. 3 V viene diviso per 1024 livelli; • La risoluzione è quindi 3. 3 V/1023=0. 003226 V Liv 1021 Liv 1022 Liv 1023

OUT 1 2 3 4 5 6 7 8 ch 0 0 0 0

OUT 1 2 3 4 5 6 7 8 ch 0 0 0 0 1 1 0 0 0 0 ch 1 0 0 0 0 1 1 0 0 0 0 out adc[1]&11 adc[2]

CS, MOSI, MISO CS MOSI 0 0 0 0 1 S D 2 D

CS, MOSI, MISO CS MOSI 0 0 0 0 1 S D 2 D 1 D 0 0 0 x x x x ? ? ? B 1 1 B 1 0 B 9 B 8 B 7 B 6 B 5 B 4 B 3 B 2 B 1 B 0 MISO canale D 2 D 1 D 0 0 0 1 2 0 1 0 3 0 1 1 4 1 0 0 5 1 0 1 6 1 1 0 7 1 1 1 Dati inviati dal master Dati inviati dallo slave

ADC 0809/ADC 0808

ADC 0809/ADC 0808

ADC 0809/ADC 0808 • • convertitore AD a 8 bit di uscita D 0

ADC 0809/ADC 0808 • • convertitore AD a 8 bit di uscita D 0 -D 7 (e dunque 28=256 livelli di quantizzazione) e 8 canali di ingresso IN 0 -IN 7 multiplexati internamente. Tabella degli indirizzi: