Mircochip Intel Hex 32 umwandeln

Gast #1436607
Lesenswert?
• ▲
▼
Hallo zusammen,

hab mal wieder eine Frage an euch.

So es geht darum ich habe einen Mikrocontroller der Firma Microchip Typ 
dsPIC30F5011

ich lade in Programm welches eine Hex-Datei ist auf µc über MPLab. 
Wollte aber gerne wissen was so in der Hex-Datei drin steht. habe schon 
rausgefunden das es sich um Intel Hex 32 handelt.
Wollte jetzt gerne wissen mit welchen Programm ich das in Ascii 
umwandeln kann.
Um so sehen wie es programmiert ist.

Über Vorschläge würde ich mich freuen.


Danke
Gast #1436627
Lesenswert?
• ▲
▼
Hab z.B. sowas stehen...


:100200002f052100807922000001880000000000f5
:10021000050007000c000700f66602000000000061
:100220000040da000000fe004440a900400e20001b
:100230000000e0000300320000002000a001880060
:100240004440a80000000600a06b27000100200029
:100250001600370062004000e080480091018800ed

das möchte ich umwandeln
#1436973
Lesenswert?
• ▲
▼
Starte mplab IDE
Configure->Select Device  dsPIC30F5011
Datei->Import  Dateiname.hex
View->Program Memory

Dann am unteren Rand des Fensters "Machine" auswählen und schon sieht 
man das Disassembler Listing.

Nachteil: man kann das Listing nur über print screen als Bitmap 
speichern.
Gast #1444368
Lesenswert?
• ▲
▼
Darkspelly schrieb:

>nur was heißt jetzt

>nop
>nopr

Was genau hast du denn erwartet, wenn nicht sowas wie "nop" o.ä.?

Oliver

P.S.
spess53 (Gast) schrieb:

>Und du solltest fit in
>Assemblerrprogrammierung sein. Sonst verstehst du eh nur Bahnhof.
#1444371
Lesenswert?
• ▲
▼
Darkspelly schrieb:
> super danke für diesen tip!!!
>
> nur was heißt jetzt
>
> nop
> nopr
>
> nur ??????

Vergiss es.
Du erwartest wahrscheinlich, dass du C-Code zu Gesicht bekommst.

Das ist aber genauso unmöglich, wie aus einer Frikadelle wieder zur Kuh 
zurückzukommen.
#1444386
Lesenswert?
• ▲
▼
Darkspelly schrieb:

> nur was heißt jetzt
>
> nop
> nopr

nop steht für No Operation, quasi der Rechner macht bewußt nichts. Er 
meditiert also praktisch für einen Maschinenzyklus...


> nur ??????

Wenn Du Dir ein HEX File disassemblierst, dann solltest natürlich schon 
die Sprache verstehen, in die Du übersetzt. Hast denn kein Manual zu 
Deinem Prozessor im Netz finden können?

Übrigens: Erster Treffer bei Google bei Eingabe Deines Prozessors:

http://ww1.microchip.com/downloads/en/DeviceDoc/70116e.pdf

Michael
#1444814
Lesenswert?
• ▲
▼
Die PIC24 und dsPIC33 kennen 2 verschiedene "nop" Befehle:

einmal Hexcode 000000, das ist das normale nop
zum Anderen
alle Hexcodes von FF0000 bis FFFFFF werden als nopr angezeigt.

Beide machen aber genau dasselbe, nämlich einen Machinenzyklus mit 
Nichtstun vertrödeln und das Programm mit dem darauffolgenden Befehl 
fortsetzen.

Die nopr entstehen, wenn man in den unteren 16 Bit z.B. eine Konstante 
speichert (mit asm-Befehl tblwtl) und die oberen 8 Bit des Befehlscodes 
unverändert mit "FF" stehen lässt.

Edit
Das soll einen gewissen Schutz gegen das Ausführen von (konstanten) 
Daten im Flash-Speicher als Befehl bieten.

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.