Intel Hex Format

Gast #558828
Lesenswert?
• ▲
▼
Guten Morgen,

ich habe mit dem GCC-Compiler ein Hex-File für einen AVR erstellt. 
Solange ich das File über dem Debugger aufspiele, ist alles OK. Doch bei 
einem ISP-Programmer gibt es immer die Fehlermeldung, dass das File 
nicht in den Controller passt.

Nun hab ich gelesen, das liegt beim GCC oft daran, das im Hex-File noch 
ein EEPROM_Stück angehängt wird, und dadurch das File zu groß scheint. 
Dieses Stück sollte einfach herausgelöscht werden.

Hat da jemand schon mal Erfahrungen mit gemacht? Das Hex-File scheint ja 
im Intel Hex Format zu sein. Hab schon Infos dazu gefunden, doch steht 
dort leider nirgens beschrieben, wie denn dieser EEProm_Part aussieht.

Weiß das vielleicht jemand?


Gruß
#558829
Lesenswert?
• ▲
▼
Toni wrote:
> Guten Morgen,
>
> ich habe mit dem GCC-Compiler ein Hex-File für einen AVR erstellt.
> Solange ich das File über dem Debugger aufspiele, ist alles OK. Doch bei
> einem ISP-Programmer gibt es immer die Fehlermeldung, dass das File
> nicht in den Controller passt.
>
> Nun hab ich gelesen, das liegt beim GCC oft daran, das im Hex-File noch
> ein EEPROM_Stück angehängt wird, und dadurch das File zu groß scheint.
> Dieses Stück sollte einfach herausgelöscht werden.
>
> Hat da jemand schon mal Erfahrungen mit gemacht? Das Hex-File scheint ja
> im Intel Hex Format zu sein. Hab schon Infos dazu gefunden, doch steht
> dort leider nirgens beschrieben, wie denn dieser EEProm_Part aussieht.
>
> Weiß das vielleicht jemand?
>
>
> Gruß

@Toni

welcher AVR ? Richtigen Typ eingestellt?

poste doch mal das HEX-File?

Dirk
Gast #558846
Lesenswert?
• ▲
▼
Überprüf mal die folgenden Punkte:
1.: Im Makefile richtigen µC-Typ angegeben?
2.: Beim Build Meldungen über Speicherauslastung beachtet? (Wenn der 
Code größer als der zur Verfügung stehende Speicher ist, gibt es keine 
Fehlermeldung, sondern nur die Angabe, dass der Speicher zu mehr als 100 
% voll ist!)
3.: Im Debugger gleichen µC-Typ eingestellt wie in der Schaltung 
verwendet?
Gast #558870
Lesenswert?
• ▲
▼
Der Controller ist ein Atmega88, der Debugger das JTAG-ICE mkII und der 
Programmer der AVRISP mkII.

Der Controllertyp ist im Debugger und im Makefile richtig eingestellt. 
Speicherauslastung ist auch ok, sind gerade mal 70% voll.

Mit dem Debugger funktioniert alles ohne Probleme, nur beim Programmer 
gehts nicht. Auch mit dem STK500 klappt es nicht.
Gast #558924
Lesenswert?
• ▲
▼
So,

jetzt klappts! Wie oben schon angedeutet lag es an einer Zeile im 
Hex-File. Diese muss raus!

Bei mir sah die so aus:

:0200000400807A

Ist eigentlich ganz einfach die entsprechende Zeile zu finden. Das 
Hex-File ist ja nach dem Intel Hex Format aufgebaut, und im die 
Speicheradressen sind schön nacheinander im Hex-File angeordnet. Nur die 
eine Zeile sticht sofort heraus, weil Sie gar nicht in das Schema 
passte.


Gruß
#559028
Lesenswert?
• ▲
▼
Toni wrote:
> So,
>
> jetzt klappts! Wie oben schon angedeutet lag es an einer Zeile im
> Hex-File. Diese muss raus!
>
> Bei mir sah die so aus:
>

Du solltest hier mal schauen:


> :020000-->04<--0807A

Wieso erzeugt Dein Compiler diese 04?

32Bit Adress Erweiterung ?

Wozu ?


>
> Ist eigentlich ganz einfach die entsprechende Zeile zu finden. Das
> Hex-File ist ja nach dem Intel Hex Format aufgebaut, und im die
> Speicheradressen sind schön nacheinander im Hex-File angeordnet. Nur die
> eine Zeile sticht sofort heraus, weil Sie gar nicht in das Schema
> passte.
>
>
> Gruß

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.