[ mimi @ 06.09.2011. 02:35 ] @
Poceo sam malo da se igram sa mikroBasic.Nista ozbiljno, vise nesto kao hobi.Imam mikroBasic PRO for PiC i EasyPIC5. Uz ovaj kompajler ne dolazi nikakvo uputstvo na srpskom (niti postoji neka knjiga na srpskom), a kako engleski ne znam, (a ulozio sam u domacu pamet) jedina mi je nada u razumevanju ovog kompajlera (i uopste nacin pisanja programa) ovaj forum i ova tema. Dakle da pocnem. Trenutno proucavam ADC Library i koriscenje A/D konvertora na PIC16F887. Pokusavam da napisem program koji prati napon LiPo 3S baterije (sl.1) .Napon na svakoj celiji (ima ih 3) nesme da padne ispod 3v (to je granica na mom punjacu). Zadatak je da uC prati napon svake celije, i kada napon bilo koje celije padne ispod 3.30v, treba da se oglasi alarm. Kako sam to zamislio? Kada se pojavi interapt, uC izvrsava neku funkciju (nebitno), dok stalno u petlji uC meri napon na pinu AN0, zatim na AN1 i na kraju na AN2. Posle merenja proverava dali je neki od napona jednak ili manji od vrednosti 675, i ako jeste ukljucuje alarm.Verovatno se mozda ovako ne pisu programi ali ja sam ovako to zamislio i ovo radi.Radi, ali ne bas precizno. Problemi su: - Kao izvor referentnog napona koristim napon napajanja uC, dakle Vdd (od 7805) koji nije stabilan, pa otud i razlicita ocitavanja vrednosti.Mislio sam da koristim Vref+ i REF02 (Digital to Analog Calculator ). - Otpornici su SMD od 1% , na slici (sl.1) prikazane su vrednosti napona (* max, ** min napon) koje su izracunate ali te vrednosti nisu bas u praksi indenticne.Na slici (sl.2) vide se naponi koji su ocitani prilikom testiranja. Pitanje glasi. Kako biste Vi izvrsili merenje svake celije, znajuci da se svaka celija ne prazni podjednako (mada bi trebalo)? ![]() Slika 1. ![]() Slika 2. [Ovu poruku je menjao mimi dana 06.09.2011. u 03:48 GMT+1] [Ovu poruku je menjao mimi dana 06.09.2011. u 03:49 GMT+1] |