Forum: Mikrocontroller und Digitale Elektronik Über Bootloader Daten in den EEPROM


von Patrick L. (crashdemon)


Lesenswert?

Hallo Leute,

ich benutze den Bootloader fastboot von Peter in Verbindung mit einem 
Atmega 8. Durch eine Erweiterung in einer Applikation die ich für den 
Atmega 8 geschrieben habe, komme ich jetzt in die verlegenheit 
zusätzlich zu dem *.hex-File ein *.eep-File in den µC laden zu müssen.

Dazu einige Fragen:

Kann man Daten ins EEPROM eines µC über einen Bootloader schreiben?
Geht das mit fastboot?

Zurzeit sind mir nur Bootloader bekannt die das Programm ins Flash 
laden.

von Sean G. (atmega318)


Lesenswert?

Wie gross sind die Daten die ins Eeprom müssen? Bei einigen wenigen 
Variablen z.B. kann es einfacher sein wenn dein Endprogramm sie im Flash 
hat und beim ersten Start initialisiert.

von Patrick L. (crashdemon)


Lesenswert?

Im Moment sind es erst 5 Bytes an Daten im EEPROM, das wird sich aber 
abald noch ein wenig vergrößern.

Wie ist das den überhaupt wenn sich die Adressen der Variablen im EEPROM 
ändern, wenn ich z.B. neu kompiliere bzw. neue Variablen hinzufüge.

Kann man den überhaupt über einen Bootloader Daten in den EEPROM laden, 
oder geht das gar nicht?

von Sean G. (atmega318)


Lesenswert?

Wenn du genug platz im Flash hast für eine Initialisierung, ist das 
wahrscheinlich der einfachste Weg. Über die verschiedenen Bootloader 
kann ich dir nicht Auskunft geben, ich habe noch nie welche verwendet. 
Es gibt aber keinen Grund, weshalb ein Bootloader nicht auch das EEPROM 
beschreiben können soll, falls es so einen noch nicht gibt (was ich für 
unwahrscheinlich halte) musst du halt einen der bestehenden selber um 
diese Funktion erweitern. Adressen ändern sollte kein Problem sein, 
solange die im Chip enthaltene Version des EEPROM Inhalts mit dem 
zugehörigen Programm übereinstimmt.

von Patrick L. (crashdemon)


Lesenswert?

Naja ich benutze den Bootloader auch nur um Pins zu Sparen und nicht so 
versierten Nutzern ein update der Firmware zu erleichtern.

Wie würde man den Praktisch ein schreiben der Daten in das EEPROM 
realisieren?

Also erstmal muss ja der Bootloader wissen ob die jetzt gesendeten Daten 
in den Flash oder EEPROM sollen.
Da die Daten per 
http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial#Block_lesen.2Fschreiben 
einfach schreiben, sobald sie über RS232 empfangen werden?

Dann brauch man aber bestimmt einen Buffer, da das Schreiben in das 
EEPROM ja nicht allzu schnell ist.

von holger (Gast)


Lesenswert?

>Naja ich benutze den Bootloader auch nur um Pins zu Sparen und nicht so
>versierten Nutzern ein update der Firmware zu erleichtern.

Zu den nicht versierten Nutzern scheinst du auch zu gehören.

>Wie würde man den Praktisch ein schreiben der Daten in das EEPROM
>realisieren?

Daten übertragen und ins EEPROM speichern?

>Dann brauch man aber bestimmt einen Buffer, da das Schreiben in das
>EEPROM ja nicht allzu schnell ist.

Nö. Dein Programm zum füttern des Bootloaders kann ja auch warten
bis der Bootloader ins EEPROM geschrieben hat.

Aber irgendwie sieht es so aus als wenn du das sowieso nicht
selber schreiben kannst.

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.