Forum: Mikrocontroller und Digitale Elektronik Bootloader Hex-File


von Daniel (Gast)


Angehängte Dateien:

Lesenswert?

Hallo zusammen,
ich möchte mir einen Bootloader für einen ATMega16 programmieren.
Was muss ich dem Controller aus dem Hex-File übermitteln?

von Nullpainter (Gast)


Lesenswert?

Naja, das Hexfile enthaelt was wo zu stehen hat. Daher muss der 
Bootloader eigentlich alles wissen. Wenn du nun dem bootloader ein 
Hexfile schcken willst, muss der das entschluesseln koennen. Ist nicht 
so schwierig. Moeglicherweise ist es einfacher, das Hexfile 
umzucodieren.

von Frank (Gast)


Lesenswert?

Mach besser vorher ein .BIN draus.
Dann Flash pageweise beschreiben. (pagegröße abhängig vom Typ)

Mir fallen da spontan 2 Vorteile ein.:

- weniger Daten zu übertragen
- kleinerer Bootloader

von Daniel (Gast)


Lesenswert?

wie mache ich eine .bin daraus

von Klaus (Gast)


Lesenswert?

>wie mache ich eine .bin daraus
Dein Fragezeichen fehlt


Mit dem Programm WinHex

http://www.x-ways.net/winhex/index-d.html

von Knut B. (Firma: TravelRec.) (travelrec) Benutzerseite


Lesenswert?

>Mir fallen da spontan 2 Vorteile ein.:

>- weniger Daten zu übertragen
>- kleinerer Bootloader

Mir fallen da spontan 2 Nachteile ein:

-Ausgabedatei von AVR-Studio u.a. nicht direkt nutzbar (jedes Mal vor 
dem Flashen muß umkodiert werden)

-keine Möglichkeit für den Bootloader, Übertragungsfehler zu finden

von Daniel (Gast)


Lesenswert?

Also ist es besser das hex-file zu übergeben.

Ich übergebe dann Zeile für Zeile ohne Doppelpunkt und überprüfe die 
Prüfsumme am Schluß. Ist die Prüfsumme korrekt schreibe ich die Daten ab 
der übergeben Adresse in den Flash.
Ist das so richtig???

von Knut B. (Firma: TravelRec.) (travelrec) Benutzerseite


Lesenswert?

>schreibe ich die Daten ab der übergeben Adresse in den Flash.

Erst schreibst Du die Daten in einen Pufferspeicher, der so groß ist, 
wie eine Flashseite (Page). Ist der Puffer voll, überträgst Du diesen in 
den temporären Flash-Page-Puffer und gibst den Page-Write-Befehl. Ist im 
Datenblatt anhand von Codesegmenten gut erklärt

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.