Hallo,
Du könntest versuchen den ADC5 anzuzapfen(softwaremässig), denn der ist laut Schaltplan über Widerstände mit V+ und weiter mit Vcc verbunden.
Mit der 8-Bit-Auflösung sollte man noch genug erkennen können.
Hi an Alle
ich habe mich gefragt ob man nicht den Asuro dazu bringen könnte anzuzeigen wie voll seine Batterien sind und das alles dan über IR wider an den Computer zurück schicken kann.
geht das?
hat das schon mal jemand versucht? und wenn ja hat er es geschafft?
danke schonmal im Vorraus
___________________________
MFG A.T.I.R
Hallo,
Du könntest versuchen den ADC5 anzuzapfen(softwaremässig), denn der ist laut Schaltplan über Widerstände mit V+ und weiter mit Vcc verbunden.
Mit der 8-Bit-Auflösung sollte man noch genug erkennen können.
mfG
Hallo A.T.I.R
Schau Dir die erweiterte Asuro Bibliothek an (suche in den Foren).
Weja hat sich die Mühe gemacht und darin ein Unterprogramm"Batterie" geschrieben,
Es liefert Dir dan direkt den integer Wert.
Gruß Sebastian
Hallo linux_80,
bei
chris.lugr.de
findest Du eine Routine zur Merssung von V+ inclusive des Berechnungsbeispiels im Header. V+ entspricht fast genau der Batteriespannung. Das Unterprogramm von Weja hat meiner Meinung nach einen Fehler, weil es die Bandgap als Referenz nicht richtig einstellt.
Gruß,
stochri
Hallo stochri,
Das stimmt, Weja hat als Refspannung AVCC eingestellt, womit man immer ziemlich gleichen Wert bekommen müßte...
ein | (1<<REFS1) in der Zeile mit ADMUX dazugeschrieben müßte das Problem lösen(Refspannung auf 2,56V)
Gruß Sebastian
Hallo Izaseba,
für die Programmroutine sollte man allerdings die Referenzspannung mal mit einem Multimeter nachmessen. Zumindes bei meinem Asuro stimmt die nämlich nicht unbedingt mit dem Datenblatt überein.
Gruss,
stochri
OK Danke
für die vielen Antworten ich werde mich gleich mal an die Arbeit machen
Ja genau, das stimmt, ich wollte nur schreiben, was an dem Programm geändert werden mußZitat von stochri
Gruß Sebastian
Joa, mit der erweiterten ASURO Bibliothek geht das so:
Code://gibt den Batteriestand in Prozent aus #include "asuro.h" int main(void) { float volt; int proz; Init(); while(1){ volt=2.56/1024*Batterie()*22/10; proz=(int)(((volt)/5)*100); //so ungefähr SerWrite("Batteriestand: ",16); PrintInt(proz); SerWrite("% \r\n",4); Msleep(1000); } return 0; }
Aber wie schon mal weiter oben erwähnt, die 2.56V würde ich vorsichtshalber am Vref-Pin mal nachmessen. Würde mich mal interessieren ob die nur bei meinem ASURO abweicht oder auch bei anderen.
Die Einbindung der Fließkommabibliothek kostet ziemlich Resourcen.
Gruss,
stochri
Lesezeichen