Hi,
der Bootloader prüft normalerweise keine Batteriespannung. Das Erkennen der Betriebsspannung geschieht in Hardware. Guck mal in das Datenblatt des ATMega, da wird dies beschrieben.
Gruß
pctoaster
hoi,
ich habe gerade (einfach ums mal zu testen) den mega8 des asuro in mein stk200 gesteckt.
folgendes sei dazu gesagt:
das stk200 hat einen 4 mhz quarz. flashen, rs232, timing mit msleep usw. sind daher nicht möglich bzw. verzögert.
während ich mich darüber freute, dass die motoren-pwm die leds hell und dunkel dimmte, wunderte ich mich plötzlich:
der prozessor lief, nachdem der bootloader fertig war. zwar brauchte der bootloader etwas länger durch den langsamen quarz, aber der prozessor lief. sollte jedoch nicht eigentlich der bootloader erstmal die batteriespannung prüfen? dazu müsste doch an einem adc port ddie versorgungsspannug anliegen... beim stk200 sind jedoch die pins auf leds gegen vcc (PORTB), taster gegen masse(PORTD), und sonst nur auf pinleisten geführt - und nicht etwa auf einen entsprechenden spannungsteiler wie er auf dem asuro für die referenzmessung vorhanden ist. die spannung konnte also gar nihct korrekt gemessen worden sein. warum ging das jetzt? jemand ne idee?
Hi,
der Bootloader prüft normalerweise keine Batteriespannung. Das Erkennen der Betriebsspannung geschieht in Hardware. Guck mal in das Datenblatt des ATMega, da wird dies beschrieben.
Gruß
pctoaster
Hallo
Beim asuro ist der Batterietest-Pin der 28 (PC5). Wenn bei deinem stk200 eine led gegen vcc draufgeht, wirkt die wie ein PullUp.
Die Batteriespannung wird vom Bootloader geprüft. Es gibt da zwar auch was bei den AVRs, damit kann man sie anhalten (Notabschaltung wegen Unterspannung), aber diese Funktion wird beim asuro nicht verwendet.
Gruß
mic
Bild hier
Atmel’s products are not intended, authorized, or warranted for use
as components in applications intended to support or sustain life!
Hi,
das wundert mich schon (nicht daß ich Dir da widersprechen würde). Aber der AVR bietet doch schon alles in Hardware (Betriebspannungserkennung mit einstellbarer Verzögerung bis RESET angesprungen wird, Brown out, Watchdog). Warum wird denn so etwas im Bootloader abgefragt und ein PIN und Speicher dafür verplempert ? Gibt es einen Grund dafür ?
Gruß
pctoaster
Da kann ich nur raten: Weil der asuro als Lernroboter konzipiert ist, sollte eine einfache analoge Signalquelle vorhanden sein?Gibt es einen Grund dafür?
Oder kann es sein, dass dies mit dem I2C-Bus zu tun hat? PC5/ADC5 ist doch auch zufällig SCL.
Gruß
mic
Bild hier
Atmel’s products are not intended, authorized, or warranted for use
as components in applications intended to support or sustain life!
Daß man den I2C Bus nicht mehr benutzen kann ?
Au weia, was für eine Konstruktion.....
Gruß
pctoaster
Also ich halte den asuro für eine geniale Konstruktion. Sehr einfach aufgebaut, mit vielen Funktionen auf engstem Raum. Und eigentlich nicht für umfangreiche Erweiterungen vorgesehen. Aber für den Einblick und Einstieg in die Welt der Robotik ideal.
Bild hier
Atmel’s products are not intended, authorized, or warranted for use
as components in applications intended to support or sustain life!
ich vermute dass liegt daran, dass die flash-funktion über infrarot recht viel strom braucht, mehr als die hardware-spannungserkennung voraussetzt. wenn beim flashen die batterie zu leer wird, ist aber der flash content hinüber.
aber das mit dem pullup hab ich nit bedaht...
Lesezeichen