www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Sind die 8051'er am aussterben?


Autor: 8051er-FAN (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo!

Habe von einem berufsmäßigen Programmierer von div. Controllern gehört,
dass die 8051er-Architektur am aussterben sei... :-(

Was sagt ihr dazu?

Ciao!

Autor: Thorsten (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Echt ? Kann ich mir nicht vorstellen, fast jeder Hersteller hat doch
Controller mit 51-er Kern im Programm und von Abkündigungen hört man da
auch nichts. Auch habe ich die Erfahrung gemacht, dass viele Kunden bei
Neuentwicklungen explizit 8051er haben wollen. Von daher: es lebe die
8051er Architektur :)

Thorsten

Autor: Aleksej Kiselev (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
na ja, wenn es so ist, dann verstehe ich nichtm wieso Atmel mit der
AT89-Serie nicht aufhört. Die herstellen immer neue Controller mit CAN,
MP3, USB u s.w. als AT89. Und wenn manche professionelle Programmierer
meinen, dass 8051-Architektur das beste überhaupt in der 8bit-Welt ist,
dann sagt das doch was für mich. Und 8bit Controller sterben ganz
bestimmt nicht. Was stirbt aus, wird von den meisten Herstellern nicht
mehr produziert, so wie ich die Gesetze von dem Markt kenne. Manche
16bit Controller verlieren in der Leistung und ganz bestimmt im
Verhältnis Preis/Leistung. So, schätze ich, war dein Freund zu
pessimistisch.

Autor: Olaf (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
MCS51 wird es vermutlich noch geben wenn wir alle in Rente sind. Das ist
der Controller der als letztes ausstirbt. Das Dingen ist zwar schlecht
im Vergleich zu fast allem anderen aber er hat eine immense
Verbreitung.

Olaf

Autor: buz11 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es kommen doch dauernd neue 8051er kompatible heraus .

Habe vor kurzem einen ADuC841 ( Analog Devices ) bekommen .

Single-cycle 20 MIPS 8052 core ,
High speed 420 kSPS , 8Ch 12-bit ADC ,
2 * PWM , 2 * 12-bit DAC , bla bla ...

Den 8051er bauen sie noch mindenstens ... ewig .

Autor: Gerhard Gunzelmann (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Tot gesagte leben länger

Gerhard

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Olaf,

"Das Dingen ist zwar schlecht"

Wenn man keine Ahnung davon hat, sollte man sowas nicht sagen.
Und wer sowas sagt, hat keine Ahnung, wovon er spricht.

Die Dinger sind für Steuerungsaufgaben optimiert und darin unschlagbar
(hab mir schon mehrmals den Mund fusselig geredet, weshalb).


Und kein einziger der etwa 40 verschiedenen Hersteller zeigt an, daß er
sich aus dem 8051-er Geschäft zurückziehen will.


Peter

Autor: Markus_8051 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja, ja, die sterben seit acht Jahren aus. Und das wird sich sicher auch
noch die nächsten 25 Jahre hinziehen....

Dafür ist er einfach zu weit verbreitet.

Und - ehrlich gesagt - solange es µCs gibt, die deutlich umständlicher
zu programmieren sind (PIC würg...) sehe ich auch keinen Grund, warum
er vom Markt verschwinden sollte.

Was mich allerdings mächtig stört: Zumindest in der Atmel-Serie gibt es
keine ´51er, die eine vernünftige RESET-Schaltung drin haben. So muß man
zu den 89C2051, die ja sonst eigentlich nichts außer einem Quarz
brauchen, noch einen teuren Resetcontroller verbauen. Oder kennt von
Euch jemand eine Version vom ´51er die ähnlich preiswert ist und sowas
drin hat?

Ich werde ihn jedoch weiterhin gerne einsetzen, auch wenn ich mich
gerade beruflich mit dem PIC rumschlagen muß und mich privat in den AVR
einarbeite.

Es lebe der 8051 !!!

Autor: Gerhard Gunzelmann (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
(PIC würg) Bitte keine Verunglimpfungen! Wer sowas sagt hat keine
Ahnung. Gerade wer mit 8051 und konsorten arbeitet sollte sowas nicht
sagen. So wie die 8051er die Urgroßväter einer bestimmten uC-Familie
sind, so sind dies aucg die PIC's. Microchip hat diese Art von uC
erfunden. ATmel, National usw haben die Dinger bloß nachgebaut. Einen
modernen Atmel mit nem ollen PIC16C-irgendwas zu vergleichen ist
unfair. Die modernen PIC18Fxxx halten locker mit Atmel-Dingens mit.

So jetzt hab ich das aber mal gesagt!!!

Gerhard

Autor: Benedikt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das Preis Leistungsverhältnis ist auf jedenfall beim 8051 super.
Für kleine Sachen den AT89C2051 für 1,2€ (vergleichbarer AVR: AT90S1200
für 2€, OK ist in etwa gleich, aber wenn ich nen UART brauch bin ich
schon bei 2,4€...)
Für größere den AT89S52 (ist bei Reichelt billiger als der S51) für
1,6€. Ein AVR mit gleich vielen IOs kostet schon 5€ aufwärts.
Für einfache Sachen wie Steuerungen usw. bei denen es nicht aus viel
CPU Leistung ankommt, sind 8051 überlegen. Der größte Vorteil: Die Bit
Funktionen und die quasi Bi-direktionalen IO Port. Daten senden und
empfangen, ohne die Richtung umschalten zu müssen.
So lande ich am Ende oft bei 2 uC in einer Schaltung: Ein AVR für
einfache, schnelle Aufgaben (z.B. DDS Funktionsgenerator), gesteuert
von einem 8051 der z.B. LED Anzeigen multiplext, Taster abfragt und die
verarbeiteten Daten an den AVR sendet.
Und wenn ich wirklich mal CPU Leistung brauche, dann sind die AVRs zu
langsam (max. 16MHz). Dafür gibts dann die richtig schnellen 8051 mit
100MIPs, 24bit ADC usw.

Autor: Peter Dannegger (peda)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
@Markus_8051

"keine ´51er, die eine vernünftige RESET-Schaltung drin haben"

geplant isser, siehe Anhang.


Ansonsten mal bei den Philips LPC nachsehen. Die sind allerdings nur
3,3V fest.


Peter

Autor: Stefan Kleinwort (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Peter:
>"Das Dingen ist zwar schlecht"
>Wenn man keine Ahnung davon hat, sollte man sowas nicht sagen.
>Und wer sowas sagt, hat keine Ahnung, wovon er spricht.

Woher kommt Dein Wissen, dass Olaf keine Ahnung hat?
Es gibt genügend Eigenheiten des 8051, wegen denen man sich mit Grausen
abwenden kann (z.B. Datenptr., Zugriff auf ROM-Tabellen, ...). Und es
gibt genügend Eigenheiten warum man ihn andererseits lieben kann (z.B.
Ansprechen der Portpins).
Je nachdem, welche Appl. Olaf programmiert, kann er zur einen oder
anderen Gruppe gehören - und trotzdem viel Ahnung haben.

Stefan

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Stefan,

die Ahnung erschließt sich nicht nur durch bloßes Ansehen des
Befehlssatzes, sondern man muß ihn auch anwenden.


"(z.B. Datenptr., Zugriff auf ROM-Tabellen, ...)"

Genau das meinte ich damit, das sind nämlich genau die Instruktionen,
die beim 8051 besonders leistungsfähig sind.

Z.B. ein "DJNZ @R0" erschlägt 4 AVR-Befehle.

Man muß eben bloß wissen, daß der 8051 insgesamt 9 Datenpointer hat
(@R0, @R1 der 4 Registerbänke und @DPTR).

Und um z.B. in einem Timerinterrupt zur Multiplexausgabe eine Zahl in
den 7-Segment Code umzuwandeln reicht ein simples "MOVC A,@A+PC" ohne
umständliche 16-Bit Addition und haufenweises Register pushen, laden und
poppen.

Soviel zu Datenpointer und Tabellen.


Das Grausen kenne ich dagegen von Tabellen mit dem AVR.
Ich habe dann einen kleinen Trick gemacht, indem ich Tabellen immer an
Adressen 0x**00 oder 0x**80 lege, damit spart man dann 3 Register laden
und die 16 Bit Addition ein (5 Befehle).
Erkauft man sich aber durch eventuell ungenutzten Platz im Flash.


Ich will natürlich keinem einen Vorwurf machen, daß er nicht soviel
Ahnung vom 8051 hat (nur darum ging es ja).
Ich habe z.B. auch keine Ahnung von C++, warum es besser sein soll als
C. Man kann eben nicht alles wissen.


Peter

Autor: Krischan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Peter

"Ansonsten mal bei den Philips LPC nachsehen. Die sind allerdings nur
3,3V fest."

Ich kann dir nur Recht geben. Die LPC-Reihe sieht recht gut aus. Eine
Menge Funktionen (Reset, Clock, Brownout-Detection, Programmierung via
RS232, etc.) im Chip. Mit der Versorgungsspannung habe ich ebenfalls
keine Probleme. Wenn ich mich recht entsinne sind die I/O-Ports
5V-tolerant. Das einzige Problem ist die Beschaffung.

Tschau

Krischan

Autor: Benedikt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich weiß ja nicht von welchen LPC ihr sprecht, aber bei Reichelt gibt es
einige Philips LPC 8051... und die sind für 2-6V ausgelegt.

Autor: Krischan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Moin,

das ist die P87LPC7xx-Reihe. Leider nur OTP.

Autor: Stefan Kleinwort (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Peter:

>Man muß eben bloß wissen, daß der 8051 insgesamt 9 Datenpointer hat
>(@R0, @R1 der 4 Registerbänke und @DPTR).

Das mag stimmen, solange man Mini-Applikationen hat. Die Zeiten, wo
meine Programme mit 200 Byte RAM auskommen, sind lange vorbei.
Mit Datenpointer meinte ich aber eben diesen: "DPTR".
Das erweiterte RAM beim 8051 anzusprechen ist einfach nur: häßlich.

Der Knackpunkt ist "+PC". Einen Wert aus einer Tabelle bekommst Du
nur in Relation zum Programmpointer, das ist für viele Appl. nicht
machbar. Und Du kannst nur auf Tabellengrößen bis 256 Byte zugreifen
(ohne große Umwege).
Kleines Bsp.: Zeichenausgabe auf Graphik-LCD, Aufarbeiten der Graphik
im erweiterten RAM.


So, jetzt aber zu dem, was ich eigendlich sagen wollte:
>>"Das Dingen ist zwar schlecht"
>Wenn man keine Ahnung davon hat, sollte man sowas nicht sagen.
>Und wer sowas sagt, hat keine Ahnung, wovon er spricht.

Es gibt gute Gründe, den 8051 nicht so toll zu finden. Jemand deswegen
seine Ahnung abzusprechen, ist meiner Meinung nach schlechter Stil. Wo
sowas hinführt, kannst Du jeden Tag im Heise-Forum anschauen.

Versteh mich nicht falsch, ich finde viele Deiner Beiträge sehr
interessant und nützlich. Ein bischen fehlt aber ab und an die Toleranz
anderen Lösungen oder Auffassungen gegenüber.

Viele Grüße, Stefan

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Stefan,

ich hab da nur aus eigener Erfahrung gesprochen. Ich fand ihn nämlich
zu Anfang auch nicht so doll.

Erst, wenn man wirklich oft damit programmiert, merkt man auch, wie
clever er konstruiert ist, eben auf Steuerungsaufgaben optimiert.

Und die Zeichenausgabe auf ein Display ist auch keine Sache, wo High
Speed nötig ist, schließlich muß das ein Mensch ja auch ablesen können.
Da kann er also ruhig gemütlich zu Werke gehen.

Mir gefällt gerade diese Unterteilung optimal:
schnelles internes SRAM, um in Echtzeit zu steuern und langsames großes
XRAM oder Tabellen, um den langsamen Menschen zu bedienen.


Übrigends habe ich oben einen neuen Befehl kreiert, "DJNZ" geht nicht
indirekt nur direkt. Indirekt geht z.B. "DEC @R0" und "CJNE @R0,
#0".
Ist halt schon lange her, daß ich fast nur in C programmiere.


Peter

Autor: Quark (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi AVR, PIC und 8051 'er Fans,

könnt Ihr 2-xx (wohl ca. unter 10) "Streithäne" nicht mal gemeininsam
im wiki einen schönen Artikel/Tabelle mit den Vor- und Nachteilen der
von Euch gliebten/gehaßten MCs machen, die Ihr alle "unterschreiben"
könnt?
Gibt es schon, aber immer z.B. von einem AVR oder Pic oder xx Typen,
der wieder die Details des anderen MCs nicht kennt bzw. gar nicht
richtig bewerten kann.
Das bleibt natürlich immer subjektiv und unvollständig, aber ich lerne
sehr viel aus diesen Diskussionen, wann welcher MC gut ist und wann
nicht. So ein Artikel wäre echt prima, wenn er nicht nur von einem
kommt.

"Streitet" bitte weiter, so wird die Auswahl einfacher, aber bleibt
locker dabei. gg

Quark

P.S. sorry, rumsülzen macht einfach spaß ;-)

Autor: Stefan Kleinwort (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Peter:

>Mir gefällt gerade diese Unterteilung optimal:
>schnelles internes SRAM, um in Echtzeit zu steuern und langsames
großes
>XRAM oder Tabellen, um den langsamen Menschen zu bedienen.

;-)
Mir gings genau umgekehrt:
Mich hat es immer geärgert, dass die kleinen Programme, die nur ein
paar Bits schubsen mussten, wahnsinnig schnell liefen, und wenn das
Programm größer wurde, 16-Bit-Adressierung notwendig wurde etc., alles
viel langsamer und komplizierter wurde.

>Übrigends habe ich oben einen neuen Befehl kreiert, "DJNZ" geht
nicht
>indirekt nur direkt. Indirekt geht z.B. "DEC @R0" und "CJNE @R0,
>#0".
Wäre mir jetzt nicht aufgefallen :-) Ist halt schon eine Weile her: Ich
habe gerade mal nachgeschaut: die letzten 8051-Reste
(12-Kanal-Lichtendstufe, lief auf dem 80517) bei mir auf der Platte
sind von 92 ... Für die Appl. war er übrigens ideal, weil der UART die
250kbaud für DMX konnte.

Viele Grüße, Stefan

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.