www.mikrocontroller.net

Forum: PC-Programmierung „hex.“ (z.B test.hex) Datei in eine C Datei (z.B test.c) kompilieren


Autor: Marco Pepele (marcop)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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?

Autor: Εrnst B✶ (ernst)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Klar...
Dein HEX-File sieht etwa so aus:
:100000000C9490000C94B5000C94B5000C94B500C1
:100010000C94B5000C94B5000C94B5000C94B5008C
: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:
char hexfile[]=
":100000000C9490000C94B5000C94B5000C94B500C1"
":100010000C94B5000C94B5000C94B5000C94B5008C"
":100020000C94B5000C94B5000C94B7000C94B5007A"
;

Aber warum sollte man sowas wollen?

Autor: Severino R. (severino)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.

Autor: Benedikt K. (benedikt) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nein, sowas geht nicht. Du kannst aus einem Schnitzel auch kein Schwein 
mehr machen.

Autor: Marco Pepele (marcop)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Man kann mit PSoC Express Graphisch programmieren ., aber ich habe mich 
gefragt ob ich dann das was ich nun graphisch programmiert habe in 
C-code umwandeln kann

Autor: Stefan B. (stefan) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Darauf hat Benedikt ja schon geantwortet.

Autor: Severino R. (severino)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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?

Autor: Abdul K. (ehydra) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: StinkyWinky (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Ernst Bachmann

Ist zwar leicht OT aber trotzdem:
z.B. um Code auf das Target zur Laufzeit herunter zu laden.

Autor: Martin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>z.B. um Code auf das Target zur Laufzeit herunter zu laden.

Dann stellst du dir darunter aber etwas anders vor als der Rest der 
Welt.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
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.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.