Forum: Mikrocontroller und Digitale Elektronik 8051 Website


von Murray R. Van Luyn (Gast)


Lesenswert?

Hallo,

Please enjoy my website for 8051 microcontrollers.

http://members.iinet.net.au/~vanluynm/

Regards,
Murray R. Van Luyn.

von ab cd (Gast)


Lesenswert?

great site

von Heiko K. (Gast)


Lesenswert?

Das sieht eher nach Selbst-Beweihräucherung aus...

von Chris (Gast)


Lesenswert?

Mal ne Prinzipielle Frage:

Wozu heutzutage noch auf den steinalten 8051 setzen wenn doch die AVR
Mikrocontroller meist um den Faktor 12 schneller und genauso billig
sind?

von der inoffizielle WM-Rahul (Gast)


Lesenswert?

Weil der 8051 erstens nicht steinalt ist (der 801 selbst vielleicht,
aber der Kern/Architektur wird immer noch für ne Menge hochaktuelle
Controller benutzt) und der Einstieg in die Programierung wird an
diversen Hochschulen praktiziert. Ausserdem wird eine Firma kaum auf
einen neuen Controller umsteigen, bloß weil er neu (und/oder billiger
ist, wenn man von diesem Controller schon diverse verbaut hat.
Schlieslich hängt da eine Menge firminternes KnowHow dran...

von SIGINT (Gast)


Lesenswert?

Es gibt aber noch ein besseres Argument fuer den 8051:
  Der Controller wird von vielen verschiedenen Herstellern angeboten.
Setzt einer den Controllertyp ab, so hat man noch andere Hersteller zur
auswahl. Bei Microchip, Atmel und Co haette man dann grosse Probleme.

Gruss,
  SIGINT

von Chris (Gast)


Lesenswert?

In Firmen die entsprechende alte Schaltungen haben und wo es sehr
wichtig ist das es auch in 10-15 Jahren noch "Ersatzteile" gibt seh
ich das ja ein aber im Hausgebrauch...ich weiß ja nicht.. :P

von der inoffizielle WM-Rahul (Gast)


Lesenswert?

Guck mal auf Internetseiten wie maxim-ic.com o.ä. nach: Es gibt Firmen,
die Controller auf Basis des 8051 entwickeln, die ohne internen
Frequenzteiler arbeiten und das bei 24MHz.
Dass der 8051 immer noch so verbreitet ist, liegt daran, dass er sich
bewährt hat, und sich viele Leute damit auskennen.
Ausserdem hat er Vorteile (Interrupt-Prioritäten), die man beim AVR
vermisst.
Einen Blick über den Tellerrand zu werfen hat noch niemandem
geschadet...

von Chris (Gast)


Lesenswert?

Ich habe mich im Studium ein Semester mit dem 80C515 von
Siemens(Infineon) beschäftigt der ja ein 8051 + Peripherie ist. Das es
auch 8051 kompatible Controller gibt die pro Takt ein Befehl ausführen
können wußte ich nicht. Aber im Grunde ist das ja dann kein echter 8051
im eigentlichen Sinne mehr. ;)

von Peter D. (peda)


Lesenswert?

@Chris,

"Aber im Grunde ist das ja dann kein echter 8051 im eigentlichen Sinne
mehr. ;)"

Warum nicht ?

Alle 8051-Derivate haben den gleichen Befehlssatz und Du kannst sie
alle mit dem gleichen Assembler oder Compiler programmieren.
In der Regel sitzen auch die ersten 5 Interruptvektoren und die
Standard-SFRs an der gleichen Stelle, d.h. sie sind binärkompatibel.

Daher sind es echte 8051.

Eine Ausnahme sind die 8051 mit über 64kB Adreßraum. Bis zu 64kB
arbeiten sie wie echte 8051. Erst darüber hinaus muß man dann
erweiterte Befehle benutzen.


Peter

von Joe (Gast)


Lesenswert?

neee, nicht schon wieder, wer ist der beste, größte, schönste... lernt
mal erst und meckert dann ;-))

von Persian (Gast)


Lesenswert?

Das seh ich ähnlich wie Joe. Es nervt schon extrem, wenn man im Forum
einen thread bzgl 8051ern startet und die ersten 4 Antworten sind
"Nimm doch nen AVR, weil...". 8051er sind halt einfach die am
einfachsten zu verstehenden uC und ich kann sie jedem Anfänger nur ans
Herz legen! Ich schlag mich seit Wochen zum ersten mal mit einem ATMEGA
rum und es scheitert schon an der Bedieung von WINAVR...

von Sami Bautz (Gast)


Lesenswert?

warum 8051er?!
Also ich muss sagen, das ich mit PIC's angefangen habe.
RISC-Satz und schnelles vorwärtskommen ist schon toll!
Aber, nun nach einigen Jahren wollte ich den CISC_Satz
auch mal einstudieren.
So bin ich auf den 89AT8952 gestossen; alt aber geil!
Und ich habe Spass daran! Finde es auch toll das es ein
8051er Thema giebt, da kann ich rummstöbern und einiges lernen.

Danke Leute!

von Barti (Gast)


Lesenswert?

Also ich habe Einblicke in 8051 im Studium gehabt. Habe diese, entgegen
meiner Überzeugung für C, in Assembler programmieren müssen. Zuvor mit
AVRs angefangen, diese aber nur in C programmiert. Der Befehlssatz von
8051 ist relativ einfach verständlich, bin recht gut damit zurecht
gekommen. Als ich dann mal etwas für den AVR in Assembler programmieren
wollte, bin ich irgendwie nicht auf Anhieb mit dem Befehlssatz des AVR
zurecht gekommen, zumal dieser bis zu 130 Befehle hat. Dafür muß ich
sagen, dass die AVRs sich sehr einfach in System programmieren lassen,
aber 8051 die das können gibt es ja auch genug. Und an der
Geschwindigkeit soll es nicht hängen, wenn ich da an die 8051er von
Maxim denke, die ohne internen Teiler mit 33 MHz laufen, oder die von
Silabs mit 100MHz(ok, der Flash kommt net hinterher, man sieht aber
dass es weiterentwickelt wurde).

MfG Barti

von Propper (Gast)


Lesenswert?

> , zumal dieser bis zu 130 Befehle hat.

Ist das nicht Klasse? Damit kannst Du beispielsweise sofort testen, ob
ein Wert nun größer oder kleiner als ein anderer ist. Das geht dann
soagr wahlweise mit oder ohne Vorzeichen. Mich hat das fehlende N-Flag
des 8051 jedenfalls hart getroffen. Bevor es ich da richtig loslegen
konnte, war ich erstmal einige Zeit mit dem Schreiben von Makros
beschäftigt.

Für Bit-Schiebereien mag der '51 vielleicht ganz gut sein. Allerdings
wage ich die Behauptung, daß diese mit zunehmender Programm-Größe
prozentual weniger genutzt werden. Und da moderne Controller sowieso
für alle erdenklichen Schnittstellen die Peripherie direkt in Hardware
gegossen mitbringen, lässt diese Befehle auch nicht so sehr viel
häufiger genutzt werden.

Die Stack-Beschränkung auf weit weniger als 256 Byte gefällt mir auch
irgendwie nicht so sehr, usw..

Nein, wenn es da nicht die knackigen Dingers von SiLabs geben würde,
hätte ich den 8051 ganz sicher gemieden. Aber: Ich habe erst einige
andere Kerne kennengelernt und bin von daher natürlich auch etwas
verblendet.

von A.K. (Gast)


Lesenswert?

8051 wurde Ende der 70er entwickelt, als jedes Gate teuer war und kein
Mensch einen Microprozessor in C programmierte, erst recht keinen
Microcontroller. Sondern meist Assembler, oder Intels Eigenzüchtung
PLM/51.

Zwar wurden ein paar Designfehler von Intels erstem Controller 8048
vermieden, aber der 8051 war eindeutig auf begrenzte Kapazität
konzipiert. Daher rührt die Beschränkung auf 256 Byte leidlich einfach
adressierbares RAM.

Dass dieses Teil nun fast 3 Jahrzehnte überlebt hat, mit
RAM-Kapazitäten von zig KB und ROMs mit 1MB, das war nie vorgesehen.
Dafür hatte Intel später andere Controller rausgebracht, beispielsweise
8096. Aber kennt jemand den 8096?

Es kam also wie üblich: Was absichtlich begrenzt konzipiert war (8051,
8086) überlebt alle Nachfolger, und seien sie noch so viel besser.
Schönheitspreise gewinnen sie beide nicht, aber es gibt dennoch für
beide sehr gute Gründe sie einzusetzen.

Man kann es auch schlimmer kriegen: Immerhin hat 8051 lineare
Adressräume, bis 64KB Code kein Banking und die immer gleiche
Architektur von klein bis gross (dieser kleine Seitenhieb auf Microchip
musste jetzt einfach sein ;-).

Ich finde übrigens die Grösse einen Befehlssatzes nebensächlich. Die
Übersichtlichkeit und Lesbarkeit wichtiger. Das ist noch so ein Ding,
was mich an den PICs nervt: der "d" Operand eines Befehls. Eigentlich
müssten das im Assembler jeweils zwei Befehle sein, wäre m.E. wesentlich
lesbarer, aber dann kann man nicht mehr mit "nur 34 Befehle" angeben.

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
Noch kein Account? Hier anmelden.