Forum: Mikrocontroller und Digitale Elektronik Gerät für die ersten Schritte


von Johannes F. (bastel-johannes)


Lesenswert?

Sehr geehrte Damen und Herren,

ich möchte in die Welt der Mikrocontroller und -computer einsteigen. 
Dazu habe ich mich in der Theorie schon etwas mit der Programmiersprache 
C auseinandergesetzt und will jetzt auch mal etwas in der Praxis sehen. 
Doch die Auswahl an Mikrocontrollern ist riesig und einer meiner 
Bekannten, der in diesem Bereich studiert hat, empfiehlt mir für den 
Einstieg eher Mikrocomputer wie Arduino,als Mikrocontroller wie die 
PICs. Mein Budget ist leider sehr beschränkt und daher habe ich mir 
diesen Arduino herausgesucht:
http://www.banggood.com/Wholesale-Arduino-Compatible-R3-UNO-ATmega16U2-AVR-USB-Board-p-68537.html
Wäre dieser für einen Einstieg in die Materie tauglich?
Ich danke schon einmal für Ihre Antworten.


Mit freundlichen Grüßen, Johannes F.

von San L. (zwillingsfreunde)


Lesenswert?

Und schon wieder die selbe Frage. Das Gefühlte 3895734 mal in den 
letzten 24 Stunden.

Benutz die Suchfunktion des Forums und lies dich ein. Findest genug 
Informationen.

Um's kurz zu machen:

Johannes F. schrieb:
> Wäre dieser für einen Einstieg in die Materie tauglich?

Ja.

von Johannes F. (bastel-johannes)


Lesenswert?

Sehr geehrter San Lue,

vielen Dank für Ihre Antwort, ich werde den Arduino kaufen und testen 
mit ein paar winzigen "Projekten" und gegebenenfalls hier fragen, wenn 
ich nicht mehr weiter kommen werde.


Mit freundlichen Grüßen, Johannes F.

von San L. (zwillingsfreunde)


Lesenswert?

Johannes F. schrieb:
> vielen Dank für Ihre Antwort, ich werde den Arduino kaufen und testen
> mit ein paar winzigen "Projekten" und gegebenenfalls hier fragen, wenn
> ich nicht mehr weiter kommen werde.

Sei dir einfach bewusst: Ein Arduino zeigt dir vielleicht auf was ein 
Mikrocontroller alles so kann und dank der IDE kann man auch relativ 
schnell mit wenig Erfahrungen grössere Dinge machen...

Allerdings bringt er dir kaum einen Einblick in die "richtige" 
Mikrocontroller welt, gerade wenn du die Arduino Entwicklungsumgebung 
mit all deren Libs verwendest.

Allerdings lässt sich das board auch ohne die IDE verwenden, somit 
kannst du später auch auf die Arduino IDE verzichten. Somit ist das 
Board auf jedenfall keine Fehlinvestition.

von Johannes F. (bastel-johannes)


Lesenswert?

Sehr geehrter San Lue,

vielen Dank für Ihre ausführlichere Antwort. Doch was ich mich frage, ob 
ich den Mikrocontroller, der auf der Platine von Banggood aufgesteckt 
ist, auch bei Reichelt kaufen kann. Welcher Mikrocontroller ist da 
aufgesteckt? In der Artikelbeschreibung von Banggood wird ATmega16U2 
erwähnt, doch die Suche danach ergab bei Reichelt keinen, passenden 
Treffer.


Mit freundlichen Grüßen, Johannes F.

von oldmax (Gast)


Lesenswert?

Hi
Wenn es nur darum geht, etwasa zu programmieren und sich in einer 
Sprache einzuarbeiten, bleib erst einmal auf dem PC. Programmier ein 
Adressbuch oder eine vereinsverwaltung, was auch immer. So bekommst du 
auf jeden Fall erst einmal ein Gerfühl für eine Programmiersprache und 
in vielen Fällen kostet es nicht mal was. Mit einem µC ohne Grundwissen 
im Programmieren zu beginnen, möglicherweise auch noch ohne 
Elektronikkenntnisse ist m.E. rausgeschmissen Geld. Das dauert keine 
Woche und du bist so frustriert, das du das Zeug nie wieder ansiehst. 
Merke: Arbeiten mit µC ist teuer! Auch wenn der Einstieg vielleicht für 
rd. 30  € machbar ist, dabei bleibt es nicht. Mach dir mal den Spaß und 
geh zu einem Elektronikversamd in den Online-Laden und pach in den 
Warenkorb, wo du meinst, das du es brauchst....
Du brauchst ja nix zu bestellen, aber so wirst du eine Information zu 
den Kosten bekommen. Und sei versichert, das ist nicht alles, Drei tage 
nach Erhalt einer Lieferung stellst du fest, Da fehlt noch was....
Gruß oldmax

von San L. (zwillingsfreunde)


Lesenswert?

Johannes F. schrieb:
> vielen Dank für Ihre ausführlichere Antwort. Doch was ich mich frage, ob
> ich den Mikrocontroller, der auf der Platine von Banggood aufgesteckt
> ist, auch bei Reichelt kaufen kann. Welcher Mikrocontroller ist da
> aufgesteckt? In der Artikelbeschreibung von Banggood wird ATmega16U2
> erwähnt, doch die Suche danach ergab bei Reichelt keinen, passenden
> Treffer.

Zunächst einmal, nenn mich du. Sonst fühl ich mich alt.

Desweiteren: Den Controller gibt es zu 100 % irgendwo zu kaufen. Sind 
ganz normale ATMega's die da verwendet werden. Ob es den bei Reichelt 
gibt, weiss ich nicht. Gibt in Deutschland aber garantiert mehr als 
einen Liferanten für den Controller.

von Johannes F. (bastel-johannes)


Lesenswert?

Sehr geehrter oldmax,

ich verstehe nicht, was an der Sache teuer sein soll. Eine kleine 
Bastelecke habe ich schon und grundlegende Elektronikkentnisse habe ich 
noch aus dem Technik-Unterricht der Schule und meinen eigenen Projekten 
ohne Mikrocontroller. Was brauche ich denn außer der Platine von 
Banggood denn noch alles? Ich stehe gerade wohl auf dem Schlauch.
Vielen Dank für Ihren Hinweis.


Mit freundlichen Grüßen, Johannes F.

von USER (Gast)


Lesenswert?

Mach es einfach!

Das wurde hier schon tausendfach diskutiert. Mit der Suchfunktion 
findest du hier wahrscheinlich 99% deiner Fragen schon beantwortet.

Oder guck mal hier: http://www.gidf.de

von elektroNick (Gast)


Lesenswert?

Hallo,

so, wie es aussieht, ist auf dem Board ein Atmega 328P verbaut. Der 
angesprochene Atmega 16U2 ist nur die USB-UART-Bridge.

Lg
Nick

von Mark 99 (Gast)


Lesenswert?

San Lue schrieb:
> Und schon wieder die selbe Frage. Das Gefühlte 3895734 mal in den
> letzten 24 Stunden.

Schulferien ...

von Johannes F. (bastel-johannes)


Lesenswert?

Sehr geehrter elektroNick,

danke für die konkrete Antwort. Ich werde mich demnächst wieder melden, 
wenn ich getestet haben werde.


Mit freundlichen Grüßen, Johannes F.

von Stefan G. (grossst)


Lesenswert?

Ich finde es eigentlich schade das so viele auf den Arduino-Zug 
aufspringen ... klar es ist ein super Ding und ein tolles Projekt ... 
aber im Endeffekt hat es doch mit Mikrocontroller nicht mehr viel zu tun 
... das nur noch klickeriklick ......

Kauf Dir ein vernünftiges kleines Evaboard und bastel damit rum ... da 
gibts von allen etwas ... AVR, PIC, TI, ST .... alles was man will für 
kleines Geld ..... zum lernen ist das echt viel besser ....

Wenn man sich mit nem Mikrocontroller beschäftigen will muss man auch 
verstehen lernen wie so ein Ding funktioniert und was man da mit den 
komischen Registern und so anstellen muss ........

Arduiono ist schon was tolles (kann ich mir zumindest vorstellen) ... 
aber nicht wenn man sich mit Mikrocontroller als solches beschäftigen 
will ......

Meine Meinung ...

von San L. (zwillingsfreunde)


Lesenswert?

Stefan Groß schrieb:
> Meine Meinung ...

Vertrete indirekt die selbe Meinung wie du.

Das Problem sehe ich aber weniger beim Board, sondern eher bei der IDE. 
Denn die Hardware ist kein Stück anders als irgendein Eval Board. Ein 
ganz normaler Mikrocontroller mit ganz normaler Peripherie.

Problematisch wird es dann, wenn man mit der Arduino IDE arbeitet. Denn 
diese verhindert voll und ganz, dass man irgendwie selbst überlegen 
muss, was der Controller nun macht oder kann. Libs reinpacken, fertig.

Es ist aber auch möglich das Board mit anderen IDE's zu benutzen, gibts 
ja einige Tutorials im Internet wie man das zum laufen kriegt. Wenn man 
das tut, ist Arduino mit einem normalen Eval Board in meinen Augen 
gleichzusetzen.

von Stefan G. (grossst)


Lesenswert?

San Lue schrieb:

> Das Problem sehe ich aber weniger beim Board, sondern eher bei der IDE.


Ganz klar ... Arduino ist nur ne hübsche blaue Platine mit nem AVR drauf 
... ;-)

Ich persönlich würde mir (wenn es um AVR´s gehen soll -- ich mag die 
...) nen AVR ISP MKII holen und dann eventuell einen kleinen ATMega und 
ein Steckbrett bzw. so etwas wie es vom Pollin gibt so ein ganz 
einfaches Evaboard ... da geht alles was man machen will und man lernt 
einiges mehr...

von Ahha (Gast)


Lesenswert?

Stefan Groß schrieb:
> Ganz klar ... Arduino ist nur ne hübsche blaue Platine mit nem AVR drauf
> ... ;-)

Ich hoffe mal, es war keine Ironie..

von oldmax (Gast)


Lesenswert?

Hi
In diesem Forum wird besser geduzt. Zumindest was mich betrifft. Nun 
wieder zum Thema- Vorkenntnise aus dem Technikunterricht, ok, wenigstens 
etwas ...  und  eigenen Projekten .. auch gut. Dann soll es so sein und 
nun denk ich auch, das du Spaß daran haben wirst. Auf den Punkt, es gibt 
nicht "der Beste ist..." sondern du kannst nehmen was du willst. Du 
wirst dich auf diese "Familie" einschießen und sie für die Beste halten. 
Aber bevor du einsteigst, hol dir vom Netz die Datenblätter zu 
verschiedenen Controllern. Das kostet nix und bringt dir zumindest eine 
Information, was an den Dingern dran ist. Ich weiß ja nicht, welche 
Projekte du mit einem Controller machen willst, es ist theoretisch 
(fast) alles möglich. Es ist verständlich, das die Vielfalt der 
Controller verwirrend ist, aber es gibt so ein paar Kleinigkeiten, an 
den du dich orientieren kannst. Wie werden sie programmiert, was brauch 
ich an Wissen. Reicht eine oberflächliche Betrachtung oder soll es auch 
ins eingemachte gehen. Wie tief will ich mit der Sprache. Solls 
vielleicht auch Assembler sein?  Wie komm ich mit dem Syntax klar. Ich 
persönlich bevorzuge Assembler der Atmel-Controller und AVR Studio. Das 
heißt aber nicht, das ich es jedem empfehlen muss. Schau z.B. in das 
Datenblatt eines ATMEGA 8 oder 16. Da sind die Befehle in der 
Instruction Set Summary aufgelistet. Wenn du dir AVR Studio in deinen 
Rechner lädtst findest du zu den Befehlen in der Hilfe auch schon mal 
einen Beispielcode.  Aber Vorsicht. Ein Controller macht genau das was 
du ihm sagst und nicht das was du menst gesagt zu haben. Und deshalb 
hatte ich dir erst einmal das Programmieren mit einem PC empfohlen, 
damit du ein Gefühl für Programme bekommst. Oder hast du dich schon mal 
mit einer Programmiersprache beschäftigt?
Gruß oldmax

von Paul B. (paul_baumann)


Lesenswert?

>Re: Gerät für die ersten Schritte
Ich habe gerade die Abbildung eines Gerätes für die ersten Schritte
gefunden:

http://www.pieth.de/Bilder/Leo_Bilder/Woche%208-10/w10_Leo_Babyhopser_2.jpg

;-)
MfG Paul

von Andreas H. (ahz)


Lesenswert?

San Lue schrieb:
> Problematisch wird es dann, wenn man mit der Arduino IDE arbeitet. Denn
> diese verhindert voll und ganz, dass man irgendwie selbst überlegen
> muss, was der Controller nun macht oder kann. Libs reinpacken, fertig.

Ich denke, es kommt darauf an, wo der Anfänger kenntnissmäßig einsteigt. 
Die Anfängerhürden werden von erfahrenen Leuten oft unterschätzt.

Da können der Arduino und seine IDE schon eine gewisse Unterstützung 
leisten.

Wenn es dann gut läuft. dann kommen die Leute bestimmt schnell an den 
Punkt statt "Arduino C++" einfach mal ANSI-C zu probieren und den 
Prozessor auf Bare-metall zu bedienen.
Das geht mit der Arduino HW + einem Standardprogrammer (z.B. MK-II) und 
AtmelStudio ja auch problemlos.

Also so schlecht ist das eigentlich nicht, oder ?

Grüße
Andreas

von Johannes F. (bastel-johannes)


Lesenswert?

Sehr geehrter Herr Groß,

vielen Dank für Ihre Meinung und Ihre Empfehlung. Ich würde Ihren 
Vorschlag gerne aufgreifen, doch ich habe bei Reichelt nach einem 
passenden Evalution-Board gesucht und war über den Preis schockiert. 
Erheblich günstiger habe ich nirgendwo etwas gefunden. Aber habe ich 
dahingehend ein falsches Verständnis von Arduino, dass dieser eigentlich 
nur eine Art von Evalution-Board ist? Man kann den ATmega doch nach der 
Programmierung aus dem Sockel entfernen und in einem anderen Projekt 
einsetzen, oder? Die Programmierung ginge doch  - nach entsprechend 
langer Einarbeitungszeit und nach dem Lesen von mehreren Büchern über 
die entsprechenden Programmiersprachen  - auch in einer anderen IDE, 
oder? Aber dies sind Überlegungen für den Fall, dass ich mich mit 
Mikrocontrollern als solches beschäftigen möchte, doch wie geschrieben, 
wäre es auch für mich in Ordnung, mich in Mikrocomputer wie Arduino 
einzuarbeiten, zumal der Arduino den Vorteil hat, dass er recht weit 
verbreitet ist und eine entsprechend große "Gemeinde" mit Arduino 
arbeitet. Vielen Dank für Ihre Auseinandersetzung mit meiner 
Problematik.


Mit freundlichen Grüßen, Johannes F.



Sehr geehrter San Lue,

wenn das so ist, dann ist die Platine von Banggood doch ein sehr 
günstiges Evalution-Board, oder schätze ich den Preis falsch ein? Wenn 
ich einmal den Sinn darin sehen sollte, mich in die Mikrocontroller tief 
einzuarbeiten, dann könnte ich einfach die IDE wechseln und tiefer 
einsteigen, oder? Ich bin leider noch sehr unsicher auf diesem Gebiet. 
Habe ich es richtig verstanden, dass man, wenn man die Arduino-IDE 
verwendet, recht oberflächlich einsteigt und sich tiefer einarbeitet, 
sobald man die IDE wechselt? Ich danke schon einmal für Deine Antworten.


Mit freundlichen Grüßen, Johannes F.



Sehr geehrter oldmax,

um auf Deine letzte Frage zu antworten, antworte ich, dass ich lediglich 
ein kurzes Buch zu dem Thema C durchgelesen und etwa 7,5 % davon 
verstanden habe. Es würde mich in des Weiteren interessieren, welche 
Teile der sehr langen Datenblättern von Mikrocontrollern von Relevanz 
sind und wie ich die relevanten Informationen daraus extrahiere. Habe 
ich es flasch verstanden, dass alle Mikrocontroller fast gleich 
programmiert werden, nämlich in der Sprache, die von der IDE unterstützt 
wird? Oder irgendwie anders? Ich will übrigens vorerst nicht so tief 
einsteigen, dass ich bis zu Assembler käme, dies wäre mir viel zu 
komplex. Als Vorübungen werde ich entweder am Rechner arbeiten oder 
vielleicht auch mit einem Evalution-Board beziehungweise Arduino winzige 
Projekte realisieren. Ich danke herzlich für Deine Auseinandersetzung 
mit meiner Problematik.


Mit freundlichen Grüßen, Johannes F.



Sehr geehrter Herr Baumann,

ich fand dies durchaus lustig, aber ich denke, dass es klar sei, dass 
ich "erste[n] Schritte" im übertragenen Sinne meinte. Trotzdem: Guter 
Witz.


Mit freundlichen Grüßen, Johannes F.

von Klaus I. (klauspi)


Lesenswert?

Johannes F. schrieb:
> Ich würde Ihren
> Vorschlag gerne aufgreifen, doch ich habe bei Reichelt nach einem
> passenden Evalution-Board gesucht und war über den Preis schockiert.

Von Pollin gibt es ein Evaluationsboard für ca. 25 EUR, ähnliches gibt 
es bei ehajo glaube ich. Ansonsten kann man mit den "kleinen" 
Mikrocontrollern wie z.B. Atmega88 auch ganz gut direkt mit dem 
Steckbrett arbeiten. Du benötigst dann nur noch einen einfachen 
usbasp-Programmer für ca. 5 EUR (oder 2 EUR direkt aus China). Aber ich 
denke der Arduino ist auch dafür geeignet, der Preis ist auf jeden Fall 
ok.

Wie Du nun den Arduino am besten benutzt, musst Du selbst herausfinden 
;o)
Naheliegend ist da sicher die Arduino-IDE für den Anfang.
Oder Du programmierst in C (hier gibt es super Tutorials für die ersten 
Schritte).
Oder Du nimmst eine Einsteigerprogrammiersprache wie BASCOM oder LunaAVR 
falls das leichter ist.


> Es würde mich in des Weiteren interessieren, welche
> Teile der sehr langen Datenblättern von Mikrocontrollern von Relevanz
> sind und wie ich die relevanten Informationen daraus extrahiere.

Das ist der frustrierende Teil ;o) Natürlich kann da alles mal relevant 
sein, je nachdem was Du machst. Man muss wirklich viel lesen wenn man da 
mal wirklich durchblicken möchte. Ich bin da auch noch am Anfang und 
lerne immer noch viel dazu.
Vielleicht orientierst Du Dich am Anfang besser an Tutorials z.B. 
http://www.mikrocontroller.net/articles/AVR-Tutorial

Viel Spass
Klaus

von San L. (zwillingsfreunde)


Lesenswert?

Johannes F. schrieb:
> wenn das so ist, dann ist die Platine von Banggood doch ein sehr
> günstiges Evalution-Board, oder schätze ich den Preis falsch ein? Wenn
> ich einmal den Sinn darin sehen sollte, mich in die Mikrocontroller tief
> einzuarbeiten, dann könnte ich einfach die IDE wechseln und tiefer
> einsteigen, oder? Ich bin leider noch sehr unsicher auf diesem Gebiet.
> Habe ich es richtig verstanden, dass man, wenn man die Arduino-IDE
> verwendet, recht oberflächlich einsteigt und sich tiefer einarbeitet,
> sobald man die IDE wechselt? Ich danke schon einmal für Deine Antworten.

Ja, das ginge schon. Erfahrungsgemäss bleiben aber sehr viele Leute dann 
bei der Arduino IDE bzw. deren Lib's hängen. Was ich bisher selbst oft 
miterlebt habe: Die ganzen Lib's welche Arduino zur Verfügung stellt 
vermittelt neulingen oft ein falsches Bild. Viele wissen garnicht, dass 
man ohne die ganzen Lib's nie und nimmer so einfach programmieren kann. 
Für viele Arduino User ist es ganz normal eine serielle Schnittstelle 
mit einer Funktion zu initialisieren, von welcher sie nichtmal wissen 
was dahinter steckt. Von demher stimmt es also schon, dass man sehr 
overflächlich einsteigt. Das ist nicht unbedingt falsch, nur geht das 
bei vielen vergessen.
Das ist wie man denken würde, ein Auto fährt einfach und nicht einmal 
weiss dass überhaupt ein Motor existiert.

Ansonsten ist das Arduino-Board schon toll. Das mit dem Preis siehst du 
richtig, sonderlich teuer ist das Teil nicht.

Johannes F. schrieb:
> Es würde mich in des Weiteren interessieren, welche
> Teile der sehr langen Datenblättern von Mikrocontrollern von Relevanz
> sind und wie ich die relevanten Informationen daraus extrahiere.

Relevant ist das komplette Datenblatt. Allerdings braucht man selten 
alles. Du musst wissen, ein uC bietet sehr viele Funktionen. Timer, 
diverse Schnittstellen und und und. Diese müssen natürlich genaustens 
beschrieben sein, damit jede der Funktionen genutzt werden kann. 
Allerdings braucht man selten alle davon. Sogesehen existieren also 
keine wichtiger/unwichtigere Informationen. Es hängt ganz von deinem 
vorhaben ab, welche du benötigst. Willst du beispielsweise mit UART 
arbeiten, dann benötigst du den abschnitt UART aus dem Datenblatt. 
Willst du mit Timern arbeiten, dann brauchst du die Teile welche etwas 
zum Timer beitragen. Stell dir das ganze vor wie ein Duden:
Jedes Wort ist beschrieben, du musst aber nicht alles durchlesen, 
sondern nur gezielt suchen und die findest die relevante Information die 
du brauchst.

Johannes F. schrieb:
> Habe
> ich es flasch verstanden, dass alle Mikrocontroller fast gleich
> programmiert werden, nämlich in der Sprache, die von der IDE unterstützt
> wird?

Eine IDE unterstüzt in dem Sinne nicht direkt eine Programmiersprache. 
Es sind eher die Compiler die die interpreation des Codes übernehmen. 
Aber um dich hier nicht zu stark zu verwirren: Ja, im Grunde genommen 
werden alle Controller sehr ähnlich Programmiert. Lediglich die 
Initialisation und einige Hersteller-spezifische Unterschiede existieren 
da. Schlussendlich bleibt C aber C, egal ob Atmel oder PIC.

Johannes F. schrieb:
> Ich will übrigens vorerst nicht so tief
> einsteigen, dass ich bis zu Assembler käme, dies wäre mir viel zu
> komplex.

Assembler ist weitaus weniger komplex als das viele immer behaupten. Ich 
habe auch damit begonnen, bevor ich C gelernt habe. Es wird nur 
nichtmehr so häufig gebraucht, da es oft ein wenig umständlich ist im 
Vergleich zu C. Kompliziert ist es aber keineswegs.

Johannes F. schrieb:
> Als Vorübungen werde ich entweder am Rechner arbeiten oder
> vielleicht auch mit einem Evalution-Board beziehungweise Arduino winzige
> Projekte realisieren. Ich danke herzlich für Deine Auseinandersetzung
> mit meiner Problematik.

Der Arduino ist schon nicht falsch für dich. Schlussendlich kann man 
diese Diskussion ins endlose führen, was den nun das richtige ist. In 
meinen Augen gibt es kein "das richtige Einsteigermittel." Das ist alles 
im Auge des betrachters definiert, was den nun besser ist. Genau das 
selbe wie hier der totale Krieg bei Fragen wie "Was ist besser: PIC oder 
Atmel?" herrscht. Das ist auch alles eine Frage der persönlichen 
Meinung, den schlussendlich können die Controller der beiden Hersteller 
ziemlich genau das selbe, nur etwas anders aufgebaut. Projekte welche 
sich auf einem PIC realisieren lassen, lassen sich aber auch ganz gut 
auf einem Atmel Controller realisieren und umgekehrt.

Ich hoffe ich konnte dir noch ein wenig helfen und deine offenen Fragen 
beantworten.

Gruss

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.