Hallo, ich habe ein Programm für ATTiny25 erstellt und möchte diese nun per UpdateLoader_2.2.4 von http://www.leo-andres.de/category/projekte/ in den uC spielen. Mein Problem ist nur, dass ich schon ganz beim Einlesen von dem Hex-File scheitere, siehe Bild. Ich vermute, dass mein Atmel Studio 6.2 kein Intel Hex Files erstellt. Anders kann ich es mir nicht erklären. Kann mir einer Helfen? Muss man was in Atmel Studio einstellen, das Intel Hex File erstellt wird? Viele Grüsse Stefan
Hi
>Ich vermute, dass mein Atmel Studio 6.2 kein Intel Hex Files erstellt.
Was sonst?
MfG Spess
Wenn eine Datei rauskommt mit der Endung .hex dann kannst Du Gift drauf nehmen dass das ein gültiges Intel-Hex-File ist. Der Fehler muss woanders liegen. Am besten Du fragst den Autor der komischen Software da aus dem Screenshot was die seltsame Fehlermeldung zu bedeuten hat.
stefan schrieb: > Ich vermute, dass mein Atmel > Studio 6.2 kein Intel Hex Files erstellt. Dann schau doch nach, ob eins erzeugt wird. Warum vermutest du das nur? Geh ins Projektverzeichnis und suche nach einem File mit der Endung *.hex und kontrolliere das Erstellungsdatum. Daran kannst du ja sehen, ob es zum Zeitpunkt des Compilierens erstellt wurde. Wenn ja, dann hast du es gefunden.
npn schrieb: > Geh ins Projektverzeichnis und suche nach einem File mit der Endung > *.hex und kontrolliere das Erstellungsdatum. Daran kannst du ja sehen, > ob es zum Zeitpunkt des Compilierens erstellt wurde. Wenn ja, dann hast > du es gefunden. Bei der Fehlermeldung "Ungültiger Record" ist das aber egal, ob die Hex-Datei aktuell oder uralt ist. Besser wäre es, die Datei mit einem Text-Editor anzuschauen. Dann kann man sehen, ob das ein gültiges Intel-Hex-Format ist. Gruß Dietrich
Dietrich L. schrieb: > Bei der Fehlermeldung "Ungültiger Record" ist das aber egal, ob die > Hex-Datei aktuell oder uralt ist. Ja, da hast du recht. Das habe ich übersehen. Ich ging nur davon aus, daß Stefan schrieb, es würde vermutlich kein *.hex-file erstellt. Da nahm ich an, es würde gar kein File erzeugt.
Also soweit ich beurteilen kann ist das ein Intel Hex File, ausser ich habe in Wiki was falsch verstanden :100000000EC01BC01AC019C018C017C016C015C03A :1000100014C013C012C011C010C00FC00EC01124F4 :100020001FBECFEDCDBF20E0A0E6B0E001C01D9225 :10003000A836B207E1F745D0ACC0E2CF87B18F73E5 :1000400087B983E086B9379A369A3699FECF84B15C :1000500095B1089597B18F71907E982B97B9369A84 :100060003699FECF84B195B10895CF92DF92EF9289 :10007000FF921F93CF93DF93182FD62F662371F033 :10008000C0E0C12CD12C7601812FE4DFC80ED91E2F :10009000E11CF11CCF5FCD13F7CF03C0C12CD12CD5 :1000A00076012D2F30E040E050E0C701B6014FD07F :1000B000C901DF91CF911F91FF90EF90DF90CF901A :1000C000089542D0BBDF10926700109266008CE664 :1000D00091E0909365008093640089E591E09093AE :1000E000610080936000109263001092620064E6E9 :1000F00083E0BBDF909363008093620020916000F7 :100100003091610082179307B0F4C19B14C0109224 :1001100063001092620064E683E0A7DF90936300BF :1001200080936200209160003091610082179307F4 :10013000D0F6C198D8CF209164003091650028177F :10014000390788F6C19ACFCFB99AC1980895A1E22C :100150001A2EAA1BBB1BFD010DC0AA1FBB1FEE1F41 :10016000FF1FA217B307E407F50720F0A21BB30B8C :10017000E40BF50B661F771F881F991F1A9469F708 :1001800060957095809590959B01AC01BD01CF0164 :060190000895F894FFCF72 :040000050080006611 :00000001FF
>>Ich vermute, dass mein Atmel Studio 6.2 kein Intel Hex Files erstellt. spess53 schrieb: > Was sonst? Vielleicht eine .elf-Datei? MfG Paul
Hallo stefan, das ist eindeutig eine Intel-Hex Datei. Die Fehlermeldung bezieht sich auch nicht auf die Datei, sondern einen Record innerhalb der Datei. Jede Zeile in deiner Datei ist ein Record und beginnt mit dem Startzeicen ":". Darauf folgt die Anzahl der Datenbytes als zweistellige Hexzahl. Danach die Speicheradresse, des ersten Datenbyte des Record, als vierstellige Hexzahl. Dahinter der Recordtyp als zweistellige Hexzahl (00=Daten-, 01=Endrecord). Dann die einzelnen Datenbyte deren Anzahl und Adresse zuvor angegeben waren. Zuletzt eine Prüfsumme als zweistellige Hexzahl. :100000000EC01BC01AC019C018C017C016C015C03A Zur Übersicht getrennt: : 10 0000 00 0E C0 1B C0 1A C0 19 C0 18 C0 17 C0 16 C0 15 C0 3A : = Start 10 = Anzahl 16 Datenbyte 0000 = Speicheradresse 0 00 = Typ - Daten 0E - C0 = die 16 Datenbyte 3A = Prüfsumme Die Fehlermeldung legt nahe, daß mit einem (oder mehreren) der Records etwas nicht stimmt. Es gibt verschiedene HEX-Formate, vieleicht braucht der Empfänger eines der Anderen? Gruß. Tom
Hallo Tom, danke für die Hilfe! Ich habe nach der Anleitung von Peter Dannegger gearbeitet. http://www.mikrocontroller.net/articles/AVR_Bootloader_FastBoot_von_Peter_Dannegger#Assemblieren_des_Bootloaders_.28Urspr.C3.BCngliche_Version_von_Peter_Dannegger.29 Ich frage mal den Ersteller des Programms, was ich falsch gemacht habe. Gruss Stefan
Hi >Die Fehlermeldung bezieht sich >auch nicht auf die Datei, sondern einen Record innerhalb der Datei. Mein Disassembler übersetzt es problemlos. MfG Spess
Das Programm ist die Bedienoberfläche für das Programm "Fastboot" von Peter Danegger. Das nimmt normalerweise das Intel-hex-Format. MfG Paul
Hallo, selbst mein uralter DOS-basierter Programmer liest das und sagt dazu "Intellec-86 Format found". Dem Hexfile fehlt also garnichts. Der Fehler liegt beim Einleseprogramm. Georg
Hallo zusammen, danke für die Fehlersuche! Der Vorschlag von Holger funktioniert. Mein Programm unterstützt nur die Record-Typen 0, 1 & 2. Die restlichen Typen hatte ich damals in keiner Hex-Datei für einen Atmega gefunden, außerdem ist mir keinen sinnvolle Verwendung dafür eingefallen. Um keine ungültigen Daten zu laden bricht der Import komplett ab. Wofür der Record-Typ 5 verwendet wird weiß ich nicht, hat der Bootloader/Atmega eine Möglichkeit die Startadresse einzustellen? Für die nächste Version baue ich eine bessere Import-Funktion, bei sinnlosen Records sollte das nicht komplett abbrechen.
Hi >Für die nächste Version baue ich eine bessere Import-Funktion, bei >sinnlosen Records sollte das nicht komplett abbrechen. Wer sagt, das die sinnlos sind? Der AVR-Assembler muss schließlich mit Flashgrößen bis zu 384kB umgehen können. Einfacher ist es alle Recordtypen zu implementieren. MfG Spess
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.