Hallo, ich hab gerade mächtig sch**** gebaut. Hab für 9 Euro inkl. Versand 20 von diesen AT89C2051 ersteigert. Kommen nächste Woche. Hab gerade gelesen das ich dafür so einen Parallel Port Programmer bauen muss. Geht das auch einfacher vielleicht per USBAsp? Oder kann ich mir in Fernost irgendwo einen billigen Programmer kaufen? Hab bereits einmal gelitten beim Eigenbau meines AtMEga Programmers... Grüße Franz
Den kannst Du z.B. mit einem Galep programmieren (auf ebay manchmal auch günstig zu bekommen). Ansonsten kann das auch der TL866A/CS/II https://www.amazon.de/WINGONEER-TL866II-Hochleistungs-EEPROM-Programmierer-ATMEGA/dp/B07B985LBS/ref=sr_1_fkmr0_1?__mk_de_DE=%C3%85M%C3%85%C5%BD%C3%95%C3%91&keywords=XGecu+TL866II+Plus&qid=1553836870&s=gateway&sr=8-1-fkmr0
Franz W. schrieb: > Hab für 9 Euro inkl. Versand 20 von diesen AT89C2051 ersteigert. Du kaufst einfach so auf Verdacht irgendwelche Controller ohne zu wissen was die können? Nach dazu solche uralten Teile die praktisch nichts können?
> die praktisch nichts können? Es sind immerhin codeeffiziente 8051. Manch einer braucht nicht mehr. Die funktionieren ohne HAL, ohne Java, ohne Quarz. Das letzte war gelogen. Und so aufwendig ist die (Parallel-)Programmierung auch nicht. Bauanleitungen dafür finden sich.
> Nach dazu solche uralten Teile die praktisch nichts können? Naja - das stimmt ja nun auch nicht so ganz. 15 I/Os, UART, 2 Timer, 2 externe Interrupts. Da lässt sich schon so einiges mit tun. Ich mag die 8051 uC... und 20 Stück für 9 EUR ist doch toll.
Hast du noch nen Rechner mit LPT-Port? Ich hab letztens noch nen Batronix Programmer für die C2051 gefunden.
1993 war serielle Programmierung noch nicht Standard. Da war man froh, daß es schon Flash war und kein OTP. Per SPI programmierbar sind: AT89S2051 AT89S4051 AT89LP2052 AT89LP4052
"Lustiger" als den 89c2051 zu flashen dürfte sein, ein Programm für ihn zu entwickeln. Will der TO ein Programm schreiben, den Chip in den Programmer tun und ihn flashen, aus dem Programmer holen in die Zielschaltung stecken und gucken ob es geht? Wäre sehr mühselig. Für das Teil hatte ich mal eine Bastelarbeit gemacht, die einen 89S2051 per SPI geflasht hat und dessen Pins über ein Flachbandkabel in die Zielschaltung geführt wurden. Wenn das Programm fertig war wurde ein 89c2051 im Parallelprogrammer geflasht. Das habe ich solange gemacht, bis mein "Vorrat" an 89c2051 aufgebraucht war. Wenn also der TO nicht über das Equipment verfügt mit dem Chip umzugehen, nutzt es ihm auch nichts, wenn er einen Programmer dafür hat. Das Equipment dafür anzuschaffen (wenn man bisher mit MCS51 nichts gemacht hat) wäre teurer als die 9 Euro die er dafür ausgegeben hat. Als Lehrgeld betrachten, ooooooder: Du baust dir einen Programmer (mein Programmer ist mit einem 89S52 realisiert dessen Firmware mit Pascal51 geschrieben war - die einzige Firmware, die ich mit Pascal gemacht hatte nur um es auszuprobieren). Eine schöne "Übung" wäre, mittels einem AVR-Board (gerne auch ein Arduino) ein oder zwei Schieberegistern und einer PWM Step-Up Schaltung (der 89c2051 braucht 12V Programmierspannung) einen Programmer selbst zu bauen. Ohne es ausprobiert zu haben, könnte für den TO vllt. das hier etwas für ihn sein: http://ceptimus.co.uk/?p=216
... schrieb: > Es sind immerhin codeeffiziente 8051. Cortex-M3 (Thumb2) ist Code-Effizienter... ... schrieb: > Die funktionieren ohne HAL, ohne Java, ohne Quarz. Wie die meisten anderen uC auch. Milo schrieb: > Naja - das stimmt ja nun auch nicht so ganz. 15 I/Os, UART, 2 Timer, 2 > externe Interrupts. Da lässt sich schon so einiges mit tun. Klar, aber ab welcher Stückzahl lohnt es sich preislich, sich mit so einem primitiven Ding rumzuschlagen? Ein moderner Cortex-M3 o.ä. mit 2-Pin-SWD und Debugger ist doch viel komfortabler, selbst wenn man ihn nur zu 1% ausnutzt.
@ Franz Halb so schlimm. Deine AT89C2051 kannst du bei Ebay einstellen und kaufst dir vom Erlös Controller, die seriell zu flashen sind.
Markus schrieb: > Deine AT89C2051 kannst du bei Ebay einstellen und > kaufst dir vom Erlös Controller, die seriell zu flashen sind. Wenn er das hier schreibt: Franz W. schrieb: > Geht das auch einfacher vielleicht per USBAsp? dann sollte er vllt. über einen ATtiny2313 nachdenken, der ist Pinkompatibel (der Resetpegel ist allerdings zum AT89c2051 invertiert) und kann mit USBasp geflasht werden.
Dr. Sommer schrieb: > Cortex-M3 (Thumb2) ist Code-Effizienter... Ich glaub nicht, daß der mit 2kB Flash zurecht kommt, wenns mehr als ne Blink-LED sein soll. Irgendwo hab ich noch C-Code für den AT89C2051 als Frequenzmesser rumliegen. Die Berechnungen erfolgen in float, die Ausgabe auf 7-Segment. Anbei der Schaltplan.
Franz, hab gerade meinen alten Programmer für 89C1051, 2051 und 4051 (Elektor 9/2001) aus der Schrottkiste geholt, in die ich ihn letzte Woche gelegt hatte. Falls du ihn haben möchtest, würde ich ihn dir für kleinstes Geld überlassen. PC-Schnittstelle ist seriell, Programm dazu habe ich auch noch! Servus, Helmut. p.s. verwendet habe ich die Dinger, da sie damls wenig Strom verbrauchten (war Vor-MSP430-Zeit) und als Ersatzsensoren für Wetterstationen im Batteriebetrieb dienten.
:
Bearbeitet durch User
Peter D. schrieb: > Ich glaub nicht, daß der mit 2kB Flash zurecht kommt, wenns mehr als ne > Blink-LED sein soll. Gar kein Problem. Habe z.B. mal in exakt 2kB einen CAN-Bootloader für STM32 (Cortex-M3) geschrieben, inkl. Takt-Konfiguration, CAN-Initialisierung, Prüfsummen, Fehlerbehandlung & Wiederholung, Flash beschreiben, Ausführung im RAM, Timeouts via Timer, und natürlich asynchronen Abläufen (Interrupts). Irgendwo gab es mal einen schönen Vergleich wie viel platz-effizienter Thumb2 als 8051 ist... Ich finde ihn nur nicht mehr!
> C++ Wer will das schon. Für den 89C2051 gibt es auch ein LC-Meter Projekt. Da rechnen die auch fleissig mit Floats. Auch in 2k. > in exakt 2kB einen CAN-Bootloader Mein (Tape-)Urlader für den Z80 brauchte so ca. 50 Byte. Da sind 2kB reine Verschwendung.
Dr. Sommer schrieb: > Habe z.B. mal in exakt 2kB einen CAN-Bootloader für > STM32 (Cortex-M3) geschrieben Nur das bischen CAN-Controller initialisieren, Puffer auslesen und ein paar Flash-API Aufrufe kosten schon so viel? Ich denke mal, bei einem AT89C51CC03 sollte ein CAN-Bootloader bequem in 500 Byte passen.
... schrieb: > Wer will das schon. Leute die mehr als nur Blinker schreiben. ... schrieb: > Da rechnen die auch fleissig mit Floats. > Auch in 2k. Auf dem Cortex-M4 ist eine Float-Multiplikation 2 Bytes... auf dem 8051 auch? ... schrieb: > Mein (Tape-)Urlader für den Z80 brauchte so ca. 50 Byte. > Da sind 2kB reine Verschwendung. Und was macht der genau? Peter D. schrieb: > Nur das bischen CAN-Controller initialisieren, Puffer auslesen und ein > paar Flash-API Aufrufe kosten schon so viel? Ja, schließlich ist die Peripherie sehr mächtig und braucht ein paar mehr Register. Peter D. schrieb: > Ich denke mal, bei einem AT89C51CC03 sollte ein CAN-Bootloader bequem in > 500 Byte passen. Aha, zeigen!
Bonustipp: Selbstverändlich entwickelt und testet man Programme für den kleinen 2051 und 4051 nicht unbedingt auf der Zielhardware. Stattdessen benutzt man zur Entwicklungszeit einen grösseren 8031/51, mit Monitorprogramm, RAM und Pin-Adapter. Der kleine kommt dann dran wenn es fertig ist.
> ... schrieb: > > Wer will das schon. > Leute die mehr als nur Blinker schreiben. > ... schrieb: > > Da rechnen die auch fleissig mit Floats. > > Auch in 2k. > Auf dem Cortex-M4 ist eine Float-Multiplikation 2 Bytes... auf dem 8051 > auch? Aha, für mehr als den Wurstblinker braucht man schon C++. Interessante These. Wenn man den 2/4/8051 mit einem FP-Interpreter aufpeppt reicht unter Umständen sogar 1 Byte um ihn multiplizieren zu lassen.
... schrieb: > Aha, für mehr als den Wurstblinker braucht man schon C++. > Interessante These. Es ging nicht um brauchen! Man braucht gar keine höhere Programmiersprache. Man kann auch alles in Brainfuck schreiben. Wenn man aber irgendwie effizient arbeiten möchte, sind abstrahierende Sprachen wie C++ sinnvoll. ... schrieb: > Wenn man den 2/4/8051 mit einem FP-Interpreter aufpeppt reicht > unter Umständen sogar 1 Byte um ihn multiplizieren zu lassen. Der FP-Interpreter ist aber bestimmt nicht 1 Byte groß.
> Der FP-Interpreter ist aber bestimmt nicht 1 Byte groß.
Für nicht genutzten Flash bekommt man kein Geld zurück.
Das sollte doch bekannt sein
Helmut -. schrieb: > Franz, > hab gerade meinen alten Programmer für 89C1051, 2051 und 4051 (Elektor > 9/2001) aus der Schrottkiste geholt, in die ich ihn letzte Woche gelegt > hatte. Falls du ihn haben möchtest, würde ich ihn dir für kleinstes Geld > überlassen. PC-Schnittstelle ist seriell, Programm dazu habe ich auch > noch! > > Servus, > Helmut. Das ist auch eine Lösung für den TO. @ all Warum müsst ihr Threads mit euren Kindereien vollmachen?
Dr. Sommer schrieb: > Ein moderner Cortex-M3 o.ä. ... passt nicht in DIL. @TO: Du bist nicht allein ... https://hackaday.io/project/29503-arduino-based-at89c2051-programmer
Dr. Sommer schrieb: > Franz W. schrieb: >> Hab für 9 Euro inkl. Versand 20 von diesen AT89C2051 ersteigert. > > Du kaufst einfach so auf Verdacht irgendwelche Controller ohne zu wissen > was die können? Nach dazu solche uralten Teile die praktisch nichts > können? Ja, ich hab auf einer Seite so eine 7 Segment LED Uhr als diy Kit gekauft. In diesem Kit war dieser Chip. Ich dachte "Mega cool ein analoger Led Treiber mit Uhr" Hab erst im Datenblatt gesehen das dass ding was anderes ist... Grüße Franz
Milo schrieb: > Den kannst Du z.B. mit einem Galep programmieren (auf ebay manchmal auch > günstig zu bekommen). > > Ansonsten kann das auch der TL866A/CS/II > > https://www.amazon.de/WINGONEER-TL866II-Hochleistungs-EEPROM-Programmierer-ATMEGA/dp/B07B985LBS/ref=sr_1_fkmr0_1?__mk_de_DE=%C3%85M%C3%85%C5%BD%C3%95%C3%91&keywords=XGecu+TL866II+Plus&qid=1553836870&s=gateway&sr=8-1-fkmr0 Danke für deine Antwort! Hilfreich - bei dem Preis würd ich aber auch eine eigenbastel Lösung versuchen - hab zwei hier im Forum gefunden. Grüße Franz
Marek N. schrieb: > Hast du noch nen Rechner mit LPT-Port? > Ich hab letztens noch nen Batronix Programmer für die C2051 gefunden. Ja, hab ich. Ich schau mal ob ich einen Fertig aufgebuaten Parallelportporgrammer irgendwo auf Aliexpress finde...
Ralph S. schrieb: > "Lustiger" als den 89c2051 zu flashen dürfte sein, ein Programm für ihn > zu entwickeln. > > Will der TO ein Programm schreiben, den Chip in den Programmer tun und > ihn flashen, aus dem Programmer holen in die Zielschaltung stecken und > gucken ob es geht? > > Wäre sehr mühselig. Hallo, so mache ich es auch mit meinen AtMega, AtTiny usw. Was ist daran merkwürdig? Erst in den Programmer/Flasher dann raus in die auf dem Steckboard aufgebaute Zielschaltung und testen. Ist doch der normale vorgang? Grüße Franz
Franz W. schrieb: > Hallo, > > so mache ich es auch mit meinen AtMega, AtTiny usw. Was ist daran merkwürdig? > Erst in den Programmer/Flasher dann raus in die auf dem Steckboard aufgebaute Zielschaltung und testen. > > Ist doch der normale vorgang? > > Grüße > Franz Warum das Programm nicht erst simulieren, bevor man es in Hardware testet?
Franz W. schrieb: > Milo schrieb: >> Den kannst Du z.B. mit einem Galep programmieren (auf ebay manchmal auch >> günstig zu bekommen). >> >> Ansonsten kann das auch der TL866A/CS/II >> >> > https://www.amazon.de/WINGONEER-TL866II-Hochleistungs-EEPROM-Programmierer-ATMEGA/dp/B07B985LBS/ref=sr_1_fkmr0_1?__mk_de_DE=%C3%85M%C3%85%C5%BD%C3%95%C3%91&keywords=XGecu+TL866II+Plus&qid=1553836870&s=gateway&sr=8-1-fkmr0 > > Danke für deine Antwort! > Hilfreich - bei dem Preis würd ich aber auch eine eigenbastel Lösung > versuchen - hab zwei hier im Forum gefunden. > > Grüße > Franz Kann dir den Programmer auch nur empfehlen, der geht ja auch für viele andere Chips. Lohnt sich auf lange zeit.
Franz W. schrieb: > Ist doch der normale vorgang? Nur, wenn der Chip nicht im System programmierbar ist. Ich habe Schaltungen gelochrastert, da ist der Atmega erst eingelötet und dann programmiert worfen.
Franz W. schrieb: > Ich schau mal ob ich einen Fertig aufgebuaten Parallelportporgrammer > irgendwo auf Aliexpress finde... Hier ist einer mit USB-Anschluss. Der kann neben Deinen AT89C2051 noch viele andere µCs und auch seriell oder ISP... SP200 Programmer https://www.aliexpress.com/i/32881902442.html Dafür gibt es viele Anbieter. Ich habe einen SP200SE.
:
Bearbeitet durch User
Michael F. schrieb: > Warum das Programm nicht erst simulieren, bevor man es in Hardware > testet? Macht kein Mensch für so einen Pups Mikrocontroller. ... schrieb: > Aha, für mehr als den Wurstblinker braucht man schon C++. > Interessante These. > > Wenn man den 2/4/8051 mit einem FP-Interpreter aufpeppt reicht > unter Umständen sogar 1 Byte um ihn multiplizieren zu lassen. Manche werden halt auch in 30 Jahren noch LEDs mit 8051 oder Atmega blinken lassen, während es moderne, zeitgleich günstigere und benutzerfreundlichere µC gibt - die man via Funk flasht. Ich würde einen C8051 nur noch für Bestandprojekte verwenden. Bei Neuentwicklung niemals, es sei denn der Kunde gibt das vor - dann versuchen zu überzeugen, dass das totaler Unsinn ist.
Bimbo. schrieb: > Michael F. schrieb: >> Warum das Programm nicht erst simulieren, bevor man es in Hardware >> testet? > > Macht kein Mensch für so einen Pups Mikrocontroller. > > ... schrieb: >> Aha, für mehr als den Wurstblinker braucht man schon C++. >> Interessante These. >> >> Wenn man den 2/4/8051 mit einem FP-Interpreter aufpeppt reicht >> unter Umständen sogar 1 Byte um ihn multiplizieren zu lassen. > > Manche werden halt auch in 30 Jahren noch LEDs mit 8051 oder Atmega > blinken lassen, während es moderne, zeitgleich günstigere und > benutzerfreundlichere µC gibt - die man via Funk flasht. > > Ich würde einen C8051 nur noch für Bestandprojekte verwenden. Bei > Neuentwicklung niemals, es sei denn der Kunde gibt das vor - dann > versuchen zu überzeugen, dass das totaler Unsinn ist. Ok, mag für Dich stimmen, aber nicht für einen Bastler der noch 2 Stangen von dem Zeug da liegen hat. Ich habe Ende vorigen Jahres einen Timer auch mit 89C52 gemacht, mehr als ausreichend für den Zweck, SDCC als Compiler und tut was es soll. Mit MC8051IDE gibts auch für unix/linux eine IDE mit Debugger und Simulator so das das Progrämmchen auf Anhieb funktionierte, der GALEP IV hats gebrannt. Gleichzeitig hatte ich kommerzielle Entwicklungen mit XMEGA und STM32 laufen. Wo ist das Problem? Ich habe auch noch 2 Stangen CY8C26443 herumliegen, di dürfen demnächst Quadraturdecoder mit Zähler spielen, auch wenn das noch PSOC1 sind. Gruß, Holm
Helmut -. schrieb: > Franz, > hab gerade meinen alten Programmer für 89C1051, 2051 und 4051 (Elektor > 9/2001) aus der Schrottkiste geholt, in die ich ihn letzte Woche gelegt > hatte. Falls du ihn haben möchtest, würde ich ihn dir für kleinstes Geld > überlassen. PC-Schnittstelle ist seriell, Programm dazu habe ich auch > noch! > > Servus, > Helmut. > @TO: Franz, wie sieht's mit meinem Angebot aus? Willst du ihn für's Porto oder nicht (oder jemand anders)? Morgen kommt er in die Tonne!
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.