Hallo zusammen, ich möchte für eine Anwendung den 80C515C einsetzen. Soweit konnte ich bereits einiges an Erfahrungen sammeln, nur bekomme ich den Bootloader nicht ans laufen... ich möchte den loader in den OTP-Bereich des Prozessors schreiben und durch umschalten des EA-Bits den externen Programmspeicher nutzen. Der Loader soll nun eigendlich: Nach dem Reset eine 055H an den PC über SCON senden. Danach soll der PC Byte für Byte senden und der MC schreibt die Daten ins EEProm... Hat jemand von euch soetwas bereits fertig gebacht? MfG Sebastian
Warum muß es denn unbedingt ein 80C515 sein ? Sind die nicht schon abgekündigt ? Das Programm Entwickeln für einen OTP ist definitiv keine leichte Sache und erfordert einen großen Mülleimer (da ja OTP). Was gefällt Dir denn an den Atmels/Philips (z.B. AT89C51CC01) mit internem Flash und Bootloader nicht ? Einfacher und bequemer gehts doch nun wirklich nicht. Peter
Ich möchte den 515 nehmen, gerade weil er abgekündigt ist. Er steht mir "Haufenweise zur verfügung. Nun dieser "blöder" Loader muß laufen, ansonsten finde ich das gute Stück recht ok. Mit dem Nutzen des OTPs habe ich ansonsten garkeine Erfahrung. Ich habe bisher einen 80c517A verwendet. Für den habe ich mich mal an die erstellung eines Bootloaders gemacht. Der läuft auch, nur halt nicht auf dem 515???
Hallo, wie sieht deine Beschaltung aus? Du mußt die Signale PSEN und WR verküpfen. Ein EEPROM braucht Zeit um ein Byte zu speichern bzw. einen extra Impuls. Was ist bei deinem Design für den 817 anders als beim 815? Falls du beim 817 zwei Datenpointer benutzt, das sollte nicht so schwierig sein die Software auf einen Datenpointer umzuschreiben. Gib meht Infos. Gruß Manfred
@Sebastian "Der läuft auch, nur halt nicht auf dem 515???" Wenn Du den 517 Bootloader wirklich selber geschrieben hast, sollte es doch überhaupt kein Problem sein. Hast Du denn mal die Datenblätter verglichen ? Vielleicht mag der 80C515 ja das Umschalten des EA nicht. Ich habe auch mal sowas gemacht, allerdings mit einem OTP, der nur 32kB hat. Damit beim Umschalten des EA kein Mist passiert, habe ich die Umschaltroutine ans Ende des Flash gelegt, also über die internen 32kB. Damit wird in jedem Fall der Flash ausgeführt und der EA-Pin kann gefahrlos wechseln, ohne das der nächste Befehl falsch gelesen wird und der MC abstürzt. @Manfred, PSEN und WR verknüpfen ist Quatsch. /WR gehört an /WE des Flash und PSEN gehört an /OE des Flash. Peter
Der C515C ist meines Wissens nach nicht abgekuendigt (andere Technologie als die abgekuendigten 80C515 (ohne C hinten). Allerdings gibts es entweder einen 80C515 (ROM / ROMless) oder einen C515C (OTP 32k), der 80C515C ist mir nicht bekannt. Du sprichst vom OTP also ist es wohl der C515C. Es gibt wirklich unterschiedliche Implementierungen in der 51-er Welt wie die Umschaltung des EA-bits behandelt wird. Als Test solltest Du mal schaun ob der micro irgendwelche Busaktivitaeten zeigt nach der Umschaltung des EA. Falls nicht, dann ist der Zustand fuer External Access (EA) vielleicht beim booten gespeichert und kann nicht durch Software veraendert werden. Weiss das nicht ob es bem C515C so geloest ist, kenn ich aber als einen moeglichen Ansatz um den Benutzer vor Irrlaeufern in der Software zu schuetzen, ein ungewolltes Umschalten des EA-bits hat katastrophale Folgen! Gruss, Robert p.s. Vielleicht solltest Du noch den Betreff korrigieren, war nur neugierig was ein 80C815C wohl sein mag.
Erstmal vorab schon mal Danke für die vielen Antworten! Das Umschlten zwischen OTP und Flash soll nicht durch die Software sondern per Hardware geschehen. Das ummünzen 517 Loaders auf dem 515 gestaltet sich aufgrund des OTPs sehr auswendig. Daher die Hoffnung das jemand etwas hat fertig hat, das mir einige Brennversuche ersparrt...
Du könntest ruhig mal den genauen Typ des 515 angeben (erster bis letzter Buchstabe), damit man endlich weiß, wovon Du sprichst. Ich habe mal nen Bootloader für den SAB-C505CA-4EM geschrieben für den AT29C512. Der wird Dir aber nichts nützen, wenn Du einen anderen Flash verwendest, da jeder Flash seinen eigenen Programmieralgorithmus hat. Auch benötigt er, daß der OTP weniger als 64kB groß ist, damit man den Flash auch bei EA=1 rücklesen kann. Und der EA-Pin muß dazu über einen Portpin setzbar sein. Ich würde die 515 aber trotzdem nicht nehmen. Theoretisch sparst Du zwar die Kosten für den Chip, aber Du brauchst ja noch zusätzlich das Adreßlatch und den Flash. Und dann wird ja das Layout komplizierter, d.h. Du brauchst mehr Zeit dafür und auch mehr Platz. Peter
Ich meine den SAF C515C-8EM. Er besitzt einen internen OPT-Bereich. Als Flash möchte ich den 39F01 verwenden. Den habe ich auch noch reichlich im Bestand. Wo ist den das Problem wegen dem programmieren? Können die nicht auch über den Daten-Pointer gefüttert werden. Ich würde gerne einen anderen Prozessor nehmen, nur möchte ich auch bei Infineon bleiben. Wegen dem EA, ich möchte den Speicher nicht automatisch umschalten. es soll später ein Jumper oder ein Schalter sein der den Bootloader aktiviert. Danach muß halt kurz ein Reset gemacht werden (Händisch).
@Peter Danegger, wenn die Verknüpfung von PSEN und WR Quatsch ist, wie willst du dann Programmcode aus dem Flash ausführen? Gruß Manfred
"Ich meine den SAF C515C-8EM." Und warum schreibst Du dann was völlig anderes hin ? Dann ist es ja kein Wunder, daß ich kein 80C515C Datenblatt gefunden hab. "Als Flash möchte ich den 39F01 verwenden." Sagt mir erstmal nichts, aber da Du ja gerne völlig andere und unvollständige Bezeichnungen nennst, werde ich nicht danach suchen. "Wo ist den das Problem wegen dem programmieren? Können die nicht auch über den Daten-Pointer gefüttert werden." Das Problem sind die unterschiedlichen Algorithmen. Mein AT29C512 muß z.B. seitenweise (128 Byte) gefüttert werden, braucht aber kein extra Erase. Auch habe ich festgestellt, daß ohne Software-Data-Protection im Flash beim Ein- oder Ausschalten durch Störimpulse Bytes kippen können. Ich sende also vor jedem Pagewrite die SDP-Sequenz, damit die SDP eingeschaltet ist und der Flash geschützt. "Ich würde gerne einen anderen Prozessor nehmen, nur möchte ich auch bei Infineon bleiben." Gibt es einen rationalen Grund dafür ? Was stört Dich an Atmel, Maxim, Silabs oder Philips ? Soweit ich weiß, stellt Infineon keine Flash-8051 her und deshalb nehme ich keine Infineons. Und da ich die Layouts selber mache, zahlt sich das mehrfach aus (keine zusätzlichen 2 Chips, keine vergeudeten IO-Pins, bessere EMV, einfacheres Layout. Auch ist ja der Code im internen Flash gegen Auslesen geschützt. Peter
@Micahel Verknüpfung von PSEN und /WR ist und bleibt Quatsch. Was höchstens geht, ist PSEN und /RD über ein AND nach /OE, damit man auch per MOVX rücklesen kann. Ich nehme zum Rücklesen aber MOVC und damit reicht PSEN nach /OE völlig. Peter
Das man den Vorgang beim Beschreiben eines EEProms teilweise ergänzen muss, ist mir auch klar. Aber ändert sich dach dabei die Routine nicht völlig! Bei dem Speicher "39C01" ist die Bezeichnung ziemlich eindeutig! Wegen dem 80C515, tut mir Leid. Macht der Gewohnheit... Danke soweit.
"Bei dem Speicher "39C01" ist die Bezeichnung ziemlich eindeutig!" Google ist da aber völlig anderer Meinung. Es gibt ein Lego-Fenster mit der Bezeichnung "39C01". Auch sollte man grundsätzlich den Hersteller nennen, damit läßt sich dann die Suche wenigstens etwas einschränken. Bzw. es gibt auch ICs, die komplett gleich heißen, aber je nach Hersteller unterschiedlich sind. Wenn ich unserem Einkauf solche Bezeichnungsfragmente hinknallen würde, könnte ich mir höchstens nen Satz warme Ohren abholen. Es ist nunmal so, daß bei ICs jeder einzelne Buchstabe zählt. Ich habe also nicht herausfinden können, was ein 39C01 ist. Peter
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.