Forum: Mikrocontroller und Digitale Elektronik Mikrocontroller Chip auslesen als Sicherung


von Simon A. (pr0stl)


Lesenswert?

Hallo,

ich habe eine Platine auf der folgender Chip verbaut ist:

STC12C5A60S2 (ich glaub LQFP-44) in Kmobination mit einem FTDI 32 zur 
USB Kommunikation.

Das ganze Ding steuert einen MIDIController.

Jetzt stehe ich vor folgendem Problem:

Es gibt eine neue Firmware in Form einer Hex-Datei (von der Hersteller 
Seite). Mit dabei ist auch ein kleines Updater-Programm. Leider 
funktioniert dieses Update nicht, das Programm stürzt immer ab bzw. 
reagiert nicht mehr.

Mein Ziel ist es, die neue Firmware-Datei auf den Mikrocontroler zu 
spielen.

Daher wollte ich fragen, ob man den Chip auslesen kann, quasi als 
Sicherung und dann die Hew Datei aufspielen kann. Das ganze über eine 
ISP Schnittstelle, wobei ich gehofft habe, dass man direkt an die Pins 
kleine Kontakte anfügt.

Ist das prinzipiell so möglich, oder seht ihr Probleme, bzw. gibts 
Anregungen?

Wäre für jede Hilfe dankbar.

lg
pr0stl

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Simon Ang schrieb:
> Daher wollte ich fragen, ob man den Chip auslesen kann, quasi als
> Sicherung und dann die Hew Datei aufspielen kann.

Das kann gehen, muss aber nicht, da der Hersteller des Gerätes 
durchaus eine Auslesesicherung des µC gesetzt haben kann. Das wird als 
"Kopierschutz" gerne angewandt.

Und auf welche Art und Weise der µC programmiert wird, wirst Du dessen 
Datenblatt* entnehmen müssen.

Ob das, was der Gerätehersteller als "neue Firmware" liefert, aber ein 
per ISP programmierbares Abbild des Flash-Speichers ist, oder ob das was 
ist, was über einen Bootloader übertragen wird, das wirst Du selbst 
herausfinden können.

Was spricht dagegen, den Gerätehersteller wegen der fehlerhaften 
Update-Software zu kontaktieren?

*) www.stcmicro.com/datasheet/stc12c5a60s2-en.pdf

von Simon A. (pr0stl)


Lesenswert?

Danke für die schnelle Antwort!

> Was spricht dagegen, den Gerätehersteller wegen der fehlerhaften
> Update-Software zu kontaktieren?

Ich habe den Hersteller bereits mehrfach kontaktiert, leider ohne Erfolg 
oder überhaupt irgendeiner Art von Rückmeldung.

> Ob das, was der Gerätehersteller als "neue Firmware" liefert, aber ein
> per ISP programmierbares Abbild des Flash-Speichers ist, oder ob das was
> ist, was über einen Bootloader übertragen wird, das wirst Du selbst
> herausfinden können.

Wie kann man das herausfinden ? Da man dazu bereits den USB Port nutzt 
tippe ich eifnach mal auf eine Art von Bootloader.


Beim Einstecken des Geräts läuft auch eine kurzes Bootprogramm.

Vielleicht gibt es ja eine Möglichkeit die Firmware-Datei über den USB 
Prot zu übertragen, ohne das mitgelieferte Programm zu nutzen, sondern 
ein alternatives Programm? Bin mir nur nicht ganz sicher wie das 
funtkioniert. Habe bereits ein wenig Erfahrung mit ATMEL µC gemacht und 
da konnte ich per ISP und nach dem Aufspielen eines Bootloaders auch per 
USB Programmieren.

> Und auf welche Art und Weise der µC programmiert wird, wirst Du dessen
> Datenblatt* entnehmen müssen.

Bin immer noch auf der Suche nach dem Datenblatt, weil sich der Link 
(über den bin ich auch schon gestlpert) lässt sich nicht öffnen.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Probier mal das hier:

http://www.dz863.com/downloadpdf-vdkijumpjuna-STC12C5A60S2.pdf

Das Ding ist ein Exot. Zwar nutzt es den wohlbekannten 8051-Kern, aber 
alles andere ist von einer Firma, von der man praktischerweise noch nie 
gehört hat. Entwicklungssysteme, Programmiersoftware etc. ist gänzlich 
unbekannt.

In was für einem Gerät ist das Ding denn verbaut?

von Simon A. (pr0stl)


Lesenswert?

Der Controller ist in dem iStage von der Firma iCon verbaut.

http://www.icon-global.com/Keyboards%2FPads_Pads_iStage.htm

Es wird wohl hauptsächlich Lehrgeld sein, was ich bezahlt habe. Das 
Gerät funktioniert zwar gut, aber nicht so wie es mit einem Update 
möglich wäre (speziell die Steuerung der LED, rot und blau ist derzeit 
nicht möglich).
Leider wurden eben auch noch Bauteile verwendet, die es scheinbar gar 
nicht mehr so gibt.

Leider hab ich auch schon festgestellt, dass die Firma des Chips nicht 
besonders bekannt ist und daher auch leider wenig darüber zu finden ist.

Interessant war das Gerät, weil is eine einfache und übersichtliche 
Anordnung von Pads hat, die für mich optimal wären. Leider stellt sich 
heraus, dass ich eines der ersten Geräte der Baureihe erhalten haben und 
man dor das Firmware Update machen müsste. Das funktioniert aber leider 
nicht.

Daher hab ich das Ding einfach mal aufgeschraubt und mir das Innenleben 
angeschaut. Hab den µC erkannt und auch einen FTDI Chip. Kenn mich nur 
wenig mit µC aus und bin daher auf Rat angewiesen.

Dachte mir es wäre (relativ) einfach die schon vorhandene HEX Datei auf 
den Chip zu befördern, entweder über den vorhandenen USB Prot und einer 
anderen Software oder direkt über ISP mit Programmer (man müst nur die 
richtigen Pins kontaktieren)

Davor wollte ich aber den vorhandenen Inhalt des Controller sicher, um 
zu verhindern, dass am Schluss gar nix mehr geht ...

von Simon A. (pr0stl)


Lesenswert?

Juhuu.

Immerhin hab ich nun endlich ein Data Sheet (in Englisch :D )

http://www.stcmcu.com/datasheet/stc/STC-AD-PDF/STC12C5A60S2-english.pdf

Alles anderen waren in Chinesisch und darin bin ich leider nicht so 
stark ...

Werd mir den Schinken mal anschauen und schaun, ob ich dabei was versth 
oder rauslesen kann.

von Simon A. (pr0stl)


Lesenswert?

So,

ich dokumentiere hier meinen Fortschirtt, damit auch ein anderer, der 
ein ähnliches Problem hat hoervon was hat.

Ich habe mir jetzt einen STC-ISP Programmer für kleines Geld bestellt. 
Dieser bietet 4 Pins zu Kommunikation:

1. Vcc
2. GND
3. TxD
4. Rxd

Diese sind entsprechend mit dem µC zu verbinden und dann kanns auch 
schon losgehen.
Mit dabei habe ich noch Treiber für den Programmer sowie eine Software 
(alles von der SMC Homepage) und einen Schritt für Schritt Plan für das 
aufspielen einer hex Datei.

Jetzt würde ich nur noch gerne, bevor ich meine hex Datei aufspiele 
versuchen, den aktuellen Speicher auszulesen, da ich befürchte, dass 
sonst der Bootloader oder andere wichtige Teile verloren gehen könnten, 
falls die hex Datei, welche ich habe nur ein Teil von dem ist, was der 
µC braucht ...

Weiß jemand wie ich das machen kann?

von 123 (Gast)


Lesenswert?

Glaubst du die lassen den Kopierschutz offen das so ein unerfahrener 
Bastelheini das Ding auslesen kann!



Und was willst du mit einer Hex File?

So wie du hier fragst hatse Null Ahnung!

123

von 123 (Gast)


Lesenswert?

Dann solche Sätze:

Habe mir xy besorgt - 4 Drähte anschließene - los gehts.

Lachhaft. Wieder so ein Kindergarten ohne Ahnung!

123

von Bonz & Schlonz (Gast)


Lesenswert?

Naja. Es gibt auch heute noch Leute, die steigen in ein Auto, haben Null 
Ahnung von nichts, speziell nicht von Maschinenbau, drehen den 
Zuedschluessel - und ... es geht.

Der Poster is mit einem Geraet unzufrieden, und moechte es neu 
programmieren. Aeh. Ja.

Es gibt Leute, sogenannte Umweltschweine, die sind mit ihrem Auto 
unzufrieden, glauben sie braeuchten noch ein paar Pferde mehr, und 
wollen das Auto umprogrammieren. Aeh. Ja. Und machen das.

... Ich haette mal beim Hersteller angefragt.

von Optimist (Gast)


Lesenswert?

@TO: Was du aus den drei letzten Postings herauslesen kannst: Das 
Flashen von µC ist eine sehr elitäre Sache. Man muss schon eine 
Spezialausbildung in Sachen Elektronik haben, 15 Semester Studium 
einschlägiger Fachgebiete sind wohl das mindeste. Ausserdem geht ohne 
ein richtiges Labor gar nichts. Ein paar Oszis und Spekkis und son Kram 
solltest du schon haben ;)

Spass beiseite, warum sollte das nicht funktionieren? Es sollte doch 
funktionieren das Hex-File wieder so zu brennen wie es ausgelesen wurde? 
Vorausgesetzt du kannst es überhaupt auslesen, aber das siehst du ja 
dann..

von Simon A. (pr0stl)


Lesenswert?

Also,

im die Gemüter wieder ein wenig zu beruhigen. Ich studier zwar keine 
E-Technik und schon gleich gar keine 15 Semester ^^ ... aber ich denke 
mit meinem Wissensstand über µC ist es schon möglich sich mit solchen 
Dingen zu beschäftigen.

Der einzige Kindergarten sind die oberen Posts hier. Dass das nicht 
einfach wird, ist mir doch klar, sonst hätt ich das mit meinem 
Erbsenhirn wohl schon hinbekommen ^^

Wahrscheinlich will die Firma nicht, dass irgend so ein
>unerfahrener Bastelheini
das Ding ausliest und noch viel weniger, dass ein erfahrener Bastelheini 
da irgndwas ausliest!
Aber mit der Einstellung sollte ich nie mehr etwas aufschrauben, was ich 
nicht slebst zusammengeschraubt habe und damit will ich mich nicht 
abfinden!

So da nun wieder genug Zeit draufgegangen ist, auf wertvolle Beiträge 
einzugehen und sich slebst rechtfertigen zu müssen, warum man denn eine 
Frage in einem Forum stellt komme ich zu dem urspüunglichen Anliegen 
zurück:

1. Woran erkenne ich denn, ob der MCU einen Kopierschutz gesetzt hat 
oder nicht?

2. Kann ich rausfinden, wie viel und welche Teile des Speichers 
bereits beschrieben sind, um zu verhindern ausversehen den Bootloader zu 
überschreiben ? (Ich erinnere mich, dass es bei den ATMEL Chips ein 
Haken war, das das Löschen vor dem wieder Beschreiben verhinder hat)

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.