Vizitator smardale Postat Ianuarie 29, 2008 Partajează Postat Ianuarie 29, 2008 Salut, Vreau sa fac o conversie folosind canalul 1 al ADC-ului de pe un Motorola(MCS12C32) si nu pot. merge doar pe canalul 0(care este ocupat de catre un potentiometru de pe placa de dezvoltare). Orice alt canal as folosi, nu merg..in debugger valorile raman neschimbate. Mai jos este codul de initializare. Poate sa ma ajute cineva? sa-mi zica unde este eroarea? void init_adc(void) { DDRB=0xFF; //port b este de iesire ATDCTL2 = 0xC0; // functionare normala ATDCTL3 = 0x08; // o conversie pe secventa ATDCTL4_SRES8=1; //setare conversie 10biti ATDCTL3_S4C=0; ATDCTL3_S2C=0; //nr de secvente ATDCTL3_S1C=1; ATDCTL4_SMP1=0;//setare timp conversie faza 1 pt 2 cicluri masina SMP0,1 =0 ATDCTL4_SMP0=0; ATDCTL4_PRS0=0;//divizare a frecventei BUS cu 2(min) ATDCTL4_PRS1=0; ATDCTL4_PRS2=0; ATDCTL4_PRS3=0; ATDCTL4_PRS4=0; ATDCTL5_SCAN = 1; // conversie continua ATDCTL5_MULT=1; ATDCTL5_CA=1; //se converteste canalul 1 (sau incepand de la canalul 1 dc MULT=1) ATDCTL5_CB=0; ATDCTL5_CC=0; } in functia principala: PORTB=ATDDR1H;//prtul B ia valoarea proaspat convertita..incep sa clipeasca LED-urile atasate portului B Multumesc, Stefan M. Link spre comentariu
Postări Recomandate
Creează un cont sau autentifică-te pentru a adăuga comentariu
Trebuie să fi un membru pentru a putea lăsa un comentariu.
Creează un cont
Înregistrează-te pentru un nou cont în comunitatea nostră. Este simplu!
Înregistrează un nou contAutentificare
Ai deja un cont? Autentifică-te aici.
Autentifică-te acum