Diskussion:Intel MCS-51

aus Wikipedia, der freien Enzyklopädie
Letzter Kommentar: vor 13 Jahren von JWBE in Abschnitt Überarbeitung von Varianten?
Zur Navigation springen Zur Suche springen

Ein paar gute Weblinks wären ganz nett :) --ChristianHujer 21:44, 3. Aug 2005 (CEST)

Aber bitte nur "Meta-links". Also z.B. keine direkten Links zu Firmen, sondern nur zu Seiten, die ihrerseits eine Übersicht enthalten! Grund hierfür: der 8051 ist einer der weitverbreitetsten 8 bit embedded CPUs. Alleine die 8051 FAQ (anno Domini 1997) http://www.faqs.org/faqs/microcontroller-faq/8051/ listet mehr als 100 Tools auf.

Wenn ich mich richtig erinnere, hatte der 8751 ein Glasfenster mit einem Eprom darunter. Gerade im Entwicklungsbereich war das sehr nützlich zum Austesten von Prototypen. --Nightflyer 15:56, 12. Jan 2006 (CET)

Entwicklungstools

[Quelltext bearbeiten]

Wer nicht auf Assembler oder C aus ist, kann auch Bascom verwenden. Sehr gutes (leider kostenpflichtiges) Tool mit Trial (PC Basic interpreter, kompiliert für x52 Serie). Bietet auch diverse Simulationen wie z.B. für LCD Module, I²C-Bus und für den der löten kann auch nen Programmer für die Atmel-Serie, die InSystemProgrammable sind (interner Flash). Find ich besser als die Pocket-Sonnenbank-Variante (sprich Eprom und UV-Licht) ^^ Aber Thx für den Beitrag :) --TommyB

In dem Zusammenhang auch mal der Hinweiss auf 8052-AH-BASIC den [1] -- MichaelFrey 08:30, 8. Jun. 2007 (CEST)Beantworten

Speicherorganisation

[Quelltext bearbeiten]

Vielleicht sollten wir noch ein paar Zeilen zur Speicherorganisation der MCS51-Familie verlieren. In meinen Augen ist diese nämlich ein Genuss, wenn man sich mal die (alten) PICs anschaut oder selbst einen modernen MSP430: Linearer Adressraum bis 64 k, SFR und Daten physikalisch voneinander getrennt, einheitliche Inerruptvektoren etc. --217.85.192.65 17:26, 23. Mär. 2007 (CET)Beantworten

Verschiebung nach MCS-51

[Quelltext bearbeiten]

Intel 8048 redirected auch auf MCS-48. Ich habe in den MCS-51-Artikel (der auf Intel 8051 redirected) wenigstens mal die Kategorie Mikrocontroller aufgenommen, damit in dieser wenigstens MCS-48 und MCS-51 vorkommt. Irgendwie sollten wir aber trotzdem schauen, dass wir da einheitlich sind. Was haltet ihr von einer Verschiedung des Artikels nach MCS-51 mit leichten Anpassungen an den (dann) neuen Titel? --Ruscsi 20:27, 5. Jun. 2007 (CEST)Beantworten

Der Artikel beschreibt nicht nur den 8051, sondern die ganze Mikrocontroller-Familie – und die heisst offiziell MCS-51. Die Verschiebung ist deshalb sinnvoll. --Quickfix 20:52, 5. Jun. 2007 (CEST)Beantworten
Ok. Umzug ist erledigt, Anpassung des Artikels ist erledigt und die Links aus der WP sind auch alle gefixt. Jetzt würde ich mir noch wünschen, dass ein engangierter Mensch sich dieses Artikels annimmt, denn da gäbe es noch viel zu tun ;-) --Ruscsi 10:03, 6. Jun. 2007 (CEST)Beantworten
Nenn mal ein paar Sachen die du gerne hier hättest.
Einen 80C31 habe ich schon in Asembler Programmiert und ich hab auch noch einiges an Doku dazu.
(Das Bild Bild:SAB-C515-LN.jpg zeigt übrigens mein Privates uP Board. Leider habe ich kein Schema dazu ...)
Ich will einfach vermeiden das ich etwas mache das hier sowieso nicht erwünscht ist (z.B. eine Befehlsreferenz)
-- MichaelFrey 17:49, 6. Jun. 2007 (CEST)Beantworten
Es fehlen sehr viele Mitglieder dieser Familie. Schon der 8052 ist hier garnicht repräsentiert, zumindest nur in der CMOS-Variante. Dann vielleicht noch ein paar Worte zur Befehlssatzarchitektur bzw. Mikroarchitektur, zu den Entwicklungswerkzeugen u.s.w. da ist noch einiges drin. Ich würde es ja selber machen, da ich die MCS-51-Familie sehr gut kenne, aber ich habe noch einige x86-CPU-Baustellen die auf Fertigstellung warten.--Ruscsi 23:20, 6. Jun. 2007 (CEST)Beantworten

Endianness

[Quelltext bearbeiten]

Im Artikel wird behauptet, der 8051 hätte eine little endian byte order. Keil hingegen behauptet das Gegenteil: "The 8051 is a big endian architecture (opposite of all other Intel chips). This means that the MSB comes first and the LSB comes last." Aus: http://www.keil.com/support/docs/1279.htm Diese Aussage ist, laut meinen bisherigen Erfahrungen, auch korrekt. Wer kann das - oder das Gegenteil - belegen?--194.121.90.163 10:25, 18. Jul. 2007 (CEST)Beantworten

Es gibt 2 Probleme bei der Bestimmung welche Endiannes vorliegt:
Erstens handelt es sich um eine 8 Bit Architektur mit nur einigen 16 Bit Befehlen.
Zweitens ist/war Intel Inkonsequent:
DPL hat Adresse 82, DPH 83 -> Niederwertiges Byte zuerst
TL0 hat Adresse 8A, TH0 8C -> Niederwertiges Byte zuerst
...
Ein weiteres Indiz ist der Call Befehl, der zuerst das Low und dann das High Byte auf den Stack legt.
Aber bei der 16 Bit Konstante von MOV DPTR,#konst16 und LJMP adr16 kommt aber das Highbyte zuerst.
Nun zu deinem Keil Link:
Da die MCS-51 Familie ja keine 16 Bit Befehle für's ROM besitzt, kann der Compiler die Daten eigentlich beliebig ablegen.
Kann sein das bei den Hochsprachen Compiler big Edian der Standard ist (weiss ich nicht).
Aber ehrlich gesagt hab ich langsam das Gefühl, das bei MCS51 einfach Willkür angewandt wurde.
Ich überlege mir, ob ich das mit der Edianness nicht einfach aus dem Artikel nehme weil es eben so Inkonsequent gehandhabt wird.
-- MichaelFrey 13:24, 18. Jul. 2007 (CEST)Beantworten
Die 16-Bit-Unterstützung für die 8051er-Familie kommt überwiegend durch den Compiler. Da der 8051 Daten und Programme separat ablegt (Harvard-Architektur) ist es auch nahezu egal, in welcher Reihenfolge das geschieht.--Rotkaeppchen68 19:50, 14. Feb. 2010 (CET)Beantworten

Überarbeitung von Varianten?

[Quelltext bearbeiten]

Der Abschnitt "Varianten" scheint mir sehr verbesserungsbedürftig. Dass am Beginn wohl alle jemals von Intel selbst angebotenen Varianten erläutert werden, ist nachvollziehbar. Ist das aber auch notwendig? Diesen ganzen Abschnitt gibt es z.B. in der englischen Wikipedia überhaupt nicht. Es gibt wohl mehr als 20 Halbleiterhersteller, die Produkte der Familie angeboten haben. Dass in der deutschen Wikipedia dann Beispiele genannt werden von Firmen, die im deutschsprachigen Raum Derivate entwickelt haben, ist ebenfalls verständlich. Das erklärt den Schwerpunkt auf Siemens/Infineon und die Nennung von Atmel (damals Temic). Weshalb dann aber Philips/NXP überhaupt nicht erwähnt wird, die die meisten Derivate der Familie angeboten hatten/haben (sogar in SO8/DIL8-Gehäusen) - siehe auch NXP "Selection Guide" (bitte in Adressleiste des Browsers kopieren, funktioniert wegen der Parameter nicht als Link): www.nxp.com/#/ps/ps=[i=45995]|pp=[t=pfp,i=45995] - und vieles in Deutschland und der Schweiz entwickelt hatten, ist nicht nachvollziehbar. Bevor man aber anfängt, diesen Teil "aufzubohren", würde ich gerne anregen, den Abschnitt evtl. ganz zu entfernen. -- Wosch21149 18:19, 1. Jan. 2011 (CET)Beantworten

Im besagten Abschnitt ist die erste Tabelle natürlich die wichtigste, da sie einen m.E. nahezu vollständigen Überblick über die "Standardvarianten" bringt. Dass der Rest unvollständig ist und eher "organisch" gewachsen, ist halt ein Zwischenstand. Dass es den Abschnitt in der englischen Wikipedia nicht gibt, ist kein stichhaltiges Argument. Der dortige Artikel ist demnach halt noch nicht so stark ausgebaut. Fazit: Ein Entfernen nur aufgrund dieser Unebenheiten stellt keine Verbesserung dar. Wenn Du den Rest präzisieren kannst, ist Deine Mitarbeit gerne gesehen. Nur zu! --JWBE 18:43, 1. Jan. 2011 (CET)Beantworten