PIC ADC

Moczik Gabor progzmaster at freemail.hu
Wed Feb 4 21:48:33 CET 2004


bela wrote:
> 2. Mintavételi ido" kivárása (20usec, én erre el szoktam használni a 
> Timer1-et, ha az lejárt, jön egy IT, és annak a kiszolgáló rutinja 
> indítja a konverziót. Biztos van elegánsabb módszer, nekem ez bevált.)

Ha mar minden timer kell valamire, akkor en ugy szoktam, hogy valamelyik 
(tobbnyire TMR0) jar folyamatosan idozitesi celokra nagyfrekivel, a 
tulcsordulas olyan 10-40kHz-es frekivel szokott menni, es minden overflownal 
(C-ben):

if (T0IF) {
     [...]
     if (ADGO==0 && (Tacq--)==0) ADGO=1;
}
[...]
if (ADIF) {
     valamiH=ADRESH;
     valamiL=ADRESL;

     Tacq=1;
}

A Tacq az Acquisition time-ot hatarozza majd meg a TMR0 tulcsordulasi 
frekijetol fuggoen. Itt acq_time=Tacq/tm0_ovf_freq.

> 3. Konverzió elindítása, ha lehet, tedd a procit SLEEP-be, különben 
> összezajongja az alsó biteket.

Persze RC OSC kell az A/D-nek ekkor, ha az megfelel.

-- 
((( Móczik Gábor )))--((( hu <- DOT <- freemail <- AT <- progzmaster )))
((( Debian unstable )))-((( Kernel 2.4.20 )))-((( Celeron466 / 128Mb )))
((( -->  Vigyázat! Ön súlyos közlekedési balesetet szenvedett.   <-- )))
((( -->          Kívánja, hogy a légzsák felfúvódjon?            <-- )))



More information about the Elektro mailing list