Hallo Ich möchte gerne aus mehreren Intel-HEX-Files ein eiziges machen. Also hintereinander an hängen. Weiß da Jemand ein Programm mit dem soetwas möglich ist? Brauchwe soetwas weil ich ein Eprom auslesen möchte das größer ist als das es der Programmer unterstützt, deshalb habe ich dann mehrere HEX-files die ich nacher wieder zusammenfügen möchte. Und gibt es ein Programm mit dem man zwei HEX-Files vergleichen kann?
Bastlwastl schrieb: > Und gibt > es ein Programm mit dem man zwei HEX-Files vergleichen kann? Gehe mal in ein Kommadozeilenfenster (dos Box) in deinem windows und gebe "help fc" ein. Ansonsten bringt "dateien vergleichen" bei Google fast 2 Millionen Treffer
wie wärs zur abwechslung mal mit DOS und copy Kopiert eine oder mehrere Dateien an eine andere Position. COPY [/D] [/V] [/N] [/Y | /-Y] [/Z] [/L] [/A | /B] Quelle [/A | /B] [+ Quelle [/A | /B] [+ ...]] [Ziel [/A | /B]] Quelle Bezeichnet die zu kopierende(n) Datei(en). /A Weist auf eine ASCII-Textdatei hin. /B Weist auf eine Bin„rdatei hin. /D Zieldatei kann entschlsselt erstellt werden. Ziel Bezeichnet das Verzeichnis und/oder Dateinamen der neuen Datei(en). /V šberprft, ob die Dateien richtig geschrieben wurden. /N Verwendet den Kurznamen (falls vorhanden), beim Kopieren einer Datei mit einem Nicht-8Punkt3-Namen. /Y Unterdrckt die Best„tigungsaufforderung beim šberschreiben vorhandener Zieldateien. /-Y Fordert beim šberschreiben vorhandener Zieldateien zum Best„tigen auf. /Z Kopiert Netzwerkdateien in einem Modus, der einen Neustart erm”glicht. /L Wenn die Quelle eine symbolische Verknpfung ist, wird die Verknpfung anstelle der eigentlichen Datei, auf die die Verknpfung zeigt, zum Ziel kopiert. Die Option /Y ist m”glicherweise in der Umgebungsvariablen COPYCMD voreingestellt. Dies wird durch /-Y auf der Befehlszeile berschrieben. Standardm„áig wird beim šberschreiben zum Best„tigen aufgefordert, auáer wenn der COPY-Befehl innerhalb einer Batchdatei ausgefhrt wird. Um Dateien aneinander zu h„ngen, geben Sie eine einzelne Datei als Ziel an, aber mehrere Dateien als Quelle (unter Verwendung von Platzhaltern oder in der Form: Datei1 + Datei2 + Datei3). siehe letzten satz mit dem Parameter /B für binärdatei aber bei hex ist das nicht nötig aber schhadet auch nicht und zum vergleich gibt es comp das gute alte DOS
never ever schrieb im Beitrag #3116714:
> wie wärs zur abwechslung mal mit DOS und copy
Das bringt einen aber nicht weiter.
Denn mehrere einzelne Intel-HEX-Dateien zu einer einzigen
zusammenzufassen ist mehr als einfach nur die Fileinhalte
aneinanderzuhängen.
Auch wenn es auf den ersten Blick nicht so aussieht, aber
Intel-Hex-Files haben auch so etwas wie eine interne Struktur. Und genau
diese Strukturen müssen zusammengemerged werden und nicht einfach nur
aneinandergehängt.
Karl Heinz Buchegger schrieb: > Und genau > diese Strukturen müssen zusammengemerged werden und nicht einfach nur > aneinandergehängt. Wenn man statt einer Datei für ein EProm 27C1001 zwei für 27C512 ausgibt, fängt jede der Dateien bei der Adresse 0 an, schon deshalb ist hintereinanderhängen witzlos. Bei Binärdateien, die nur die rohen Bytes enthalten, geht das mit copy usw. Mit der Software zum Programmer lässt sich das auch mit HEX handeln, ich kann z.B. 27C1001 spezifizieren und die erste Datei einlesen, die belegt dann die untere Hälfte, dann wird die 2. Datei eingelesen, aber mit einem Offset von 64kBytes. Geht das nicht, kann man auch die 2 Datei zuerst einlesen und 64k nach oben verschieben, dann die 1. einlesen. Gruss Reinhard
Karl Heinz Buchegger schrieb: > Denn mehrere einzelne Intel-HEX-Dateien zu einer einzigen > zusammenzufassen ist mehr als einfach nur die Fileinhalte > aneinanderzuhängen. > Auch wenn es auf den ersten Blick nicht so aussieht, aber > Intel-Hex-Files haben auch so etwas wie eine interne Struktur. Na ja ich habe sie mir mal kurz angesehen. (Das letzte mal vor 20 Jahren :-)). 7Bit ASCII und pro Zeile einen Record. Normalerweise Startrecord, n mal Datenrecord und Stoprecord. Das heisst eigentlich könnte man die mit 10min Einarbeiten mit einem normalen Texteditor zusammenfassen.
Karl Heinz Buchegger schrieb: > Auch wenn es auf den ersten Blick nicht so aussieht, aber > Intel-Hex-Files haben auch so etwas wie eine interne Struktur. Und genau > diese Strukturen müssen zusammengemerged werden und nicht einfach nur > aneinandergehängt. insofern es keine Zeilen gibt, in denen sich die Adressbereiche überschneiden sollte es doch durch hintereinanderhängen der Datenzeilen (also ohne die End-Markierung) gehen. Hab ich auch schon mehrmals praktiziert. Wenn ich ein großes Hex mit Bootloader und Applikation bauen wollte.
Here Is Johnny schrieb: > mit notepad++ kannst du auch das eine oder andere machen... wenn man sich in der Struktur von HEX-Dateien auskennt. Gruss Reinhard
Nachtrag: Falls es um 16 Bit Code geht mit Segment Address Start record, müsste man evt. die Adressen und damit dauch die Prüfsummen der Records ab der 2. Datei umrechnen. Das würde ich dann doch einer Software überlassen (oder schnell eine schreiben).
Reinhard Kern schrieb: > wenn man sich in der Struktur von HEX-Dateien auskennt. Na ja das ist ja kein Hexenwerk. Zumal die Ausgabe aus einem Eprommer schlicht sein sollte
Udo Schmitt schrieb: > Na ja das ist ja kein Hexenwerk. Die Adressen ändern nicht, aber wie Udo schon anmerkte: wie machst du mit notepad die Prüfsummen? Man kann zwar einen Hexadezimalen Taschenrechner verwenden oder den für Windows, aber bei grossen Eproms artet das in echte Arbeit aus. Die Software zum Galep z.B. macht das ohne Murren. Gruss Reinhard
Hallo! es geht auch mit "HEX2BIN.EXE" in Kombination mit "BIN2HEX.EXE" und Aneinanderhängen mit einfachem Editor. Ist aber umständlicher als HxD und man muss wissen, was man macht.
Per (avr-) objcopy aus den binutils die HEX-Dateien in ordinäre (Binär-)Files umwandeln, diese dann nach belieben mit Hexeditoren, Copy, cat, dd, debug, edlin verwusten, und anschliessend mit objcopy zurück in HEX verwandeln?
Wenn sich schon einer Bastlwastl nennt, dann sollte er das besser lassen. Hinterher nervst du uns damit, dass es nicht funktioniert.
>und man muss wissen, was man macht
Quatsch, mit einem Kochrezept klappt das mit dem Basteln schon.
Das hexfile ist jetzt zu gross! Kann man das auch verkleinern?
Wastlbastl schrieb: > Das hexfile ist jetzt zu gross! Zu groß wofür? > Kann man das auch verkleinern? Normalerweise nicht
Bastlwastl schrieb: > Ich möchte gerne aus mehreren Intel-HEX-Files ein eiziges machen. Wesentlich einfacher wäre die Geschichte, wenn du dich nicht auf Intel-Hex-Files versteifst, sondern die entsprechenden Binärdateien daraus erzeugst und diese aneinander hängst. Das Ergebnis kannst du dann gerne wieder zurück wandeln.
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.