|
|||
PWM10DAC- Convertitore Digitale Analogico a 10 bit - 2 |
|||
|
|||
|
|||
Circuito del convertitore D/A Il circuito di un completo convertitore DA (convertitore digitale analogico) e' riportato in figura 1. Questo da in uscita il valore analogico corrispondente alla parola digitale a 10 bit di ingresso. Questo circuito può essere parte di un progetto più complesso in cui si richieda una conversione DAC a condizione che si realizzino i circuiti esterni e le connessioni al microcontrollore in maniera compatibile con l'hardware richiesto dalla routine di converiosne D/A. Questo vuol dire che i pin RB3 e RA0, RA1, RA2, RA3, RB4, RB5, RB6, RB7, RB0, RB1 sono riservati alla routine e non possono essere usati per realizzare un altre funzione. Figura 1 - circuito del DAC basato sul PWM
Nel circuito è utilizzato il microcontrollore 16F62x che contiene un modulo generatore di segnali PWM a 10 bit. Il segnale PWM con duty cycle D, uscente dal piedino RB3 (PWM), è applicato all'ingresso di un filtro passa basso di tipo R1C4. Il segnale Vout, all'uscita del filtro R1C4, rappresenta la conversione analogica del segnale digitale a 10 bit applicato all'ingresso del convertitore. Il suo valore è pari al valore medio ( componente in DC) dell’onda e sappiamo valere: Vout = Vdd*D Dimensionamento del filtro di uscita Il filtro di uscita va dimensionato ( la sua frequenza di taglio ft) in modo da sopprimere la componente in frequenza e prendere solo la componente in DC del segnale PWM. Se fpwm e' la frequenza fondamentale del segnale PWM, il filtro dovrà avere almeno una ft pari a 1/100 della fpwm ovvero: ft = fpwm /100 in modo da avere una attenuazione di 40db ( 100 volte ) della componente fondamentale in frequenza Ricordiamo che per un filtro RC vale la relazione: ft = 1/( 6,28*R*C) = fpwm/100 ricavando il valore del prodotto RC in funzione di fpwm ( 1/6,28 = 0,16) si ha: RC= 16 / fpwm = 16 T_pwm Se usiamo i valori dell'esempio precedente per cui T_pwm= 51,2 us allora si ha ( con approssimazione per eccesso) : RC= 16 *51,2 = 820 us Fissato per esempio R= 1000 ohm si ha che: C= 819.2 e-6 / 1000 = 0,82 uF = 820 nF Si può scegliere anche i valore di 1uF che abbassa
ulteriormente la ft Applicazioni La routine e il relativo circuito possono essere applicati per la realizzazione di progetti in cui e' necessario generare tensione partire da un controllo digitale Miglioramenti Lo schema proposto è molto semplice e può essere migliorato aggiungendo un buffer per la tensione di uscita VOUT e/o utilizzando un filtro attivo in uscita al convertitore al posto del fitro RC. |
|
||
|
|||
|
|||
|