mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik ISP Schnittstelle für einen AT89C51RC2/RD2


Autor: J. Hebeler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo, ich habe einen zum AT89C51RC2/RD2 kompatiblen Flash Speicher.
Diesen will ich jezt über die Serielle Schnittstelle Auslesen und 
Flashen.
Nur finde ich keinen für mich verständlichen Schaltplan dazu.
Es gibt von Atmel zwar ein Evaluations board für diesen IC, nur habe ich 
gerade keine 150€ um mir dieses zu kaufen.
Aus den Datenblättern werde ich nicht schlau, weil die einen die pins 
Miso/Mosi/SCk und die anderen TxD/RxD/RESET erwähnen.
Weiß jemand welche pins ich wie anschließen muss?

Danke im vorraus.

MfG Jochen.

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Hallo, ich habe einen zum AT89C51RC2/RD2 kompatiblen Flash Speicher.

AT89C51xxx ist ein Mikrocontoller. Dazu ist praktisch jeder FLASH 
(extern) kompatibel zu machen. Außerdem hat der auch einen internen 
FLASH, welche u.a. per ISP (Bootloader) seriell über RxD und TxD, 
programmiert wird. Eine bestimmte, zeitliche H-L Kombination an RST und 
PSEN startet den Bootloader.

>... für diesen IC

Um welchen FLASH-IC geht es überhaupt?

Autor: J. Hebeler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also es handelt sich um einen NXP P89CV51RD2
http://www.nxp.com/acrobat_download/datasheets/P89...

Im Datenblat steht das er zu den 89C51xx Kompatibel ist.

Ich will auch nur den internen Flash auslesen und schreiben.

Ich will diesen ja auch sereill über ISP programmieren.
Ich nehme an dazu muss ich TxD und RxD über Wiederstände an TxD und RxD 
der Sereillen schnittstelle hängen?
Nur das mit RESET und PSEN verstehe ich nicht ganz?
Was soll man da machen und wie?

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Was denn nun, Atmel oder NXP?

Für Atmel benutzt man Flip, für NXP Flashmagic.

Die UART muß über nen MAX202 an den PC angeschlossen werden.


Peter

Autor: J. Hebeler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es ist ein NXP... im Datenblatt stand das er zu den 89C51xx kompatibel 
sit und da hab ich die Atmels gefunden.
Also muss ich meinen IC zum Flashen an einen Max232 anschließ und der 
geht dann an die Serielle schnittstelle oder was?

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hier findest Du alles, was zur ISP-Programmierung notwendig ist:
http://www.flashmagictool.com

Speziell hier:
http://www.flashmagictool.com/assets/resources/ISP...

Die Ansteuerung von RST und PSEN kann man auch leicht durch 2 Taster 
realisieren, dann kann RTS und DTR entfallen, was den Adapter 
vereinfacht. Auf keinen Fall den RS232-Pegeltreiber weglassen!

Autor: J. Hebeler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also ich muss einfach 2 Taster gegen GND schalten und an RTS und DTR 
schalten und dann funktioniert das doer wie muss ich das machen?

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Also ich muss einfach 2 Taster gegen GND schalten und an RTS und DTR
>schalten und dann funktioniert das doer wie muss ich das machen?

Du hast es nicht wirklich verstanden...

Also Du musst Dich schon mal mit dem Datenblatt des µC beschäftigen. Da 
steht drin, ob RST H- oder L-aktiv ist. Ist bei div. 8051ern 
unterschiedlich. Ich glaub bei AT89C51RC2 war es H-aktiv.

Dann Taster von RST zu VCC (besser noch 33R in Reihe) und PSEN über 
zweiten Taster zu GND (33R auch hier zu empfehlen).

Zum Start des Bootloaders: Beide Taster gedrückt halten. Dann PSEN 
Taster loslasen, erst kurz danach den RST-Taster loslassen.

Ein fabrikfrischer µC sollte auch sofort mit dem Bootloader starten.

In der Codesammlung findest Du mit Sicherheit Beispielschaltungen. PeDa 
ist der Spezialist hierfür.

Autor: J. Hebeler (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Ich hab mal schnell ein Schaltplan gemacht.
Ist das so richtig oder muss ich etwas ändern?
Das mit dem Taster(rechts im Bild) ist warscheinlcih nicht richtig.

Autor: J. Hebeler (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Also, habe aus meinen fehlern gelernt und den Schaltplan modifiziert.
Der Max238 ist ähnlich wie der Max232 nur mit mehr ein/ausgängen, wie 
auf der Schaltung zu erkennen.
Den 74LS125 habe ich aus der beschreibung zum Flash magictool und dient 
dazu Reset und PSEN über die serielle schnittstelle anzusteuren, da mein 
Adapter Idiotensicher sein muss,
Kann sein das das ein bisschen wirr aussieht, will ich jezt aber nicht 
ändern.
Funktioniert das so oder muss ich etwas ändern.
kritik erwünscht.

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Batterie verpolt.

Der MAX238 kriegt keine VCC/GND ab, dürfte nicht funktionieren. Nimm 
doch einfach die Standardbeschaltung aus dem Datenblatt.

µC VCC/GND bestimmt vertauscht? Pin 44 meist VCC, 22 = GND. Dann muß 
wenigsten der Quarz mit den 2 C dran sein (µC arbeitet dynamisch!) und 
der EA-Pin auf VCC liegen.

Hier ein ähnlicher Adapter, zwar für USB, aber Prinzip:
http://www.mikrocontroller.net/wikifiles/5/58/USBP...

C? für RST mit 10u recht groß, bringt möglicherweise das Timing beim 
Bootloaderstart durcheinander, besser noch ein R100 in Reihe.

Autor: J. Hebeler (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Gut, habe das ganze nochmal geändert, habe auch deine änderungen 
berücksichtigt.
Aber ich weiß nciht ganz ob das mit DTR funktioniert(Rs-232 Pin4 <-> 
Max232 Pin 7).

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Aber ich weiß nciht ganz ob das mit DTR funktioniert(Rs-232 Pin4 <->
>Max232 Pin 7).

Das geht so nicht.

Warum machst Du es Dir für den Anfang so schwer, nimm doch einfach die 2 
Taster-Variante. Dann reicht auch der normale MAX232 aus.

Quarz und EA-Pin Beschaltung fehlt nach wie vor.

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nachtrag:
http://www.elektronik-bastelecke.de/C51_Hardware_C...
Auf Seite 3 ist eine Lösung mit Transitoren und Tastern.

Autor: J. Hebeler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich mache es mir so schwer, da das ganze Idiotensicher sein muss.
Wenn man bei jedem Vorgang erst in einer Bestimmten reinfolge die taster 
Drücken und wieder loslassen muss, dann ist das Umständlich und 
fehleranfällig.
Da gebe ich dann lieber 1€ mehr aus und habe etwas einfacheres in der 
Handhabung.
Schaltung aus der flashmagictool website, ungefähr halt. Hast du glaube 
ich gepostet.
Dort wird kein Quarz erwänt, auch im Datenblatt des ICs wird er nciht 
erwähnt.

Was für ein Quarz sollte das denn sein? 16MHZ, 8MHZ?

Autor: Stephan Henning (stephan-)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
suche hier mal nach Auto-ISP

Autor: Pieter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
moin moin,

@Stephan

Auto-ISP..hau nicht solche Schlagworte raus ;-).

Wie soll der MC ohne Quarz arbeiten und eine Baudrate erkennen?
Halbe Schaltungen funktionieren nun mal nicht.
Auto-ISP setzt eine SW voraus, die das Unterstüzt. Mit 2 Tastern kann 
sogar mit Hyperterminal der Upload erfolgen.

mfg
Pieter

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Wenn man bei jedem Vorgang erst in einer Bestimmten reinfolge die taster
>Drücken und wieder loslassen muss, dann ist das Umständlich und
>fehleranfällig.

Die 2-Tastervariante ist für mich immernoch die einfachste. Es war 
bisher kein Problem damit umzugehen, das Timing ist unkritisch und die 
ständige Handgymnastik ist auch nicht schlecht;-)

>Dort wird kein Quarz erwänt, auch im Datenblatt des ICs wird er nciht
>erwähnt.

Ohne Quarz geht es garantiert nicht.

Autor: J. Hebeler (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
So, EA-Pin an VCC nageschlossen, Quarz hinzugefügt.
DTR habe ich über einen zweiten Max232 angeschlossen. Das mag zwar 
umständlich sein, aber man muss berücksichtigen, das ich die Shcaltung 
auhc selber bauen muss und ich kein Geld für einen 4€ IC habe.

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sieh Dir die gesamte Quarzbeschaltung nochmal genauer an, wird so nicht 
funktionieren....

Autor: J. Hebeler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Achso, muss ja müssen ja nur schnell die Kondensatoren anderst Plaziert 
werden.
Ist sonst das mit der Ansteuerung der Serielen schnittstelle in Ordnung, 
oder muss da was geändert werden?

Autor: Pieter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
moin moin,

den 2. MAX brauchst Du nicht, einfach Transi mit R+Schutzdiode, das 
reicht für DTR.

mfg
Pieter

Autor: J. Hebeler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also R sowas mit 4,7Kohm, Diode , geht da ne 1N4007 oder ne LED? aber 
was meinst du mit Transi?

Autor: J. Hebeler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sry, hab nicht geschaltet. Was für ein Transistor soll das denn sein.
Hab hier noch BC 547C und BC 548C.
Ich nehme mal an der BC 547 wirds tun.

Autor: J. Hebeler (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Eine frage habe ich noch.
Mit HIGH LOGIC STATE auf einen Input pin wird ein 5V pegel gemeint, 
oder?

Autor: wisdanoobie (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
dem ist korrekt... kann aber auch sein dass dein IC mit 3,3V arbeitet 
das weis ich nicht is bei manchen ICs so kannste aber ganz leicht 
umgehen indem du 2 1N4148 Dioden in reihe an 5V knallst dürften dann so 
3,6V sein das müssste passen aber miss lieber nach

Autor: J. Hebeler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also, er abritet mit 5V.
So hab jezt die schaltung gebaut.
Alles genau überprüft, Strohm angeschlossen und mit Compuiter über Com 
verbunden.
Flashmagic gestartet, Com-Port richitg eingestelt, Baudrate auf 9600 und 
dann mla Testweise auf ISP->Read memory.
Aber er meldet mir immer eine fehlermeldung beim verbidnen mit dem IC:

>>Unable to connect at the specified baud rate. Try reducing the baud rate. 
>>Reset the hardware into ISP mode again.

Aber wieso?
Transistor und Diode sind richitg, alles korrekt angeschlossen, Strohm 
liegt überall an, Keine Wackelkontakte oder Kaltlötstellen.

Danke für Hilfe.

Autor: Pieter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
moin moin,

sehe ich da eine 8MHz Quarz???

Damit wird es nichts!
Nimm einfach einen 11,0592Mhz Quarz, das ist eine Standardfrequenz für 
8051.

...Strohm, was ist das?

mfg
Pieter

Autor: Daniel P. (daniel86)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Strom kann auch net anliegen, sondern nur fließen. Jetzt wäre ja die 
Frage ich welche Richtung, von + nach - oder von - nach +.
Das einzige was anliegt ist Spannung

Autor: J. Hebeler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ok, dann spannung. Diese fließt von + nach - mit 5V.

Was passiert wenn man den CV51 mit einem 16MHZ Quarz betriebt?

Autor: J. Hebeler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also, ISP funktioniert jezt, mit 16MHz Quarz.
Der LS125 hat ein wenig Rumgezickt und hat so den ISP-Reset nciht 
ausgeführt.

Autor: Pieter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
moin moin,

schön wenn es nun (endlich) funktioniert.

>>der LS125 hat rumgezickt...

naja, soll keine Mecker sein, ich kenne keine Schaltung für AutoISP die 
den verwendet, 2 Transis sollten als Ersatz reichen -> geht in Richtung 
Schaltungsminimierung.

MfG
Pieter

Autor: J. Hebeler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
JA, iregdnwas hat mit den Pegel an einem eingang nicht gestimmt, ist 
hezt aber gelöst.
Ich habe jezt folgendes problem:
Ich will den IC auslesen, weil ncoh Daten drinn sind, aber Security Bit 
2 ist gesetzt. Wie kann ihc jezt das Bit wieder unsetten ohne die Daten 
zu beschädigen oder zu löschen?
Muss ich einfach nur im Löschen einstellung nichts aktivieren und strat 
drücken?

Autor: J. Hebeler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kann mir jemand bei meinem Problem helfen?
wie scahffe ich es die Lese Sperre zu umgehen?
Welche Page muss ich löschen?

Zur Info: Ich habe das recht den Inhalt auszulesen, nur falls ihr denkt 
ich will hier was illegales machen.

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
J. Hebeler schrieb:
> Zur Info: Ich habe das recht den Inhalt auszulesen

Ob Du das Recht hast, ist egal, es geht trotzdem nicht.
Warum sollte NXP eine Umgehung eingebaut haben, dann hätten sie sich ja 
das Bit gleich schenken können.

Es gibt aber "Firmen", die machen sowas (>1000,-€).
Ist natürlich nicht offengelegt, wie.


Peter

Autor: J. Hebeler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
mhmm 1000€....
Nagut, ist nicht schlimm.

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.