Hi ich habe hier einen Philips P89C51UBP N Microcontroller, und wollt mal Fragen mit was man den Programmiert ? Flashmagic unterstüzt den leider nicht :/ Hab den aus einen alten 5.1 System geschlachtet. Gruss Matze
The 'U suffix Philips x51 is NOT in-system programmable such as the 'RDx suffix ones, so you can't use FlashMagic nor anything other simple means. You would need a really expensive parallel programmer such as http://www.elnec.com/products/specialized-programmers/t51prog2/ - and there's absolutely no reason to buy that just for one obsolete chip. JW
So ich grab jetzt noch mal meinen alten Thread aus. Ich hab den CHIP immer noch rumliegen. Mittlerweile hab ich rausgefunden das man über den EA Pin wohl anscheinend bei MCS-51 Controllern den internen ROM deaktiveren kann, so das man externen Speicher nutzen kann. Ob das auch mit den Philips geht ist mir nicht ganz klar, auf jedenfall hat er ja den EA Pin auch. Also pack ich den auf Masse und kann Software aus einen EPROM laden ?
Du brauchst noch ein Adresslatch, man nimmt normalerweise einen 74HC374 oder 74HC574, der mit dem ALE Signal gelatcht wird. Die Ausgänge liefern dann A0-A7 fürs EPROM. matze schrieb: > Also pack ich den auf Masse und kann Software aus einen EPROM laden ? EA heisst external access und ist genau das. Das Programm wird direkt aus dem EPROM abgearbeitet, nicht etwa in den MC runtergeladen.
Super, das müsste dann auch mit den P80C51BH gehen von Intel, die sind Maskenprogrammiert. Das heisst die sind dann doch nicht so nutzlos. Bisher schmorren die beachtungslos in einer kleinen Schachtel. Danke Matze
matze schrieb: > das müsste dann auch mit den P80C51BH gehen von Intel, Wenn das Ding einen /EA Pin hat, dann geht das. Bei mir laufen alle alten 8051er, die ich in der Hand hatte, mit externem EEPROM/RAM/Flash (je nach Bedarf). Egal op Philips, Intel, Siemens draufsteht. Suche halt man nach 8051er Schaltplänen. Das Netz ist voll davon! Schwierig sind nur manche Atmel Flash-8051, hier ist z.T. EA ab Werk durch eine Fuse gesperrt, und diese kann nicht per ISP gelöscht werden. Hier benötigt man ein Programmiergerät ("parallel Programmer"). Nutzlos sind alte 8051er nie.
Na so ein Flashrom wird 10Mhz schon mit machen, und die alten Cache RAMs machen ja auch 33Mhz mit.
Matze schrieb: > Na so ein Flashrom wird 10Mhz schon mit machen, und die alten Cache RAMs > machen ja auch 33Mhz mit. Keine Sorge. Bei diesen MC wird der Oszillator erstmal durch 12 geteilt, um die internen Maschinenzyklen zu erzeugen, so das der eigentliche Bustakt nur noch Osc/12 ist. Die P89C5X Serie kann man lt. Datenblatt bis 33 Mhz takten, so das ein effektiver Bustakt von etwa 2,75 Mhz herauskommt - die Zugriffzeit des Eprom ist also irgendwas um die ~360ns. So langsame Speicher gibts heute gar nicht mehr, du bist mit jedem EPROM auf der sicheren Seite. JoergL schrieb: > Nutzlos sind alte 8051er nie. Naja, mir wurde das mit dem Aufkommen der 89S5X Serie mit internem Flash schnell zuviel. EPROM brennen, das Adresslatch, EPROM Sockel etc. Ausserdem verlierst du ja durch das EPROM anderthalb Ports. Als Ersatz für so einen MCS51 würde ich heute vermutlich sogar einen Mega8515 oder 8535 nehmen, weil die einfach viel flotter sind. Gut, es gab von Winbond und TI die WARP Architektur, die dann mit Fosc arbeiten, aber da brauchst du wieder spezielle Tools zum Flashen.
:
Bearbeitet durch User
Naja wenn man alles in der Bastelkiste hat und als Hobby taugts schon noch :) Und es gibt ja noch den 8255 für den Fall der Fälle. So ist für I/O gesorgt.
matze schrieb: > Naja wenn man alles in der Bastelkiste hat und als Hobby taugts schon > noch :) Das ist wahr. Vor allem in Assembler hat mich MCS51 immer fasziniert, ich habe selten einen logischeren und durchdachteren Befehlssatz gesehen und sehr viel gelernt. Die 4 Registersätze waren bei Interrupts prima und auch die Speicherstruktur hat mir sehr gefallen. Viele Projekte habe ich mit einem kleinen Entwicklungsplatinchen mit 8k EPROM gemacht, wo ein Monitorprogramm drin war und ein 8k StaticRAM, in dem man Testsoftware laufen lassen konnte. Das Zeug wurde im RAM getestet, bis es richtig lief und dann zum Schluss ins Zielsystem gebrannt. Den Monitor kann ich gerne mal posten, ist aber alles in Assembler. Edit: Wenn du es bequem haben willst, schau mal nach 'MIDE 51', das ist eine nette IDE rund um den MCS51.
:
Bearbeitet durch User
Es wird sogar im allgemeinen davon ausgegangen dass als 8031/8032 verkaufte Chips idR maskenprogrammierte 8051/8052 mit unbrauchbarem ROM-Inhalt sind.
Andy D. schrieb: > Es wird sogar im allgemeinen davon ausgegangen dass als 8031/8032 > verkaufte Chips idR maskenprogrammierte 8051/8052 mit unbrauchbarem > ROM-Inhalt sind. Das war schon bei den 8039 so. Leider lässt es sich heutzutage schwerer beweisen, da die MCS-51 einen Ausleseschutz haben. Bei den ROM-losen MCS-48 und UPI-42 war es immer interessant zu sehen, was da für eine Software drin ist. Meist hat man trotz des kleinen Speichers noch eine Copyright-Meldung oder sowas gefunden.
> Den Monitor kann ich gerne mal posten, ist aber alles in Assembler.
Au jaaa.
> Du brauchst noch ein Adresslatch, man nimmt normalerweise einen 74HC374 > oder 74HC574, der mit dem ALE Signal gelatcht wird. Die Ausgänge liefern > dann A0-A7 fürs EPROM. Es gibt auch EPROMs mit integriertem Latch. Vermutlich extra fuer den 8051...
Matthias Sch. schrieb: > Du brauchst noch ein Adresslatch, man nimmt normalerweise einen 74HC374 > oder 74HC574 Eher den 74xx573, wie auch bei anderen Intel 8-Bittern. In einem System mit Zilog Z8671 sah ich den 74xx574 als Adreßmultiplexer. Im Grunde ist dort nur das Latch-Signal invertiert, tut aber die gleiche Funktion.
Es gibt doch auch Basic dafür, Basic52 z.B. Irgendwo gabs auch mal einen Patch damit man seine Programme in einen eeprom legen kann.
@matze das bräuchte man wahrscheinlich gar nicht patchen - wenn man aber BASIC-Programme im selben EPROM haben will wie den Interpreter muss man etwas zusätzlichen Schaltungsaufwand betreiben...
Nonsens schrieb: > Matthias Sch. schrieb: > >> Du brauchst noch ein Adresslatch, man nimmt normalerweise einen 74HC374 >> oder 74HC574 > > Eher den 74xx573, wie auch bei anderen Intel 8-Bittern. Es gehen beide. (bzw. alle 4, wenn man sich mit der Pinbelegung anfreundet). ALE ist so ausgelegt, das sowohl die Latches des 373/573 als auch die Flipflops des 374/574 die Adresse speichern, wenn die Flanke ansteigt, bzw auf high liegt. ... schrieb: > Es gibt auch EPROMs mit integriertem Latch. Gibts die noch? Wage ich ja zu bezweifeln. Selbst wenn, muss man erstmal einen passenden Brenner finden - wir schreiben 2014. Fürs AH52 Basic wäre aber ein Flash a là AT89S52 am sinnvollsten, weil im externen RAM dann die Programme liegen. Intel schlug mal eine Batteriepufferung für XRAM vor, damit die Programme drin bleiben.
Matthias Sch. schrieb: > ... schrieb: >> Es gibt auch EPROMs mit integriertem Latch. > > Gibts die noch? Wage ich ja zu bezweifeln. Davon hatte ich auch einige. Hießen statt 27C256 dann 87C256.
soul eye schrieb: > Leider lässt es sich heutzutage schwerer > beweisen, da die MCS-51 einen Ausleseschutz haben. Ich hatte mal einige 8031 in den Prommer gesteckt und konnte dann Code auslesen, d.h. gültige 8051-Befehle.
JoergL schrieb: > Schwierig sind nur manche Atmel Flash-8051, hier ist z.T. EA ab Werk > durch eine Fuse gesperrt, und diese kann nicht per ISP gelöscht werden. Welche sollen das sein? Sind die Lockbits gesetzt, wird EA beim Reset gelatcht. D.h. man kann nicht während der Laufzeit EA umschalten, um den internen Code auszulesen.
Matthias Sch. schrieb: > Nonsens schrieb: >> Matthias Sch. schrieb: >> >>> Du brauchst noch ein Adresslatch, man nimmt normalerweise einen 74HC374 >>> oder 74HC574 >> >> Eher den 74xx573, wie auch bei anderen Intel 8-Bittern. > > Es gehen beide. (bzw. alle 4, wenn man sich mit der Pinbelegung > anfreundet). ALE ist so ausgelegt, das sowohl die Latches des 373/573 > als auch die Flipflops des 374/574 die Adresse speichern, wenn die > Flanke ansteigt, bzw auf high liegt. Dann habe ich definitiv 8051-er, bei denen ein 74xx574 nicht funktioniert, weil ich es schon mal testete. Als da wären: Original 80C32 von Intel aus dem Jahr 1993, und auch der Siemens SAB80C515A. Ein 573 latcht bei Low-Pegel am Pin 11, ein 574 bei steigender Flanke am Pin 11. Glücklicherweise sind aber soweit beide identisch von der Pinbelegung. ALE am 8051 heißt auch Adress Latch Enable, also gib wieder frei, mache transparent. Die steigende Flanke für den 574 käme sehr spät, wenn das EPROM schon längst die Daten auf den Bus legen soll, man beachte auch die Diagramme und die dazu angegebenen Timings im Datenblatt. Man bringt also das arme EPROM in arge Zeitnot. Bei sehr geringer Taktfrequenz würde es evtl. gehen, aber Quarztakt unter 3,5MHz ist wegen des dynamischen Designs von alten 8051 ja nicht erlaubt. In einer I/O-Erweiterungsschaltung am Bus an einem meiner Selbstbauschaltungen funktionieren hingegen 573 oder 574, da ist es völlig egal, so lange man das Clock-Signal im Ruhezustand immer auf Low läßt.
Nonsens schrieb: > Die steigende Flanke für den 574 käme sehr spät, wenn das EPROM schon > längst die Daten auf den Bus legen soll, man beachte auch die Diagramme > und die dazu angegebenen Timings im Datenblatt. Ja hast recht, ich hab gerade nochmal das Timing angesehen. Ein 574/374 würde nur korrekt gehen, wenn man ALE invertiert, ist aber Quatsch und zuviel Aufwand. Also wirklich nur den 373/573 nehmen.
:
Bearbeitet durch User
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.