„hex.“ (z.B test.hex) Datei in eine C Datei (z.B test.c) kompilieren

OP #840205
Hallo!
Kann man eine „hex.“ (z.B test.c) Datei in eine C Datei (z.B test.c) 
kompilieren bzw. umwandeln .
Ich benutze die Software PSOC Express ich erzeuge dann mit dem Programm 
eine hex. Datei nun möchte ich aber die Datei in „c“ haben könnte ich 
die umwandeln?
Klar...
Dein HEX-File sieht etwa so aus:
1
:100000000C9490000C94B5000C94B5000C94B500C1
2
:100010000C94B5000C94B5000C94B5000C94B5008C
3
:100020000C94B5000C94B5000C94B7000C94B5007A

an den Anfang und ans Ende jeder Zeile setzt du ein '"'.

vorne weg ein
char hexfile[]=

und ans ende ein ';'.

Fertig ist das C-File:
1
char hexfile[]=
2
":100000000C9490000C94B5000C94B5000C94B500C1"
3
":100010000C94B5000C94B5000C94B5000C94B5008C"
4
":100020000C94B5000C94B5000C94B7000C94B5007A"
5
;

Aber warum sollte man sowas wollen?
Auch wenn man grundsätzlich jede Datei in eine HEX-Datei konvertieren 
und auch wieder zurückwandeln kann, geht Dein Vorhaben aus folgendem 
Grund nicht:
Normalerweise enthält eine HEX-Datei den compilierten und/oder 
assemblierten Code, also Maschinencode.
Und dieser lässt sich nicht in eine Quellcode-Datei (z.B. .c) 
zurückwandeln.

Vielleicht kannst Du PSOC Express (was auch immer das ist) anweisen, 
eine .c Datei zu erzeugen.
PSoC Express kommt laut Cypress in der aktuellen Version mit 
Unterstützung für den Hi-Tech Lite C Compiler.
Dies lässt vermuten, dass PSoC aus der grafischen Programmierung ein 
C-Sourcefile generiert, das dann compiliert wird. Das File wird wohl 
anschliessend automatisch gelöscht.
Vielleicht gibt es einen Parameter, der das Löschen des C-Files 
verhindert.
Wenn die Doku nicht dazu sagt, vielleicht mal bei Cypress nachfragen 
oder dort im Forum posten?
Persönliche Seite
In PSOC-Express ist ein C-Compiler bereits nach der Installation des 
Paketes integriert, der allerdings nur für PSOC Express benutzt werden 
kann. PSOC-Express erzeugt C-Code, der dann vom Compiler in ausführbaren 
Code übersetzt wird.
Für den integrierten Compiler ist also keine explizite C-Compiler-Lizenz 
notwendig.
Mittlerweile kann man in PSOC-Designer den originalen C-Compiler durch 
den besseren Hi-Tech Compiler ersetzen. Das dürfte bei PSOC-Express 
vermutlich auch funktionieren.

Jetzt die Frage, ob man den in PSOC-Express eingebetteten Compiler auch 
für eigene PSOC-Designer-Projekte bei nicht vorhandener C-Lizenz 
austricksen kann? Vermutlich ja, ich weiß aber nicht wie.


Es gibt auch eine Cypress AppNote, in der die Verwendung eines erzeugten 
PSOC-Express-Projektes in PSOC-Designer beschrieben wird.


Gruß -
Abdul

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 18 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

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.