Hallo!
Ich suche seit Tagen/Wochen im Internet rum und finde immer wieder diese
Seite. Viele Leute hatten ähnliche Fragen, doch daraus wurde ich nie
schlau. Deshalb entschuldigt bitte die ggf. vierte oder fünfte gleiche
Frage, aber vllt. antwortet ja doch jemand ;)
Ich bin 18-jähriger Schüler und in Zukunft wird das Thema
"Microcontroller" im Bezug auf die 8051-Familie behandelt werden.
Deshalb und aus eigenem Interesse würde ich gerne zuhause selbst
rumbasteln, sowie in vernünftiger Literatur weiteres erfahren.
Jedoch das einzige was ich weiß: Wir behandeln Microcontroller der
8051-Familie und programmieren in C. Sonst weiß ich nichts und werde
deshalb auch aus den vielen Google-Ergebnissen nicht wirklich schlau.
Könnt ihr mir für genau dieses Thema Literatur empfehlen? Außerdem bin
ich auf der Suche nach der Hardware um das ganze auch praktisch
auszutesten.. Wo bekomme ich das und was genau brauche ich überhaupt?
LG Andy :)
Wenn das Ganze in der Schule behandelt wird dann lass es auf dich
zukommen. Die Frage ist so umfangreich das man keine schnelle Antwort
geben kann.
Besuchst du eine Regelschule (Gym.) oder eine Berufsschule ?
Grundlagen MC's ist ein Thema, C ein anderes, hast du schon irgendwelche
Erfahrungen ? Auf welcher Seite wird ein Lötkolben warm ?
Sorry das ich soviel frage aber ich möchte abschätzen welche Antwort
helfen kann.
Wenn du englisch kannst (allerdings etwas mehr als Schulenglisch) dann
z.B. hier:
http://www.8052.com/tutorial.phtml
Steinig ist der Weg nicht aber du ersparst dir viele Umwege wenn man den
Weg dahin strukturiert und das ist Aufgabe der Lehrer.
Vielen Dank für die schnelle Antwort :)
Also nach den Sommerferien komme ich in die Jgst. 13 eines Berufskolleg,
wo ich dann mein Vollabitur (mit Schwerpunkt [nicht Fachrichtung, kein
Fachabi] Elektrotechnik) mache. Es ist also im Prinzip eine Regelschule
;)
Von Microcontrollern habe ich noch GAR keine Ahnung, generelle
Software(!)-Programmierung (mit Java/C#) habe ich ein bisschen Ahnung.
Seit der Jgst. 11 habe ich Elektrotechnik in der Schule, also diese
Grundlagen sind schon da. Auch diese Kosmos electronic
Experimentierkästen (XN1000, XN2000 und XN3000) habe ich größtenteil
durchgearbeitet.
Der englischen Sprache bin ich nur in der Schule und im Internet bei
PC-Problemen über den Weg gelaufen. Bin also kein geborener Engländer ;)
Vielleicht liest du dich hier ein wenig ein:
http://www.batronix.com/elektronik/know-how/mikrocontroller-technik.shtml
Und wenn du eine konkrete Frage hast dann sag bescheid. Ansonsten, wie
gesagt, laß es auf dich zukommen und komm dann mit deinen Fragen.
Vielleicht kannst du ja ein paar Unterlagen, von Schülern im Jahrgang
über dir, bekommen. Dann könnte man sich schonmal mit der Hardware
vertraut machen.
Mit der Hardware vertraut machen: Genau das will ich ja, aber den
Jahrgang über mir gibt es nicht ;)
Die Abiturprüfungen waren gerade und wir sind der erste Jahrgang, der
was mit Microcontrollern macht (dank Zentralabitur, nicht dass ich das
sonderlich schlecht fände, aber hey ;) )
Also Hardware und Literatur kann man mir -noch- nicht empfehlen?
Doch, kann man. Allerdings ist es ohne Hilfe vielleicht ein bischen Viel
!?
Das Mikrokontroller Kochbuch von Andreas Roth z.B.
Als C Compiler kannst du die Keil Eval Version verwenden (wahrscheinlich
werdet ihr diese in der Schule verwenden):
http://www.keil.com/c51/
oder den freien SDCC:
http://sdcc.sourceforge.net/
wobei wir wieder bei englisch sind ;-))
Bauteile gibts bei Reichelt, ebenso fertige Testboards:
http://www.reichelt.de/
Allerdings glaube ich das die Schule derartiges bereit hält ;-)) Also,
Eile mit Weile.
Ich empfehle dir das buch
Das Mikrocontroller Kochbuch
von andreas roth
isbn 3-88322-225-9
habs 4 mal durchlesen müssen aber zeit dem sitzt es.
c.u
Commtel
(p.s wenn noch fragen hast schreibst mir an Hasis55 ät hotmail punkt
com)
Hi,
Datenblätter und sonstige Doku sind praktisch immer auf Englisch, also
versuche es nicht zu vermeiden sondern eigne Dir das Fachenglisch gleich
mit an.
Gruß,
Norbert
Ich werde es nicht vermeiden, zumal ich da womöglich beruflich später
mal rein will.. Da werde ich nicht umhin kommen.. Aber wenn ich mir nen
Text durchlese, den ich aufgrund der vielen neuen Begriffe im Deutschen
nur schwer verstehe, dann macht es keinen Sinn, dass ganze direkt im
Englischen zu versuchen ;)
Ich werde mich mal um o.g. Buch bemühen.. Unser Lehrer sagte, dass das
Buch "Mikrocomputertechnik (Mit Mikrocontrollern der Familie 8051) von
Bernd-Dieter Schaaf (ISBN: 3-446-40718-9) bei ihm im Regel stehe, er
damit aber noch nicht geabreitet hätte. Hat da jemand Erfahrung mit?
Meine Schule wird derartiges Zeugs bereithalten, aber ich will ja auch
zuhause damit arbeiten, Zugang zur Materie bekommen, das Vertiefen etc.
pp.
Bauteile bzw. komplette Boards: Ist es da eigentlich völlig egal, was
man nimmt, (sprich: das günstigste) oder habt ihr da eine Empfehlung?
Vielen lieben Dank für die vielen Antworten. Toll hier :)
also wir wurden in der schule ins kalte wasser geworfen mit einem
infineon 505c!meiner meinung nach hast du nur eine chance mit einem
praktischen einstieg! hatte ne menge literatur, unter anderem ein nettes
µC hadbuch und scripte diverser profs, aber erst die praxis hat sich
bewährt!
wenn du dich wirklich vorab damit beschäftigen willst, dann besorg dir
ein fertiges board/bausatz und teste teste teste!
ich habe es vorgezogen erstmal die einführung im semester abzuwarten und
mich dann privat damit zu beschäftigt! ist meiner meinung nach der
einfachste weg!
Für den praktischen Einstieg nimm am besten einen 8051 mit eingebautem
Bootloader, z.B. AT89C51ED2 und bau ihn Dir auf ne Uniplatine:
Beitrag "8051 Entwicklungsboard"
Peter
Naja, wenn du eh C lernen wirst und dich vorher mit der Hardware bekannt
machen willst, wäre Assembler defintiv die bessere Wahl. Da hast du eher
nen Bezug zur Maschine. Immer nützlich und du lernst C erst richtig zu
schätzen ;)
Da gibts von Andreas Roth das "Mikrokontroller Kochbuch". Damit hab ich
ganz gute Lernerfolge erzielt.
Hi Andy,
welches Board du nimmst ist meiner Meinung nach zweitrangig:
Die 8051er sind praktisch alle identisch zu programmieren, nur die
vorhandene Hardware (I2C, AD-Wandler, Anzahl IO-Port, etc.) ist
unterschiedlich. Ich hab mir von einem Bekannten in einen AT89C52 einen
Bootloader und Monitor brennen lassen (PAULMON2) und hab dann ein Board
mit externem Flash und SRAM gebastelt. Damit kann man schon gut
rumspielen, aber leider hab ich zu wenig Features eingebaut (nur 6 IOs
sind frei und sonst keine Zusatzhardware) was aber bei entsprechender
Planung sehr einfach zu ändern ist.
Es gibt 8051er mit internem XRAM und Flash... die sind zum basteln
optimal.
Gruß,
SIGINT
Hi,
oh mein Gott. Jetzt versteh ich gar nichts mehr xD
Also das Mikrocontroller Kochbuch werde ich mir demnächst zulegen.
Hardwaremäßig bin ich irgendwie noch immer nicht weiter. Hab bei
Reichelt nach dem AT89C51ED2 gesucht und 2 Ergebnisse bekommen, bei
denen ich den Unterschied nicht verstehe (nur mehr dieser II/O Pins und
teurer).
Kann mir nicht "einfach" jemand sagen, was genau ich bestellen sollte,
womit ich dann zusammen mit o.g. Kochbuch vom Andreas Roth arbeiten,
lernen und verstehen kann? Der Beitrag von SIGINT hat mich jetzt nämlich
vollends verwirrt g
LG Andy
moin moin,
den ED2 gibt es als "große" und als "kleine" Varante.
Für Testaufbauten nehme ich den ED2 in PLCC68, der hat 2 Ports mehr und
darüber läuft dann das Debugging. Die 4 originalen Ports stehen dann für
die jeweilige Anwendung bereit. Das sind mir die paar € wert.
In DIL40 ist dagegen die (UNI-)Leiterplatte einfacher.
Mit Gruß Pieter
Soweit ich weiß, gibt es Kosmos-Experimentierkästen zum Thema
Mikrocontroller. Versuchs mal damit.
Wenn du immer noch nicht zurecht kommst, laß es dir von deinen Kindern
erklären. Oder von den Nachbarskindern, wenn du selbst das Kinderkriegen
nicht hinbekommen hast.
Oh... 18-jährig, vielleicht haste ja kleine Geschwister...
der beitrag von sigint geht schon etwas weiter da komsmt du später hin.
I/O Pins sind digitale ein oder ausgänge vom µC, damit kannst du zum
beispiel LEDs an oder ausschalten. oder aber du baust einen taster rann.
dann kannst du irgendwas im µC schalten.
Die idee mit den Bootloader ist nicht schlecht, weil du damit besonders
leicht dein programm in den µC bekommst. Das kann sonst je nach modell
mehr oder weniger schwer sein.
schau dir am besten mal das datenblatt an, des oben erwähnten µC an
http://www.atmel.com/dyn/products/product_card.asp?part_id=3045
kennst du dich schon mit digital-ICs aus? (und/and, nand, oder/or, xor
und sowas)
Nicht ärgern lassen. Einfach langsam angehen.
Du hast anscheinend zwei Probleme:
- C lernen
- Microcontroller lernen.
Kannst du löten? Dann wäre die Variante von Peter Dannegger für dich
brauchbar. Da reicht der kleine AT89C51ED2.
Ansonsten wäre ein AT89S52 mit einem ISP-Programmer und einem Steckbrett
eine Möglichkeit.
Die Variante von Silint ist etwas ähnliches wie vom Peter, allerdings
muss in dem Controller vorher ein Hilfsprogramm rein, damit er dann
Programme von der seriellen Schnittstelle ladet. Deswegen heisst das
Bootloader (ladet etwas beim booten).
Als erstes wäre ein Buch oder eine Doku am besten, die dir erklärt, was
der Controller wie macht. Das Kochbuch liest sich nicht schlecht,
bezieht sich aber auf eine Art von Assembler. Ist aber für den Anfang
gut.
Das Problem ist, dass die Familie des 8051 groß und alt ist. Es gibt
immer noch so viele Varianten, deren Kern der gleiche ist, aber denen
sind dann noch viel Extra-Funktionen hinzu gefügt worden.
Wie immer klein anfangen und wachsen.
Gruß Elektrikser
@Andy
Ich rate Dir zum Selbstbau einer Testplatine ab, weil Du weder das
Werkzeug noch die nötige Ausrüstung sowie Erfahrung hast. Denke ich mal.
Wenn einer der Werten Herren vielleicht so gütig wäre eine Tesplatine
herzustellen, zum Erschwinglichen Preis, wäre dies erstmal der bessere
Weg.
Dir fehlt ja noch die Software! Da ist ertmal zu entscheiden Assembler
oder C.
Ich rate zu Assembler damit Du gleich ein besseres verständis dafür
bekommst.
http://www.progforum.com/ auf dieser Seite kannst Du einen Assembler für
die ersten kleinen Versuche herunterladen
Der enthält auch einen guten Debugger so kannst Du ohne µC deine ersten
schritte machen.
Ich benutze dieses Programm seit einiger Zeit und ist sehr zu empfehlen.
Noch ein Buch! Das große 51er Anwendungsbuch ISBN 3-7723-5419-X
Nicht abschrecken lassen vondort beschriebenen 8032 ist ja auch ein
51er.
Gruß
ahja
ein wenig ASM kann wirklich nciht schaden. damit bekommst du einen guten
einblick in die hardware eines µC. also was sind register, was muss der
µC machen wenn du einen Ausgang schalten möchtest, wie aufwendig sind
(IF ELSE/FOR/While) strukturen und das wichtigste was sind und wie
funktionieren Interrupts.
guck dir mal die Datei von Florian Bratschi ich schätze die ist mit
eagle gemacht. kann ich mir im moment leider nicht angucken. vieleicht
ist es garnicht so aufwendig.
ui, ganz viele antworten.. feinfein..
Also ein Steckbrett zu löten, kriege ich so gerade eben noch hin ;) Ich
bin nicht ganz neu auf dem Gebiet der Elektronik..
Zu digitalen ICs: Wieviel muss man kennen, um sich "aus zu kennen"? Also
in der Theorie habe ich damit schon gearbeitet. 3 Eingangssignale
vergleichen, je nach Abweichung entsprechend ein Ausgangssignal
ausgeben. Wir haben das Thema auch in der Schule behandelt, wobei ich
nicht weiß, wieviel es da noch gibt, was wir nicht behandelt haben.
Wieso? Hat das irgendeinen größeren Bezug zu Microcontrollern?
Müller & Walz Fachbuch (Vorschlag von MISZOU) war auch auf meiner
Vorschlagsliste. Allerdings handelt dieses von Mikroprozessoren, welche
scheinbar nicht viel mit Mikrocontrollern zu tun haben (oder?).
Gibt es keine Aufbaupläne von Testplatinen o.ä., die mit dem o.g.
AT89C51ED2 zusammenarbeiten? Den Zusammenbau bekomm ich hin..
Der Schaltplan wäre im Link von Peter Dannegger drin. Wie man den
Controller zum Leben bringt auch.
Microprozessor: CPU mit Rechenwerk, ohne Speicher
Microcontroller: CPU, ALU (arithmethic logic unit), RAM, ROM, IOs,...
oh entschuldigung, ich hatte die PDF-Datei in Peters Topic nicht gesehen
und mir deshalb gedacht "hier steht nichts, was mich irgendwie
weiterbringt".
Ich glaub, ich bestelle mir jetzt erstmal das oft beschworene Kochbuch
vom Andreas Roth und versuche inzwischen Danneggers Schaltplan zu
verstehen ;)
Danke :)
ich kann dir sonst noch empfehlen ein board zu bauen, welches mon51
kompatibel ist, dann kannst du deine software z.b mit keil uvision 3
proggen, und wenn du merkst, dass ein fehler drin ist, kannst du break
points setzen, oder singel step ausführen. das hat mir schon enorm
geholfen.
gruss
Hi
@ Andy halt dich nicht zu sehr an den Begriffen auf.
"Dazu wird im Hauptteil des Buches ein moderner, sehr weit verbreiteter
Mikrocontroller- der 80C537 aus der schon lange existierenden
8051-Familie -verwendet...."
War mein erstes Buch über MC, Hardware wird erklärt, ASM und C wird
verwendet, Beispiele...
Gruß MISZOU
Und wie soll ich ein mon51-kompatibles board bauen, wenn ich weder weiß,
was das ist, was man dafür benötigt, noch wie man es aufbaut?
Es gibt ja auch keine konkreten Kaufempfehlungen für Fertig-Boards...
Hmmm,
das Problem wird sein, daß eventuell wenige hier im Forum mit fertigen
Boards arbeiten. Ein eigenes Board ist sehr viel preiswerter als was
fertiges und mit entsprechendem Vorwissen ganz einfach zu bauen. Ich hab
mein Board z.B. mit Fädeltechnik auf einer Lochrasterkarte aufgebaut...
die ICs hab ich irgendwo aus den Schrott (die 8051er sind sehr oft in
alten Geräten zu finden) und die Leiterkarte lag noch rum: Kosten ca.
5Euro. (für die Chips und die Getränke)
Schau dir mal folgende Seite an:
http://www.pjrc.com/tech/8051/paulmon2.html
Unter "Manual" findest du ein paar Schaltungen...
Nützlich ist noch folgendes immer im Hinterkopf zu behalten:
Die 8051er sind eine Mikrocontrollerfamilie(auch bekannt als MCS-51)...
es gibt also viele Hersteller, die ICs mit den unterschiedlichsten
Bezeichnungen herstellen. Allerdings sollten alle annähernd 100%
kompatibel zum "Ur"- 8051er sein. Hier mal der Wikipediaeintrag:
http://de.wikipedia.org/wiki/MCS-51
Schau dir mal "bekannteste Varianten" an!
Hier gibts eine riesen Liste mit den zur Zeit verfügbaren 8051
Derivaten:
http://www.8052.com/chips.phtml
Von der Softwareseite sind alle identisch... du musst also nur einmal C
oder Assembler lernen und kannst dann alle Derivate programmieren. Nur
die integrierten Hardwaremodule unterscheiden sich (Ein-/Ausgabepins,
Analog/Digital-Wandler, RAM,ROM, etc.)
Wenn du nach Schaltungen und Tutorials suchen willst, dann kannst du
nach folgenden Stichworten suchen: "MCS-51",
"8051","8052","8031","8032","89c52",etc.
Ich hoffe jetzt nicht noch mehr Verwirrung gestiftet zu haben.
Gruß,
SIGINT
Hallo,
heute ist das Buch "Das Mikrocontroller Kochbuch MCS51" von Andreas Roth
endlich angekommen.
Scheint interessant zu werden, leider finde ich keinen Bezug auf ein
Hardware-Testboard, sowie Übertragungstechniken vom PC zum
Mikrocontroller...
Hat da jmd. einen passenden Link parat?
Hallo,
wir benutzen hier in der Schule die 8051er-Boards von PalmTec
(www.palmtec.de). Sind sehr leistungsfähig und gute Lehrbücher dazu
gibts im Elektor-Verlag. Sind auch von der PAL empfohlen worden.
Viel Spaß
Eumel
AVR und 8051 (MCS-51) sind zwei unterschiedliche Prozessorarchitekturen.
Der 8051 ist im Hobby-Bereich mehr oder weniger von den AVR-Controllern
verdrängt worden. Preiswerte AVR-Entwicklungsboards gibt wie Sand am
Meer, bei 8051-Boards ist das Angebot offenbar stark zurückgegangen.
Wenn es Dir um Mikrocontroller-Grundlagen geht, kannst Du auch mit dem
AVR anfangen. Das Pollin-Board sollte dazu ausreichend sein
(Controller z.B. ATMega32 und ein Netzteil mitbestellen).
Nachdem Du Dich in den AVR eingearbeitet hast und die grundlegende
Funktionsweise verstanden hast, sollte ein Umstieg auf den 8051
kein Problem sein.
Ich weiß jetzt ehrlich nicht, worin das Problem liegt, nen 40-Pinner
AT89C51ED2 und MAX202 auf ne Unikarte zu pinnen, ein paar Cs und den
Quarz dazu, 5V ran und los gehts.
Peter
Hallo
Also jetzt soll er auch noch nen Weg übern AVR nehmen.
und das als Anfänger.
Was soll das?
tsss.
verschlägt mir echt die Sprache.
Ich selbst hatte schon boards vom weidner und vom rakers.
Allerdings sind die Günstigen vom rakers.de nur mit pfostenleisten
bestückt und du mußt Taster LEDS und so selber mit zusätzlichen Platinen
ranhängen.Schau es dir halt mal an.
Vorsicht vor den Boards mit dem Siemens Controller,die C5xx und die
80535,80537 sind abgekündigt.
Ich selbst hab immer mit Eprom-Emulator (Platine die dem MC einen
Programmspeicher vortäuscht) und später mit Bootloader gearbeitet.
Im Moment hab ich flash zum Ausprobieren und muß sagen daß die
Übertragung
in einen Eprom-Emulator oder über Bootloader ERHEBLICH schneller von
statten geht.
Ich kann dir auch die kostenlose MIDE sehr empfehlen. Da sind auch
zwei Simulatoren dabei bis 2 kByte. Mit denen kannst du mal Anfangen
was zu programmieren ohne eine Hardware zu haben.
Gruß
Nun Ja, ein Kommerzielles E-Board läuft einfach und ist fehlertollerant.
Bei der Version "Marke Eigenbau", sucht man schon mal Hardwarefehler,
obwohl es SW Problem ist, vice versa.
Ein Anfänger wird nie ein 100% Developer Board hinkriegen (Kondensatoren
vergessen, Pull Up/Down am Reset, Bürdekapapazität falsch).
Aus diesem Grunde ist eben daß u.a. STK500 (AVR bezogen) so beliebt.
naja, aber er schrieb ja zu Anfangs,daß er
in C mit dem 8051 arbeiten wird.
Also ich würde sagen,daß er sich dann auch auf einen 51er
konzentrieren sollte. Wenn er den mal verstanden hat,kann er ja
immernoch
so nebenbei übern Tellerrand schauen.
Sollte er doch am Besten in seinem Buch erst mal lesen.
vielleicht mit MIDE programmieren und simulieren und mal abwarten,
was der Herr Lehrer dann so verlangt/empfielt.
Du hast mit der Fehlerfreiheit des stk500 sicher Recht,aber es gibt
auch fehlerfreie 51 Boards zu kaufen.
Solle er mal googeln.
Gruß
Andi