Sida 1 av 2
Hur mäta matningsspänningen till en PIC?
Postat: 19 mars 2007, 20:56:08
av Earendil
I min mp3-spelare vill jag förstås gärna kunna se (ungefär) vilken nivå batterispänningen (Vdd) ligger på. Min spontana idé var att koppla Vdd direkt in till AN0 på min PIC 18F25J10 och använda dess interna spänningsreferens för AD-omvandlaren. Sen kom jag på att PIC:en har ju inget annat än Vdd självt att jämföra med...
På yampp-7 ser det ut att vara gjort ungefär på det sättet, men den är baserad på en AVR som jag inte känner till.
Någon som har en enkel lösning på detta? Har inte hittat någon app note hos Microchip...
Postat: 19 mars 2007, 20:57:31
av Icecap
Ta en 2,5V ref och mata in på en AD-ingång, när VDD ändrar sig neråt blir det avlästa värde högre.
Postat: 19 mars 2007, 21:47:49
av $tiff
Spänningsdela Vdd mot en ledig I/O (utgång, låg) och mät med ledig AD-pinne. Mät i korta perioder lagom sällan, när du inte mäter, sätt I/O-pinnen som ingång (och stäng av ADn om den inte används tilll annat, allt för att spara på energin).
Postat: 19 mars 2007, 21:57:57
av sodjan
Kor med den inbyggda Vref'en och en komparator istället.
Dela ner Vdd så att det hamnar på en passande nivå för vald
nivå på Vref.
> Spänningsdela Vdd mot en ledig I/O (utgång, låg) och mät med ledig AD-pinne.
Hur hjälper det ? Utan annan Vref för ADC'n än just Vdd ?
Postat: 20 mars 2007, 14:10:27
av Earendil
Icecap skrev:Ta en 2,5V ref och mata in på en AD-ingång, när VDD ändrar sig neråt blir det avlästa värde högre.
Jag var inne på något sådant, men hur bygger man enkelt en sådan referens som drar lite ström? Duger en zenerdiod? Jag är dålig på sånt här...

Postat: 20 mars 2007, 14:15:00
av sodjan
> men hur bygger man enkelt en sådan referens
Man "bygger" dom inte, man skaffar en färdig.
Du får aldrig samma stabilitet med en enkel zener...
http://www.tradera.com/auction/auction. ... d=37280329
Postat: 20 mars 2007, 14:22:33
av Earendil
sodjan skrev:Kor med den inbyggda Vref'en och en komparator istället.
Dela ner Vdd så att det hamnar på en passande nivå för vald
nivå på Vref.
Men den inbyggda Vref'en baseras så vitt jag kan se enbart på en 16-stegs spänningsdelare mellan Vref+ och Vref- (eller Vdd och GND) så då måste jag ju ändå tillhandahålla någon extern spänning på t.ex Vref+. Eller missförstår jag databladet?
Postat: 20 mars 2007, 14:35:38
av sodjan
Ah, shit, så är det ja !
Ja ja, då *måste* det till en extern ref.
Den kan däremot köras in till Vref-modulen för att
få andra spänningar än (t.ex) 2.5V...
Postat: 20 mars 2007, 17:26:56
av Icecap
Vad jag menar är att man kan ta t.ex. en LM 385-1,2 och strömförsörja den (se datablad) via en portpinne (= tar inget ström inaktiv). Sen när man ska kolla slår man på portpinnen, låter den stabilisera sig och sedan gör en AD-mätning. Vad man EGENTLIGEN mätar är Vref mot en fast spänning, alltså är spänningen man mätar fast och Vref ändrar sig beroende på batterispänningen.
Högre mätt värde = lägre batterispänning. Sedan får man räkna lite för att veta vad som är vad men det är inte så farligt.
Om Vref är 5V, Vad är 1,2V och det är 10 bit ska svaret bli (runt) 206, är Vref 4V ska den mäta 307 på AD-ingången.
Postat: 20 mars 2007, 20:55:49
av Earendil
Ok, tack för hjälpen allihop! Sodjan och Icecap, ni har nog en bra lösning. Bra förstås att kunna stänga av kretsen, men jag tror inte jag har råd att lägga en pinne på det. Verkar inte som om spänningsreferenserna drar mer än några 10-tal µA, och det är väldigt lite jämfört med MP3-dekodern... Som för övrigt är en VS1011 från Vlsi Oy.
Postat: 22 mars 2007, 01:32:56
av $tiff
sodjan skrev:> Spänningsdela Vdd mot en ledig I/O (utgång, låg) och mät med ledig AD-pinne.
Hur hjälper det ? Utan annan Vref för ADC'n än just Vdd ?
Jag förutsatte att det fanns en intern Vref man kunde mäta mot.
Postat: 22 mars 2007, 11:39:57
av sodjan
> Jag förutsatte att det fanns en intern Vref man kunde mäta mot.
Gjorde jag också...

Postat: 22 mars 2007, 13:59:54
av Earendil
Hehe! Min gissning är att det finns en sådan på ATMega 161 eftersom den används i yampp-7...

Hur som helst så blir det nog en baggis att använda en extern referens (liten SOT23-kapsel och inte alls dyr) in på AN0, så ni har löst mitt problem i alla fall!

Postat: 22 mars 2007, 16:23:43
av Marta
Finns det någon PIC som har inbyggd absolut Vref till ADC, eller är planerat att komma en sådan inom rimlig tid?
Postat: 22 mars 2007, 16:49:45
av BEEP
Kan man inte köra 18F25J10 på 2 volt och spänningsdela Vdd som $tiff föreslog?
Edit:
Men då får man problem med att anpassa övrig elektronik till 2 volt så det där var ingen bra ide
