Hallo zusammen, ein Freund und ich versuchen nun schon seit längerem den SST89E54RC zu programmieren. Unsere Aufgabe besteht darin, auf diesem µC eine UART zu programmieren. Laut Datenblatt müsste dieser einen vorporgrammierten Bootloader haben und somit über die serielle Schnittstelle angesteuert werden können. Dazu verwenden wir das Tool EasyIAP. Der µC ist fabrikneu. Die µC haben wir so angeschlossen, wie es im Datenblatt vorgegeben ist. Spannungsversorgung von 5V funktioniert. Ursprünglich haben wir einen 1,8432 Mhz Quarz verwendet. Nachdem dies aber nicht funktioniert hat, haben wir einen "original" 8051-Quarz ausprobiert (11,0592 Mhz). Mit Beiden haben wir sämtliche Baud-Raten ausprobiert. Die Quarze haben wir überprüft und sie funktionieren. Zur Kommunikation mit dem PC verwenden wir eine USB to Serial bridge, dessen Signale kommen am µC auch an. Allerdings reagiert der µC nicht. Gibt es die Möglichkeit, zu überprüfen, ob der Bootstraploader überhaupt funktioniert? Für den Boot-Up gibt es eine Grafik im Datenblatt auf S.48 (siehe Anhang), wie die Pins angesteuert werden müssen. Auch das haben wir mehrfach versucht. Die Pins EA# und RST haben wir wie im Datenblatt angegeben angeschlossen. Leider hat all dies nicht zum Erfolg geführt. Hat jemand von euch eine Idee, woran es liegen könnte, dass wir den µC nicht erreichen? Im Voraus vielen Dank für Eure Unterstützung. Beste Grüße Alex und Stefan
:
Bearbeitet durch Moderator
Beitrag #5023861 wurde von einem Moderator gelöscht.
Wenn es ein 51er von STC ist: Fuer die STC-Controller gibt es noch viel andere SW* um die Dinger zu programmieren. Das UI ist dann aber in chinesisch. Aber so viele Knoepfe zum Druecken sind es ja nicht. *) z.B.: - SSCOM - TV1023 - COMMIX
> Wenn es ein 51er von STC ist Der SST89E54RC ist von Microchip bzw. wurde von denen aufgekauft: http://www.microchip.com/design-centers/8051-80c51-legacy-microcontrollers Aber wo kann man denn STC DIP-40 kaufen ausser bei Ebay? Dass deren Bootloader funktioniert ist bekannt.
Habt ihr auch P1 richtig beschaltet und das Timing (300 CLK) beachtet?
Alex R. schrieb: > Gibt es die Möglichkeit, zu überprüfen, ob der Bootstraploader überhaupt > funktioniert? Das sollte mit EasyIap möglich sein. Anbei der folgende Link: http://www.kswichit.com/Flashflex/BSL11F_Users_Guide.pdf Zur Überprüfung des Bootloaders würde ich folgendermaßen vorgehen: Alle Verbindungen zum Mikrokontroller entfernen (ausser Spannungsversorgung natürlich), Quarzfrequenz 11.xxx MHz. Reset(Pin 8)nach Datenblatt beschalten und mit einer Möglichkeit zum manuellen Reset versehen. /EA(Pin 31) auf '1'(interner Programmzugriff). RxD und TxD (s.Link) über geeignete Pegelwandler mit dem PC verbinden. Easyiap starten, ggf. den COMport, Chiptyp und geschätzte Baudrate auswählen, den Menüpunkt zum Verbindungsaufbau aktivieren. Manuellen Reset des Mikrokontrollers durchführen. Der Bootloader sollte sich jetzt in irgendeinem Fenster von EasyIap melden. Falls unleserliches Zeug erscheint, andere Baudrate versuchen. Falls gar nichts erscheint, tja, fehlerhafte elektrische Verbindungen, kein Bootloader oder Chip kaputt.
asker schrieb: > Habt ihr auch P1 richtig beschaltet und das Timing (300 CLK) beachtet? Bedeuten die 300 CLK, dass es exakt 300 CLK oder mindestens 300 CLK sein müssen? P1 haben wir beschaltet wie in der Grafik angegeben.
G. O. schrieb: > Überprüfung des Bootloaders Da steht "Pre-programmed into SST89E/V5x4Rx and SST89E/V5xRDx MCUs" Was ist nun aber wenn Microchip den Bootloader tatsächlich nicht draufgemacht hat? Woher bekommt man dann den Bootloader "F51MBLI5.HEX"? Und welcher Programmer kann verwendet werden? AT89 ISP geht ja sicher nicht. P89V51 ICP ist teuer und lohnt nicht.
Ab Werk ist da kein Bootloader drin. Du brauchst einen parallel Programmer: http://ww1.microchip.com/downloads/en/DeviceDoc/25089A.pdf
:
Bearbeitet durch User
Peter D. schrieb: > Ab Werk ist da kein Bootloader drin. Sicher? Die SST 8051 die ich vor Jahren in der Hand hatte, hatten ab Werk alle einen Bootloader. Typenbezeichnung habe ich aber nicht mehr im Kopf.
Der AT89C51RB2-3CSUM ist ähnlich und mit UART-Bootloader (auch von Microchip erhältlich).
:
Bearbeitet durch User
G. O. schrieb: > Das sollte mit EasyIap möglich sein. Mich würde 'mal interessieren, ob mein Vorschlag funktioniert hat oder eben auch nicht. Solange die Jungs sich nicht melden kann man zwar munter spekulieren aber sicherlich nichts Konstruktives zur Problemlösung beitragen.
Joerg L. schrieb: > Die SST 8051 die ich vor Jahren in der Hand hatte, hatten ab Werk alle > einen Bootloader. Warum schreibt man das aber nicht ins Datenblatt rein? Ich lese da nur, man kann einen (selber) reinbrennen: "An example bootstrap loader can be pre-programmed into Partition1 to demonstrate the initial user program code loading or subsequent user code updating via the IAP operation."
Peter D. schrieb: > Ich lese da nur, man kann einen (selber) reinbrennen Im ISP Software Datenblatt steht aber wie gesagt: ??? schrieb: > Da steht "Pre-programmed into SST89E/V5x4Rx and SST89E/V5xRDx MCUs"
Hallo zusammen, erst mal vielen Dank an euch alle für eure Unterstützung! G. O. schrieb: > Das sollte mit EasyIap möglich sein. Danke für deinen Vorschlag. Den haben wir so nun mehrmals getestet. Leider ohne Erfolg, der µC macht keinen Mucks! Wir sind davon ausgegangen, dass der Bootloader bereits programmiert ist, da es so in dem Software Datenblatt steht. Peter D. schrieb: > Du brauchst einen parallel > Programmer: Das heißt wir müssen uns jetzt so einen Programmer besorgen um zu schauen, ob ein Bootloader drauf ist, richtig? ??? schrieb: > Woher bekommt man dann den Bootloader "F51MBLI5.HEX"? Und wo bekommen wir dann die Hex-File her, um den µC dann zu programmieren? Im Datenblatt wird hier auf die SST-Website verwiesen. Die Website scheint dies aber nicht mehr herzugeben. Peter D. schrieb: > Der AT89C51RB2-3CSUM ist ähnlich und mit UART-Bootloader Danke für den Vorschlag. Wir müssen aber den genannten µC verwenden. Grüße Alex und Stefan
Alex R. schrieb: > Wir müssen aber den genannten µC verwenden. Dann soll doch der-/diejenige, der/die euch im Nacken sitzt, sagen, wie ihr euer Programm in gerade diesen Prozessor hineinbekommt und wieviel ihm/ihr der damit verbundene Aufwand wert ist. :-| Alex R. schrieb: > Wir sind davon ausgegangen, dass der Bootloader bereits programmiert > ist, da es so in dem Software Datenblatt steht Naja, wenn man sich das Datenblatt dieses Prozessors, insbesondere die Einleitung, ansieht, dann liest man, wie PeDa schon bemerkte, nichts über einen vorprogrammierten Bootloader, im Gegensatz zu den Datenblättern von anderen Prozessoren aus dieser Familie, in denen ein Bootloader ausdrücklich erwähnt wird. Im Datenblatt dieses Prozessors ist zu lesen, dass ein Bootloader bei Bedarf von der SST-Seite (die offensichtlich nicht mehr existiert) heruntergeladen werden kann. Der Loader kann im Internet zwar noch gefunden werden, allerdings ist der Download an Bedingungen geknüpft und wohl auch nicht ganz ohne Risiko.
Die CPU aus meinem letzten Design mit SST war ein SST89V58RD2 (Foto). Booloader war ab Werk drin, Programmierung war über EasyIAP SW-Rev06, 11/1/05 problemlos möglich, über eine USB/UART Bridge eines bekannten schottischen Herstellers. Den Unterschied 89V5x zu 89e5x habe ich als 3V/5V Betriebsspannung in Erinnerung. Einen 89e5x Chip habe ich nicht vorliegen, kann also keine Tests damit machen. Mir fehlt momentan auch die Zeit dazu. Details aus der Schaltung damals: - An das Bild aus dem Datenblatt mit P1.0 und P1.1 auf GND für den Bootloader kann ich mich nicht erinnern. Das muß ich damals übersehen haben. In meiner Schaltung liegen beide über Pullups nach VCC. Programmieren war meiner Erinnerung nach möglich. - RTS und CTS von der USB/UART Bridge sind verbunden, und sind über eine Diode mit dem Reset-Eingang verbunden. Damit kann das EasyIAP einen Reset des 8051 auslösen. - Quarz ist wie auf dem Foto erkennbar der Standard-11.0592MHz HTH, Jörg
:
Bearbeitet durch User
Die alten Philips P89C51RD2 hatten auch nen schönen Bug. Man konnte sich für immer aus dem Bootloader aussperren, indem man den Bootvector verstellte: "If the factory default setting for the Boot Vector (0FCH) is changed, it will no longer point to the ISP masked-ROM boot loader code. If this happens, the only way it is possible to change the contents of the Boot Vector is through the parallel programming method"
Joerg L. schrieb: > Die CPU aus meinem letzten Design mit SST war ein SST89V58RD2 (Foto). > Booloader war ab Werk drin, Programmierung war über EasyIAP SW-Rev06, > 11/1/05 problemlos möglich, über eine USB/UART Bridge eines bekannten > schottischen Herstellers. Nein! Das was intern (ab Werk bei allen SST89...) enthalten ist, ist nicht der angesprochene Bootloader, sondern eine IAP-Software (In-Application-Programming). Diese Programmoierung funktioniert nur gemeinsam mit "EasyIap" oder einem vergleichbaren Programm. Die klassische Bootloader-Funktion (Download Intel-Hex via serieller Schnittstelle) benötigt eine extra Software im Mikrocontroller.
Route 6. schrieb: > Nein! > Das was intern (ab Werk bei allen SST89...) enthalten ist, ist nicht der > angesprochene Bootloader, sondern eine IAP-Software > (In-Application-Programming). Für mich ist das das Gleiche. Die "alten" 8051 hatten das alle gar nicht, jedes ab Werk enthaltene Stück Software zur IAP ist damit ein riesen Fortschritt, und verdient in meinen Augen diesen Namen. Wenn Du es aber genau nehmen willst, darfst Du einen Bootloader nur dann so nennen, wenn er zum Laden der Firmware von einem externen Speicher ins RAM dient (SPI-Flash, Festplatte, usw). IAP ist streng genommen kein Bootloader.
Hallo zusammen, nochmal vielen Dank für eure Unterstützung. Wir werden das Projekt mit diesem µC an dieser Stelle abbrechen. Grüße Alex und Stefan
Alex R. schrieb: > Wir werden das Projekt mit diesem µC an dieser Stelle abbrechen. Neue Projekte startet man ja auch nicht mehr mit nem bereits abgekündigten Chip.
Alex R. schrieb: > Danke für den Vorschlag. Wir müssen aber den genannten µC verwenden. > > Grüße Alex und Stefan Alex R. schrieb: > Wir werden das Projekt mit diesem µC an dieser Stelle abbrechen. So etwas nennt man wohl heiße Luft. Erst ein großes Fass aufmachen und dann Pfffffffffffffffft.
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.