Mikrocontrollerplatine programmieren?

Gast #1602836
Lesenswert?

Hallo,

ich habe nach Aufraumarbeiten meiner Räumlichkeiten meine alte 
Mikrocontrollerplatine wiedergefunden. In der Schule habe ich daran z. 
B. eine Ampelsteuerung oder einen Taschenrechner programmiert. Es wäre 
nun schön, wenn ich diese Platine (siehe Anhang) wieder programmierbar 
machen könnte.

Da meine Schulzeit schon einige Jahre zurückliegt und ich mit 
Mikrocontrollern seitdem nicht wirklich etwas getan habe, bin ich wieder 
totaler Anfänger auf dem Gebiet. Ich bin jedoch lernfähig. Daher freue 
ich mich, wenn ihr mir verraten könntet, wie ich meine Platine wieder 
programmieren kann? Oder ist dies überhaupt nicht möglich?

Freue mich über Antworten.

Gruß,
Angehängte Dateien:
Gast #1602891
Lesenswert?

Eine Google-Recherche habe ich bereits gestartet. Aber bisher ohne 
richitgen Erfolg. Wenn ich "9363" und "8051" eingebe, kommen Ergebnisse, 
wo ich das Bauteil kaufen kann. Naja, ...
Also, wie könnte ich herausfinden, ob und wie ich meine Platine 
programmieren kann?
Gast #1602904
Lesenswert?

Danke für den Hinweise mit dem Buch.
Ist auch die Sache mit dem Emulator erklärt?

Also, ich verbinde die Platine mit dem RS232-Anschlusskabel, dann über 
einen Adapter seriell-USB schließe ich die Platine an den PC. 
Desweiteren verbinde ich die Platine mit 12V-Netzteil. So dann brauche 
ich doch ein Programm. Keil oder AVR? Wie funktioniert dann das mit dem 
Emulator?
Gast #1602909
Lesenswert?

>Wenn ich "9363" und "8051" eingebe, kommen Ergebnisse,
>wo ich das Bauteil kaufen kann. Naja, ...

9363 ist ja nur die ELV-Nr. für das Eprom, in dem das Programm 
drinsteckt.

Die genaue Bezeichnung des µC müsstest Du ja ablesen können.
Dürfte ein ganz normaler 80C31 sein.
#1602925
Lesenswert?

Wahrscheinlich brauchst Du zum programmieren ein spezielles Programm von 
ELV. Es ist vermutlich auf dem Eprom ein serieller Bootloader drauf, da 
auch eine COM auf dem Board ist.

Wenn Du den nicht mehr hast, wird es schwer. Das macht man heute auch 
nicht mehr so.

Aber es gibt Alternativen:

Versuch einen pinkompatiblen 8051 Mikrocontroller zu finden, welcher 
bereits einen internen Flash und UART-Bootloader hat. Gibts zB. von 
Atmel und NXP. Die haben dann auch die entsprechende Programmiersoftware 
(kostenlos) FlashMagic/NXP und Flip/Atmel.

Typen eventuell: Atmel AT89C51RB2/RC2/RD2
http://www.atmel.com/dyn/products/devices_mcu.asp?family_id=604

Zu Wegschmeisen wär das System zu schade.
Gast #1602927
Lesenswert?

Nix AVR. 8031/8051. Assembler (ASM51, AS, SBASM), C (SDCC) oder Pascal 
(Turbo51). Keil geht in die richtige Richtung. Von denen gibt es das 
Monitorprogramm (http://www.keil.com/c51/mon51.asp), eine Alternative 
wöre dieses: http://www.pjrc.com/tech/8051/paulmon2.html

Das muß einmalig in einen leeren EPROM programmiert werden. Mit einer 
Adapterplatine an dem großen Pfostenstecker, auf der ein S-RAM sitzt 
(wie im Buch beschrieben), kann man dann tatsächlich über die serielle 
Schnittstelle programme laden.
Gast #1602973
Lesenswert?

Hallo Matthias,

danke für Deine Antwort. Wegschmeißen wollte ich auch eigentlich nicht, 
ich möchte versuchen, dass Ganze wieder in Gang zu setzen.

Ich habe die Datenblätter gesucht und gefunden. Wenn ich die 
Pinbelegungen des vorhandenen µC und des AT89C51RB2 vergleiche, sehe ich 
keinen Unterschied. Wenn ich mir diesen µC besorge und austausche mit 
dem alten, kann ich dann bereits über AVR Studio und Flip/Atmel die 
Platine programmieren (wie damals)?

Gruß,
Angehängte Dateien:
#1603012
Lesenswert?

Ich habe bei reichelt diesen gefunden...
http://www.reichelt.de....

Nein, der hat keinen interen Bootloader.

Nimm den den AT89C51RB2, den peda auch empfiehlt.

Etwas gibt es beim Austausch schon zu beachten (Hast Du den Schaltplan 
vom µC-Teil?):

RESET-Pin und PSEN-Pin Beschaltung. Ggf. musst dort was modifizieren.

Hier ist eine Bsp.-Schaltung beschrieben.
Beitrag "8051 Entwicklungsboard"

Über den PSEN Jumper im Zusammenspiel mit der RESET-Taste wird der 
interne Bootloader gestartet.
Gast #1603034
Lesenswert?

Matthias K. schrieb:
> Hast Du den Schaltplan
> vom µC-Teil?

Ich habe den Schaltplan in einem beigelegtem Heft gefunden. Der EA-Pin 
liegt jetzt auf Masse, den muss ich also auf VCC legen (brücken), soweit 
richtig?
Müssen weitere Modifizierungen gemacht werden?

Im Moment mache ich folgendes:
- 8031 raus (klar)
- EPROM ELV9363 raus (klar)
- Latch raus (Was ist das?)
- AT89C51RB2-3CSIM rein
- EA-Pin auf Masse legen

(anschließend)
- Platine mit 12V-Netzteil verbinden
- RS232 mit seriellem Kabel und mit seriell-USB an Rechner anschließen

Gruß,
#1603089
Lesenswert?

Anfänger schrieb:
> Ich habe den Schaltplan in einem beigelegtem Heft gefunden. Der EA-Pin
> liegt jetzt auf Masse, den muss ich also auf VCC legen (brücken), soweit
> richtig?
> Müssen weitere Modifizierungen gemacht werden?
> Im Moment mache ich folgendes:
> - 8031 raus (klar)
> - EPROM ELV9363 raus (klar)
> - Latch raus (Was ist das?)
> - AT89C51RB2-3CSIM rein
> - EA-Pin auf Masse legen

RESET-Beschaltung ist so schon ok
EA-Pin auf VCC (nicht auf GND!) legen
PSEN-PIN über Jumper (besser Taster) zu GND. Man sollte noch einen R von 
ca. 27 Ohm zur Vorsicht in Reihe schalten.
Gast #1603093
Lesenswert?

Hallo,

nur zur Ergänzung: Habe auf diesem Board in den 90ern auch viel 
geproggt, allerdings mit einem Eprom-Simulator. Gab's auch mal bei ELV, 
da konnte man dann ohne EPROM-Brennen das hex-File direkt über 
PC-Software uploaden. War vor den Flash-Controllern eine flotte Sache.

Nur mal so als Alternative zum Flash-Controller. Letzteres halte ich 
aber auch für die bessere Lösung.

Gruß
Gunb
Gast #1603107
Lesenswert?

Matthias K. schrieb:
> PSEN-PIN über Jumper (besser Taster) zu GND. Man sollte noch einen R von
> ca. 27 Ohm zur Vorsicht in Reihe schalten.

Wenn ich die Pin-Belegungen der beiden µC vergleiche sehe ich bei PSEN 
keinen Unterschied. PSEN ist bei beiden auf Pin 29 und beidesmal 
negiert. Bei EA war der Unterschied zu sehen, daher muss ich da wohl 
eine Brücke einlöten und die GND-Verbindung, die jetzt besteht, trennen.
Muss ich dennoch einen Taster dazwischen einbauen samt R?

Wenn alles hardwaremäßig aufgebaut ist, welche Softwaretools brauche ich 
denn dann zum programmieren?

Gruß,
#1603128
Lesenswert?

Anfänger schrieb:
> Wenn ich die Pin-Belegungen der beiden µC vergleiche sehe ich bei PSEN
> keinen Unterschied. PSEN ist bei beiden auf Pin 29 und beidesmal
> negiert. Bei EA war der Unterschied zu sehen, daher muss ich da wohl
> eine Brücke einlöten und die GND-Verbindung, die jetzt besteht, trennen.
> Muss ich dennoch einen Taster dazwischen einbauen samt R?

EA muss unbedingt an VCC, sonst will der µC auf den exteren Speicher 
zugreifen und nicht auf seinen interen FLASH!

Der Jumper/Taster an PSEN hat die Funktion, den internen Bootloader zu 
starten. Es ist so: Eine fabrikneuer µC dieser Baureihe startet nach 
RESET sofort den Bootloader. Wenn Du ihn aber einmal mit Deinem Programm 
programmiert hast, startet normalerweise nach RESET Dein Programm.

Um wieder in den Bootloader zu kommen (um Dein Programm erneut 
aufzuspielen) kommt der PSEN-Jumper zum Einsatz.

Dazu RESET-Taste drücken und PSEN auf GND ziehen und nun RESET 
loslassen, während PSEN noch eine kurze Zeit länger auf GND bleibt. Dann 
PSEN-Jumper öffnen. Nun ist der Bootloader aktiv. Dafür macht sich an 
PSEN ein Taster am besten.

> Wenn alles hardwaremäßig aufgebaut ist, welche Softwaretools brauche ich
> denn dann zum programmieren?

FLIP
http://www.atmel.com/dyn/products/tools_card.asp?tool_id=3886
Gast #1603217
Lesenswert?

Matthias K. schrieb:
> FLIP
> http://www.atmel.com/dyn/products/tools_card.asp?t...

Ich habe mir diesen Flip heruntergeladen. In AVR Studio 4 porgrammiere 
ich einen C-Code und dann spiele ich diesen mit Flip auf meine Platine, 
richtig?

Ich habe den im Bild programmierten Code mal geschrieben (jede zweite 
LED ein), dann wollte ich builden (F7), aber es kam folgender Fehler.
Wie mache ich dann weiter und wie behebe ich den Fehler?
Angehängte Dateien:
#1603262
Lesenswert?

Nimm zur Softwareentwicklung:

SDCC (kostenloser C-Compiler für 8051 ohne Einschränkungen):
http://sdcc.sourceforge.net

und als IDE:
http://www.opcube.com/home.html#MIDE51

Es gibt noch jede Menge andere C-Systeme, die in der Regel Geld kosten. 
Manche gibts als Demoversion, die aber nur wenige kbyte Code erzeugen 
können und so manche weitere Einschränkung haben.
zB.
http://www.keil.com
http://www.wickenhaeuser.de
Gast #1603293
Lesenswert?

Ich habe Keil 3 gewählt, da ich auch früher in der Schule mit Keil 
gearbeitet habe.

Wenn ich ein Testprogramm schreibe und dieses builde, wird eine Hexfile 
erstellt. In Flip kann ich dann diese Hexfile öffnen (Open Hexfile), 
oder?
Gast #1603400
Lesenswert?

>Ich habe Keil 3 gewählt, da ich auch früher in der Schule mit Keil
>gearbeitet habe.

Wenn ich an das (Hoch)schulzeug denke, bin ich froh zuhause, bzw. hier 
in der Firma zeitgemäßes Zeug zu haben...
Gast #1610925
Lesenswert?

Hallo,

heute kam der neue Mikrocontroller.
Ich habe den alten µC, das Latch und das EPROM entfernt, dann den neuen 
µC draufgesetzt. Zusätzlich habe ich vorher noch den EA-Pin (Pin31) mit 
VCC verbunden und mit Masse getrennt und beim PSEN-Pin (Pin 29) habe ich 
einen Jumper eingefügt.
Dann habe ich die Platine an den PC angeschlossen. Der Treiber für den 
Seriell-USB-Adapter war schnell installiert.
Ich habe in Keil ein kleiner Programm geschrieben, dann compiliert und 
eine hex-Datei erstellen lassen. Kein Problem soweit. Wenn ich nun in 
Flip eine Hex-Datei laden möchte, kommt der Fehler, der in dem zweiten 
angehängten Bild zu sehen ist. Habe ich noch irgendetwas falsch gemacht? 
Wie muss es funktionieren?
Freue mich auf Eure Antworten.

Gruß,
Angehängte Dateien:
Gast #1611699
Lesenswert?

Hallo,

der Adapter wird nur erkannt (COM3). Ob die Platine dahinter hängt oder 
nicht, ist egal. Wenn ich das System so lasse eine Weile, dann wird der 
Kühlkörper serh warm (heiß).
Ich werde noch ein wenig nachforschen...
Wenn Dir was einfällt, was falsch sein kann, bitte melden...

Gruß,
#1611769
Lesenswert?

Hallo Anfänger!
Wenn ich dein Bild so betrachte, fällt mir folgendes ein: sind auf der 
blauen Platte irgendwelche Bauteile oder Leiterbahnen, die mit deiner 
Schaltung verbunden sind? Die liegt nämlich direkt auf einem (sich 
statisch aufladendem) Teppichboden, was für manche Bauteile nicht 
unbedingt gut ist. Ein Holzbrett untergelegt wirkt Wunder!

Servus,
Helmut.
Gast #1611960
Lesenswert?

Hallo,

nein, nein, auf der blauen Platte sind keine Leiterbahnen oder 
dergleichen etwas. Ich habe meine Platine nur auf eine Sperrholzplatte 
geschraubt (mit Abstandshaltern) und diese dann blau lackiert.

Habe ich bei meinem Vorgehen sonst irgendetwas falsch gemacht...???

Achso, die Sachen aus der Schule, die ich programmiert habe, habe ich 
leider nicht mehr. Ist auch schon ein Weilchen her...

Gruß,
Gast #1612378
Lesenswert?

Matthias K. schrieb:
> Kannst Du denn jetzt das Hexfile ohne Fehler erstmal von der Festplatte
> in Flip laden?

Nein, es kommt immer die Fehlermeldung "Cannot open file". Ich schreibe 
mein Programm in Keil, drücke F7 zum builden (klappt ohne Warnings und 
Errors), dann öffnet sich automatisch Flip und ich  versuche die 
erzeugte hexfile zu laden. Dann kommt die o. g. Meldung. Aus 
Ausprobieren habe ich erkannt, dass die gleiche Meldung kommt, egal ob 
Platine dran hängt oder nicht.

Weißt Du Rat?

Gruß,
#1612386
Lesenswert?

Anfänger schrieb:

> Ausprobieren habe ich erkannt, dass die gleiche Meldung kommt, egal ob
> Platine dran hängt oder nicht.

KLar.
Flip will erst mal nur das HEX File laden. Du gehts noch gar nicht um 
das Progrmmieren an sich, sondern das Flip das, was programmiert werden 
soll, schon mal nicht einlesen kann.

> Weißt Du Rat?

Kontrollieren:
Gibt es ein HEX File mit diesem Namen?
Ist es am richtigen Verzeichnis?
Auch wenn das heutzutage kein Thema mehr sein sollte: Mit Sonderzeichen
   wie ä ö ü ß µ im Pfadnamen hat sich schon so mancher Anwender selbst
   in den Fuss geschossen
#1612389
Lesenswert?

Anfänger schrieb:
> Achso, ist eigentlich normal, dass der Kühlkörper extrem heiß wird??

Extrem heiß ist nie normal.
Etwas warm ist ok, aber wenn du dir die Finger verbrennst ist das 
definitiv zu viel.

Stromaufnahme messen. Zusatzplatinen erst mal nicht anschliessen. Nach 
Kurzschlüssen Ausschau halten.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren