Forum: Mikrocontroller und Digitale Elektronik Bootloader von Fleury geht nicht richtig


von Seppo (Gast)


Lesenswert?

Tach, ich versuche gerade den Bootloader von Peter Fleury zum laufen zu 
bringen. Aber der mag noch nicht richtig. Ich bin mittlerweile so weit 
das der Programmdownload funktioniert. Aber:

Nach einem Download springt der Bootloader nicht automatisch nach $0000. 
Nur durch einen Reset kann ich das Programm starten.

Wenn ich ein Programm per Bootloader runtergeladen und getestet hab und 
anschließend wieder zurück in den Bootloader springe und im AVR Studio 
auf "Program" klicke geht es nicht. Ich muß erst das AVRISP Fenster 
schließen und neu connecten. Erst dann gehts wieder.

Jedesmal beim connecten fordert mich das AVR Studio zu nem 
Firmware-Update auf.

Ich bin eigentlich der Meinung das ich die Fusebits alle richtig 
programmiert habe und am Code hab ich auch nichts geändert. Kann es am 
Compiler liegen? Ich habe WinAVR installiert und dann die AVRGCC Version 
von Atman drüberkopiert wegen dem Mega2560 Support (den Bootloader teste 
ich gerade auf nem Mega8)

Also der Ablauf nochmal schrittweise
-Taste beim Einschalten drücken -> Bootloader startet
-AVR Studio connecten -> Firmware Update Meldung -> wegklicken
-Applikation downloaden -> startet nicht automatisch
-Reset drücken -> Applikation startet
-Taste und Reset drücken -> Bootloader startet
-Program in AVR Studio klicken -> ISP Mode Error Meldung
-AVRISP Fenster schließen und neu Verbinden -> Download geht wieder

Eigentlich sollte der Bootloader nach einem Download die Applikation 
automatisch Starten und nach der Rückkehr in den Bootloader sollte man 
wieder neu Downloaden können. Wo hakt es bei mir? Und wie kann ich die 
Firmware Update Meldung unterdrücken?

Seppo

von JojoS (Gast)


Lesenswert?

hast du den Bootloader selber compiliert? Der BL meldet eine Firmware 
Version auf Anfrage vom AVR Studio. Wenn die zu klein ist will das 
Studio ein Update durchführen. Also einfach im Quelltext die Versionsnr 
auf die verlangte hochsetzen. Oder nachsehen ob du die neueste Version 
der Peter's Homepage hast, ich habe gesehen das es ab und zu neue 
Versionen gibt.
Nach dem Flashen wird kein Reset gemacht, das ist normal, es können ja 
noch weitere Kommandos kommen. Ob es ein Reset Kommando im STK500 
Protokoll gibt weiss ich nicht, wäre aber praktisch.
Ich habe den Bootloader noch etwas geändert damit ich den direkt von der 
Applikation (die immer seriell mit dem PC Verbunden ist) starten kann.

von Seppo (Gast)


Lesenswert?

Ok, danke. Irgendwie hab ich vor lauter defines die für die 
Versionsnummer übersehen. Jetzt klappt das. Allerdings nur so lange bis 
es ein neues Update vom AVR Studio gibt. Hier wäre es ganz nett wenn man 
die Werte im Eeprom ablegen und irgendwie ändern könnte. Aber das kann 
ich irgendwann mal reinbasteln.

Jetzt hab ich aber immer noch das Problem das ich nach dem ersten 
Download die AVRISP Software vom AVR Studio neu starten muß. Das ist 
lästig. Ich nehme an das das AVR Studio beim Starten irgend eine 
Initialisierung sendet die der Bootloader braucht bevor er andere Daten 
akzeptiert. Hab den Code mal überflogen, aber ich kenne das STK500 
Protokoll noch nicht gut genug.


btw: was hat Atmel eigentlich geritten als die beim Mega2560 einigen 
Bits neue Namen gegeben haben? So heißt zb das Bit EEMWE im Register 
EECR jetzt EEMPE. Gleiche Funktion, fast gleicher Name.
EEprom Memory Write Enable heißt jetzt EEprom Memory Program Enable
grmpf
Aber das hat mit obrigem Problem nix zu tun

Und jetzt ab in die Falle

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.