Salve,
sto lavorando con un PIC 16F876A.
Avrei bisogno di capire bene come funzionano le 5 porte A/D del suddetto PIC.
Qualcuno sa indicarmi dove posso reperire delle informazioni a riguardo, e sopratutto in Italiano?
Grazie
Info su A/D PIC 16F876A
Moderatore: Paolino
7 messaggi
• Pagina 1 di 1
0
voti
Qualcuno sa indicarmi dove posso reperire delle informazioni a riguardo, e sopratutto in Italiano?
Non saprei dove puoi trovare le info che cerchi in italiano (l'inglese è molto importante in questo caso, in quanto la casa madre dei PIC - la Microchip - ha sede negli USA), però possiamo provarci.
Ci sono 5 canali A/D configurabili a 8 bit o a 10 bit. Puoi fare in modo che alcuni o tutti i canali siano attivi contemporaneamente (il che significa che se non usi tutti i canali, i PIN collegati ai canali "spenti" sono delegati ad altre funzioni come ad esempio gli I/O digitali).
Il convertitore è unico ed è in multiplex sui canali attivi.
È possibile associare un interrupt a fine conversione A/D.
Così, su due piedi, altro non mi sovviene. Prova a specificare cosa vuoi fare e vediamo se ti mancano altre info.
Ti suggerisco uno sforzo: leggi (o fatti leggere/tradurre) il datasheet che è la fonte primaria delle informazioni sul dispositivo.
Ciao.
Paolo.
-
Paolino
32,6k 8 12 13 - G.Master EY
- Messaggi: 4225
- Iscritto il: 20 gen 2006, 11:42
- Località: Vigevano (PV)
0
voti
Grazie Paolino,
voglio approfittare della tua disponibilità e provo a spiegarti di che cosa ho veramente bisogno. Adesso sto affrontando la problematica hardware, ma fer fare ciò ho bisogno di capire se poi il PIC riesce a gestire quanto segue.
Ho un segnale analogico che può variare da 0.5 a 4.5V, mi interessa che il PIC processi questo segnale a partire da 1V, e poi con soglie da 1.2, 1.4, 1.6, ecc.. ad intervalli di 0.2V fino ad i 4.5V. Ad ogni soglia poi il PIC dovrà eseguire un' istruzione diversa.
E' possibile fare questo?
Grazie ancora.
voglio approfittare della tua disponibilità e provo a spiegarti di che cosa ho veramente bisogno. Adesso sto affrontando la problematica hardware, ma fer fare ciò ho bisogno di capire se poi il PIC riesce a gestire quanto segue.
Ho un segnale analogico che può variare da 0.5 a 4.5V, mi interessa che il PIC processi questo segnale a partire da 1V, e poi con soglie da 1.2, 1.4, 1.6, ecc.. ad intervalli di 0.2V fino ad i 4.5V. Ad ogni soglia poi il PIC dovrà eseguire un' istruzione diversa.
E' possibile fare questo?
Grazie ancora.
0
voti
Ho un segnale analogico che può variare da 0.5 a 4.5V, mi interessa che il PIC processi questo segnale a partire da 1V, e poi con soglie da 1.2, 1.4, 1.6, ecc.. ad intervalli di 0.2V fino ad i 4.5V. Ad ogni soglia poi il PIC dovrà eseguire un' istruzione diversa.
E' possibile fare questo?
Se per ipotesi considerassimo di configurare il convertitore A/D a 8 bit, la risoluzione prevista (considerando un fondo scala di 5V) è di:
5/256=0.01953 V = 19.53 mV per ogni valore analogico letto.
Se invece pensassimo di estendere la lettura a 10 bit, la risoluzione diventa:
5/1024=0.0048V = 4.88 mV per ogni valore analogico letto.
Sostanzialmente per ogni variazione di 19.53 mV (nel caso a 8 bit) o di 4.88 mV (nel caso a 10 bit) del tuo segnale in ingresso, il PIC riesce a discriminarne la differenza.
Facilmente si verifica che:
1) caso a 8 bit
1V corrisponde a 256/5 analogico, cioè 51.2 che diventa 51 in quanto è un valore intero;
1.2V corrisponde a 1.2*256/5 analogico, cioè 61.44 che diventa 61 in quanto è un valore intero;
4.5V corrisponde a 4.5*256/5 analogico, cioè 230.4 che diventa 230 in quanto è un valore intero;
2) caso a 10 bit
1V corrisponde a 1024/5 analogico, cioè 204.8 che diventa 204 in quanto è un valore intero;
1.2V corrisponde a 1.2*1024/5 analogico, cioè 245.76 che diventa 245 in quanto è un valore intero;
4.5V corrisponde a 4.5*1024/5 analogico, cioè 921.6 che diventa 921 in quanto è un valore intero.
Se il tuo segnale è molto rumoroso, puoi pensare di acquisirlo a 10 bit e di filtrarlo inanzitutto buttando via i due bit più bassi e poi considerando il dato come se fosse a 8 bit.
Spero sia tutto chiaro.

Ciao.
Paolo.
-
Paolino
32,6k 8 12 13 - G.Master EY
- Messaggi: 4225
- Iscritto il: 20 gen 2006, 11:42
- Località: Vigevano (PV)
0
voti
Grazie Paolo
tutto chiaro, se ho capito bene basta portare la mia tensione da analizzare in uno dei 5 ingressi A/D del PIC e poi lo gestisco con il software.
Mi pare di capire che non ho bisogno di una tensione di riferimento, il PIC utilizza quella di alimentazione +5V?
Ho un'altra cosina da chiederti:
Parlando sempre del 16F876A, il fatto che lo si faccia funzionare a 4 o a 20 MHz, cambia in affidabilità?
Facendo un discorso molto banale, mi viene da pensare che un'automobile che viaggia a 80 km/h sia più sicura di una che ne viaggia a 200!
Brevemente, quali sono i vantaggi che potrei avere a far funzionare il PIC a 4 MHz, a parte lo svantaggio di andare piano?
Ringrazio e faccio i complimenti per tutto il sito di Electroportal, veramente professionale!

tutto chiaro, se ho capito bene basta portare la mia tensione da analizzare in uno dei 5 ingressi A/D del PIC e poi lo gestisco con il software.
Mi pare di capire che non ho bisogno di una tensione di riferimento, il PIC utilizza quella di alimentazione +5V?
Ho un'altra cosina da chiederti:
Parlando sempre del 16F876A, il fatto che lo si faccia funzionare a 4 o a 20 MHz, cambia in affidabilità?
Facendo un discorso molto banale, mi viene da pensare che un'automobile che viaggia a 80 km/h sia più sicura di una che ne viaggia a 200!
Brevemente, quali sono i vantaggi che potrei avere a far funzionare il PIC a 4 MHz, a parte lo svantaggio di andare piano?
Ringrazio e faccio i complimenti per tutto il sito di Electroportal, veramente professionale!

0
voti
se ho capito bene basta portare la mia tensione da analizzare in uno dei 5 ingressi A/D del PIC e poi lo gestisco con il software.
Esatto: stai attento, però: ci sono delle modalità di configurazione. Non puoi abilitare una porta qualunque; ad esempio, puoi mandare il segnale su RA0 (unica porta) oppure abilitare tre porte analogiche RA0, RA1 e RA3 (il datasheet è illuminante in merito).
Mi pare di capire che non ho bisogno di una tensione di riferimento, il PIC utilizza quella di alimentazione +5V?
Alcune configurazioni permettono di avere una Vref esterna e minore o uguale a +5V. Il caso più semplice è quello di far usare al PIC la Vdd come Vref, come dici tu.
Parlando sempre del 16F876A, il fatto che lo si faccia funzionare a 4 o a 20 MHz, cambia in affidabilità?
Facendo un discorso molto banale, mi viene da pensare che un'automobile che viaggia a 80 km/h sia più sicura di una che ne viaggia a 200!
Brevemente, quali sono i vantaggi che potrei avere a far funzionare il PIC a 4 MHz, a parte lo svantaggio di andare piano?
Non perdi di affidabilità. Tieni presente che una istruzione del PIC (escluse quelle relative ai salti) viene eseguita in 1 ciclo macchina e che ogni ciclo macchina sono 4 colpi di clock. Se hai un clock a 4Mhz il PIC lavora a 1MIPS, a 20MHz lavora a 5MIPS. Altri vantaggi sono derivati dal fatto che il clock serve diverse periferiche, come ad esempio la porta seriale. Se vuoi utilizzare la porta seriale ad alta velocità è obbligatorio un quarzo veloce. Gli svantaggi credo siano sostanzialmente legati al consumo maggiore di potenza elettrica. I PIC della famiglia 18 hanno introdotto il clock-swapping che permette di lavorare a bassa frequenza anche per ridurre i consumi.
Ciao.
Paolo.
-
Paolino
32,6k 8 12 13 - G.Master EY
- Messaggi: 4225
- Iscritto il: 20 gen 2006, 11:42
- Località: Vigevano (PV)
7 messaggi
• Pagina 1 di 1
Torna a Realizzazioni, interfacciamento e nozioni generali.
Chi c’è in linea
Visitano il forum: Nessuno e 5 ospiti