ADC con pic18f458

Jun 28, 2005 3 Replies

Ciao, sono nuovo mi chiamo Stefano e mi sto affaciando ora sul mondo dei microcontrollori.



Sto facendo un progetto che riguarda accelerometri e sensori di pressione, lo scopo finale... bho ne troveremo uno^^



Scherzi a parte il mio problema =E8 il seguente: Il sensore di pressione restituisce un valore compreso tra 0,5 e 4,5 V Sto utilizzando l'ADC del pic per convertirlo, il problema =E8 che l'ADC converte da 0 a 5V !!! Ho letto che c'=E8 la possibilit=E0 di settare la Vref+ a la Vref- per farlo funzionare nel range di valori desiderato. Per programmare uso l'ambiente di sviluppo MPLAb della microchip, il compilatore =E8 il mcc18.



Qualcuno di voi ha mai dovuto risolvere un problema simile?



Grazie a tutti. Ciao Stefano



Non ho mai usato la famiglia 18 e quindi non conosco il pic in questione, ma se guardi il datasheet trovi la risposta a tutte le domande. Per abilitare i due ref devi settare un opportuno bit in un opportuno registro. Occhio al range che devi rispettare per Vref+ e Vref-, dovresti trovare il max e min nelle appendici, ma prob. i valori che necessiti tu non dovrebbero darti problemi.

In ogni caso, sicuro che sia necessario ? Su 5 volt di dinamica ne togli 1. Vuol dire che perdi 1/5 della dinamica numerica a disposizione, ovvero 1024 valori. Ne perdi 1/5, dicevo, e vai a 820 valori discreti. Significa che invece che campionare a 10 bit campioni "a più" di 9 bit. Insomma, non ti perdi nemmeno un bit. Da un punto di vista analogico, campioni con una risoluzione di 5/820=6.1 mV (circa) invece di 5/1024=4.9 mV (circa)....

Sempre che tu riesca a sfruttare tutta la dinamica del D/A interno, che con un microcontrollore è sempre un compito arduo. Disaccoppia bene le alimentazioni, le masse, e, magari, fai il campionamento in sleep.

saluti

-- simone.bern

snipped-for-privacy@zliberoz.it

---------------------------------------------------------------- Rimuovere i caratteri di zorro per rispondere via mail

"Brusamost" ha scritto nel messaggio news: snipped-for-privacy@g47g2000cwa.googlegroups.com... Ciao, sono nuovo mi chiamo Stefano e mi sto affaciando ora sul mondo dei microcontrollori.

Sto facendo un progetto che riguarda accelerometri e sensori di pressione, lo scopo finale... bho ne troveremo uno^^

Scherzi a parte il mio problema è il seguente: Il sensore di pressione restituisce un valore compreso tra 0,5 e 4,5 V Sto utilizzando l'ADC del pic per convertirlo, il problema è che l'ADC converte da 0 a 5V !!! Ho letto che c'è la possibilità di settare la Vref+ a la Vref- per farlo funzionare nel range di valori desiderato. Per programmare uso l'ambiente di sviluppo MPLAb della microchip, il compilatore è il mcc18.

Qualcuno di voi ha mai dovuto risolvere un problema simile?

Grazie a tutti. Ciao Stefano

"simone.bern" ha scritto nel messaggio news:d9rn7f$qlv$ snipped-for-privacy@area.cu.mi.it...

Bhe, ha una risoluzione di 1/820 per l'ingresso che va da 0.5V a 4.5V = 4V di escursione, quindi 4/820 = 4.9mV circa (come i 1024 campioni sui 5V).

"fabiosky70" ha scritto nel messaggio news:pSewe.10700$ snipped-for-privacy@news3.tin.it...

5/820=6.1

giusto, ho fatto confusione, stessa risoluzione su una dinamica azzoppata. Se usasse i due ref, avrebbe 4/1024=3.9 mV, maggiore di 1mV circa su dinamica piena.

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required