Mar Postat Decembrie 16, 2017 Partajează Postat Decembrie 16, 2017 Buna ziua, Vreau sa citesc doua temperaturi cu LM35 pe care le conectez la ADC de la PIC 18F452 Am conectat primul LM35 la RA0 si functioneaza foarte bine, problema este ca atunci cand conectez si celalalt LM35 la RA1 si citesc tensiunea dupa un timp (aleator) se blocheaza pic-ul. Mai jos am programul ADC pe care il folosesc. Am incercat sa citesc si pe alte canale ADC .Cand sunt conectate amandoua LM35 se comporta diferit (nu citeste corect pe RA2 sau RE0),. Va rog sa-mi spuneti unde gresesc. Am si carti de PIC si am cautat dar nu am gasit vreo explicatie. Multumesc conv movlw 8Eh movwf 0xFC1 ;ADCON1 movlw 0XC1 movwf 0xFC2 ;selectam canal 0 din ADCON0 bsf 0xFC2,2 unu btfsc 0xFC2,2 goto unu call delay movff 0xFC3,byte return conv_1 movlw 84h movwf 0xFC1 ;ADCON1 movlw 0XC9 movwf 0xFC2 ; selectam canal 1 din ADCON0 bsf 0xFC2,2 doi btfsc 0xFC2,2 goto doi call delay movff 0xFC3 ,byte1 return Link spre comentariu
UDAR Postat Decembrie 16, 2017 Partajează Postat Decembrie 16, 2017 Unde ai legat referința ? De ce ai odată ”8E” și odată ”84” în ADCON1 ? Ar trebui să menții aceași configurație, să schimbi doar canalul. Link spre comentariu
Mar Postat Decembrie 17, 2017 Autor Partajează Postat Decembrie 17, 2017 Referinta este la VCC pe pic. Am incercat sa mentin si aceiasi configuratie pe ADCON1 si sa schimb doar canalul si tot se blocheaza. Am pus aceiasi configuratie (84) la inceputul programului unde setez intreruperi, TRISA etc. Celelalte setari si adcon0 le-am pus in bucla unde o ruleaza permanent. adica: Si tot se blocheaza TRISA Intreruperi 84 la adcon1 bucla conv conv1 si alte instructiuni goto bucla Link spre comentariu
UDAR Postat Decembrie 17, 2017 Partajează Postat Decembrie 17, 2017 Cred că ești conștient că e imposibil de urmărit programul tău pus pe bucățele . Deci pune programul complet, cât mai bine comentat, și, preferabil, formatat conform regulilor Forumului . ( Cu unealta ”Code” ) . Fă deasemenea toate precizările necesare la folosirea pinilor, la alte detalii hardware relevante. Fără supărare, nu stă nimeni să ghicească/descifreze ce ai vrut să faci . Eu de exemplu mai sus am făcut niște presupuneri asupra modului cum ai notat niște registrii . Nu trebuia să mă pui în situația asta , trebui să spui tu, clar, acest lucru. PS. În buclă ar trebui să fie doar selectarea canalului și, evident, pornirea conversiei . 1 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