Forum: Mikrocontroller und Digitale Elektronik EEprom auslesen


von mario (Gast)


Lesenswert?

Hallo jungs

habe mal wider eine Frage und zwar, gibt es die Möglichkeit das EEprom , 
bzw das Programm was raufgespielt wurde eins Atmel Mikrocontroller 
auszulesen und dies als C-code zu speichern.?????
zur Verfügung habe ich ein STK 500 oder AVRSISPmkII. Der Mikrokontroller 
ist auf eine Platine gelötet udn hat ein Programierschnittstelle, also 
kein chip was auf der STK500 steckt.

das wäre sehr interesant, wnn einer von unsern lieben Profis dazu was 
sagen kann
MfG und einen schönen Tag

von hacker-tobi (Gast)


Lesenswert?

Ich nehme an, du meinst den Flash (Programmspeicher) oder?

Auslesen kannst du es z.B. mit AVRDUDE. Aber dann bekommst du nur den 
Inhalt des Flash in maschinenlesbarer Form.

Evtl. ist noch disassemblieren möglich, dann hättest du ein 
assemblerlisting. Keinesfalls jeoch eine (Rück-)Portierung in C.

gruß

tobi

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Vergiss es... :-(
Es gibt keinen Hex->C Konverter, der lesbaren C-Code ausspuckt.

Schon ein Disassembler macht aus einem Hex-File, das aus einem 
verständlichen Assembler-File erzeugt wurde, nur Wirrwarr.
Insbesondere, wenn da noch ein paar Tabellen versteckt sind...

von Dieter Werner (Gast)


Lesenswert?

Es besteht auch immerhin noch die Möglichkeit, dass der Programmspeicher 
durch "read protection" gegen Auslesen geschützt ist.

von mario (Gast)


Lesenswert?

Hi

Viel Dank, ihr seid echt Hammer

MfG

von peda (Gast)


Lesenswert?

du brauchst da einfach nur n lesegerät

von Ulrich P. (uprinz)


Lesenswert?

Also erst mal die Programmierschnittstelle des STK auf die zu 
untersuchende Platine fädeln. Das sollte gehen, wenn das STK die nötigen 
Signale ebenso elegant irgendwo auf einem Stecker liegen hat, wie es die 
neueren STKs haben. Sonst das STK auf einen bekannten Chip Jumpern und 
dann aus dessen leeren Sockel auf das zu untersuchende Board fädeln.

Dann nachsehen, ob irgend etwas sinnvolles per AvrStudio ausgelesen 
werden kann. Das als HEX oder Binärdatei abspeichern.
Dann einen vernünftigen Disassembler starten, der den geladenen Code 
sinnvoll strukturiert anzeigen kann. Beispielsweise IDA Pro.

Dann macht man sich auf die Suche nach den Dingen, die einen 
interessieren.

Wenn man das zum ersten mal macht, gibt man nach einigen Stunden 
frustriert auf. Aber mit der Zeit bekommt man Übung und findet bestimmte 
Dinge, die einem sagen, wo eine Funktion startet, wo sie aufhört, wie 
man eine Interrupt Routine erkennt u.s.w.

Das nur allgemein. Weitere und tiefergehende Informationen, wie man sich 
die Arbeit anderer auf illegale Weise aneignet werde ich nicht geben.

Gruß, Ulrich

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
Noch kein Account? Hier anmelden.