Hallo!
Ich bin neu hier und auch auf dem Gebiet der Microcontroller.
Ich habe für meinen Modellbau (Modellbahn H0) schon einige LED
Schaltungen nachgebaut, bin aber auch in Sachen der Komponenten
(Kondensatoren, Transistoren,....) nicht ganz so Sattelfest.
Bin da nicht vom Fach und baue eher Schaltungen aus dem Netz nur nach
und teste/variiere eventuell etwas, was mir aber auch mehr Spaß macht,
als nur fertige Sätze zu kaufen.
Nun gibt es aber Schaltungen, die mit solchen Komponenten wohl nicht
(oder eher kompliziert) gebaut werden können und ich stoße da immer auf
Microcontroller.
Haupsächlich geht es da z.B. um zufälliges Aufblinken von mehreren LED
(gerade passend - z.B. bei einem Weihnachtsbaum, wo immer LED angehen
und andere wieder aus. Alles eher zufällig).
Dann habe ich auch eine Schaltung gefunden, wo ein Haus zufällig
geschaltet wird, mit TV-Simulation. Diese aber dann auch mit
Microcontroller.
Meine generelle Frage, kommt man da als Einsteiger, ohne große
Vorkenntnisse, rein oder ist das ein sehr komplexes Thema? Es gibt ja
auch einige Projekte im Netz, die man übernehmen und damit testen
könnte?
Des Weiteren meine Frage was man dafür benötigt?! Ich habe da
Komplett-Sets gefunden (~40-70€) die für Einsteiger sein sollen. Aber
macht das Sinn? Und es gibt ja wohl auch noch den Unterschied der
Sprachen: Bascom und C.
Vielen Dank erstmal!
Als Einsteig wäre da wohl die Arduino-Plattform in Betracht zu ziehen.
(Kommt hier im Forum allerdings nicht bei allen so gut an). Ist einfach
und schnell zu realisieren. Die nötige Beschaltung des Mikrocontrollers
ist schon fertig auf dem Board. Dann brauchst du dich erst mal nicht
drum kümmern. Dürfte für solche Zufalls-LED-Sachen ausreichen. Eventuell
brauchst du dann, je nach Anwendung, eben Verstärkerschaltungen oder
sonstiges an Bauteilen drumherum.
Wenn du dann in der Materie drin bist und noch komplexeres machen
willst, kannst du dir überlegen von der Arduino-Sprache auf C
umzusteigen. Das ist mit den Arduino-Borads auch möglich, allerdings
dann auch etwas komplizierter umzusetzen.
Nur keine scheu, ich hatte vor 2 jahren nur minimalste matlab
kenntnisse, hab mir ein stm32f4discovery board zugelegt und bin in c
eingestiegen.
Es kostet Zeit, nerven und Haare aber es ist kein hexenwerk ;)
Achso: die erfolgsergebnisse machen einen Riesen Spaß!
Den Einstieg würde ich mit Bascom machen. Dazu gibts unter halvar.at ein
sehr gutes Tutorial, durch die vielen Highlevel-Befehle kommt man recht
schnell voran und im Gegensatz zu C muss man sich nicht mit einer
unmöglichen Syntax rumschlagen.
Dazu von Pollin das Programmerboard für 15,- und du kannst schonmal
spielen.
Ich finde auch, dass für den Einstieg in die Mikrocontroller-Welt sowas
wie die Arduino-Boards am sinnvollsten sind.
Nicht so begeistert bin ich allerdings davon, ausgerechnet mit C/C++ als
erster Programmiersprache anzufangen. Bei Mikrocontrollern hat man wegen
der begrenzten Ressourcen zwar üblicherweise gar nicht viel mehr
Auswahl, aber das sind einfach keine für absolute Programmier-Einsteiger
besonders gut geeigneten Programmiersprachen (Falls Du bereits
Programmiererfahrung hast, ist es natürlich was anderes).
Was diese Komplett-Sets betrifft... Die sind natürlich in gewisser
Hinsicht schon ganz praktisch, weil da viel Unterschiedliches dabei ist,
mit dem man ein herumexperimentieren kann. Andererseits wirst Du das
meiste davon vermutlich nicht brauchen...
Falls Geld für Dich keinerlei Problem ist, können die schon ne
praktische Sache sein. Falls dem nicht so ist, schreib lieber, was genau
Du so an Ideen umsetzen möchtest.
Wenn Du einen gaaaanz günstigen Einstieg in die Mikrocontroller-Welt
möchtest, um erst einmal bei minimalen Kosten zu schauen, ob das was für
Dich ist, dann würde ich persönlich empfehlen:
Bestelle Dir bei Aliexpress ein "Arduino Nano v3"-Board (ca 2,50 Euro)
und/oder ein "Nodemcu devkit (NICHT v3!!!!)" (ca. 3,50 Euro), ein
kleines Breadboard/Steckboard (ca. 2-3 Euro), einen Pack Steckbrücken
(paar Cent) und einen Meter WS2811/WS2812-LED-Streifen. (Du scheinst
Dich ja speziell für irgendwelche Beleuchtungs-Sachen zu interessieren)
Billigste Lösung dürfte ein Arduino Klon mit USB Kabel sein. So 3,- bei
eBay, Alibaba und Co.
Dazu noch ein Steckbrett.
Alternativ gleich ein Einsteigerset.
Dazu noch die Arduino IDE runterladen und los gehts.
http://funduino.de/anleitungen
Vielen Dank erstmal für die Antworten.
Also ist Arduino wohl für den Anfang sehr ratsam?!
An LED habe ich bereits eine größere Auswahl. Auch ein Steckbrett und
weitere Bauteile sind vorhanden.
@Oyoyo (Gast): Ich habe mal nach dem "Arduino Nano v3" geschaut. Dieses
gibt es bei eBay ja bereits im 3/5er Pack um die 5€. Ist das dann der
komplette Controller, der dann später verbaut wird?
Ich dachte eher an etwas kleines, wie ein AtTiny, der auf ein Bord (so
wie das z.B. hier erwähnte Board von Pollin?!) gesteckt wird, um dann
programmiert zu werden?
Es sind aber auch sicherlich nicht alle Controller mit allen Boards
kompatibel/programmierbar?!
Der Haken an den Arduino-Nachbauten ist, daß der Chip manchmal/eventuell
nicht korrekt (d.h. dann gar nicht) programmiert ist, um mit der
Arduino-Programmierumgebung zusammenzuarbeitn.
Daher hatte ich einem Kumpel in der selben Situation empfohlen, sich zum
Einstieg einen gebrauchten Original-Arduino zu besorgen
(zuuuufälligerweise hatte ich gerade einen übrig.) :)
Der Arduino ist halt eine komplette Entwicklungsumgebung, die einfach
funktioniert. Man holt sich die Software, egal ob für Windows, Unix oder
MacOS, und nach der Installation und Anstecken der Platine kann man
binnen 30-60 Sekunden das erste Beispielprogramm laden, verändern und
brennen und tut.
Das finde ich gerade für den Anfang einen unschätzbaren Vorteil
gegenüber mehrtägigem Raussuchen von avr-gcc, gcc, avrdude,
ISP-Programmer, Treiber dafür und Furz und Feuerstein. Möchte ich ins
Auto einsteigen und einfach wohin fahren oder möchte ich Zündwinkel und
Einspritzmenge von Hand einstellen müssen, damit der Motor läuft?
Tatsächlich bin ich in den letzten 2, 3 Jahren um das "echte"
Programmieren immer wieder drumherum geschlichen wie die Katze um den
heißen Brei, letztlich dann aber doch immer wieder den Arduino (oder
mittlerweile auch Raspberry) genommen. Irgendwann hole ich mir mal sonen
ISP und installier die ganze Toolchain. Mittlerweile habe ich auch ne
ganz lustige Sammlung an Atmegas in fertigen Produkten (aus einem
Midi-Keyboard, einer Atemgas-Druckanzeige, einem Kabeltuner und einer
Dotmatrix fürs Aufzugsstockwerk), wo es sich lohnen würde, den Chip zu
löschen und mal auf eine eigene Platine zu setzen.
Wenn Du konkret ein Projekt hast und gleich am Anfang sagst ich hau mir
das auf ne eigene Platine mit Controller, lohnt sich vermutlich der
Sprung ins kalte Wasser. Andererseits sind Arduino-Clones so billig, daß
selbst ne Lochrasterplatine für das eigene Projekt nicht viel billiger
kommt.
Außerdem kann man den Arduino selbst als ISP benutzen. Ich bin damit
immerhin schonmal so weit gekommen, die Chipdaten eines dieser
"Industrie-Atmegas" auslesen zu können.
Kay schrieb:> Vielen Dank erstmal für die Antworten.> Also ist Arduino wohl für den Anfang sehr ratsam?!
Meiner Meinung nach: Ja. Arduino ist halt DIE Mikrocontroller-Plattform
schlechthin für Einsteiger, dafür findest Du Unmengen
Dokumentation/Tutorials/Code-Beispiele und Leute, die damit Erfahrung
haben. Für den Einstieg ist das einfach extrem vorteilhaft.
> An LED habe ich bereits eine größere Auswahl. Auch ein Steckbrett und> weitere Bauteile sind vorhanden.
Perfekt, dann fehlt Dir für die ersten Schritte wirklich nur noch ein
kleines Development-Board a la Arduino.
> @Oyoyo (Gast): Ich habe mal nach dem "Arduino Nano v3" geschaut. Dieses> gibt es bei eBay ja bereits im 3/5er Pack um die 5€. Ist das dann der> komplette Controller, der dann später verbaut wird?> Ich dachte eher an etwas kleines, wie ein AtTiny, der auf ein Bord (so> wie das z.B. hier erwähnte Board von Pollin?!) gesteckt wird, um dann> programmiert zu werden?
Beim "Arduino Nano" ist (wie auch bei diversen anderen Arduino-Boards)
der Mikrocontroller fest aufgelötet, das stimmt. Du kannst ihn also
nicht einfach so entfernen oder einen anderen aufsetzen. Dafür sind die
Boards halt super-günstig...
Wenn es Dir wichtig ist, den eigentlichen Mikrocontroller
aufstecken/entfernen zu können, dann müsstest Du eher zu einem Board wie
dem "Arduino UNO" greifen, das einen µC im "DIP-Package" verwendet
(DIP-Package = Steckboard-geeignet).
Von den Attinys würde ich an Deiner Stelle ganz am Anfang erst einmal
die Finger lassen. Ich sehe da einfach nicht den grossen Vorteil, die
paar Cent Preisunterschied zu einem AtmegaXX8 (wie er z.B. auf den
"Arduino UNO"-Boards verwendet wird) sind kaum der Rede wert. Das wäre
für den Einstieg meiner Meinung nach am falschen Ende gespart; wenn Du
durch ein Arduino UNO/NANO-Board die ersten Erfahrungen mit
AVR-Mikrocontrollern gesammelt hast, ist es kein Problem, dann
alternativ auch mal mit einem ATtiny herumzuexperimentieren.
> Es sind aber auch sicherlich nicht alle Controller mit allen Boards> kompatibel/programmierbar?!
Das stimmt, auch ein Board wie z.B. das oben erwähnte "Arduino UNO" ist
nur mit ganz wenigen, "pinkompatiblen" Mikrocontrollern kompatibel.
Wenn Du eine richtig universelle Lösung willst, die mit ganz vielen
AVR-Mikrocontrollern kompatibel ist, dann musst Du von solchen
Development Boards Abstand nehmen, alles auf Steckboard aufbauen, einen
sogenannten "AVR ISP Programmer", einen USB-Seriell-Wandler etc. kaufen.
Ich sag mal so: Kann man machen (und war z.B. auch die Variante, mit der
ich vor einigen Jahren angefangen habe), aber ganz ehrlich: Ich würde an
Deiner Stelle für die allerersten Schritte ein ganz billiges, erprobtes
Arduino-Board wie eben den Nano nehmen, und erst, nachdem Du damit die
ersten Erfolge hast, auf eine solche Lösung umsteigen, bei der einfach
deutlich mehr potentielle Fehler-/Frust-quellen lauern. Der Umstieg ist
dann einfach.
Kanaan schrieb:> Dazu von Pollin das Programmerboard für 15,- und du kannst schonmal> spielen.
Puh, sowas kann man machen, wenn man viel Erfahrung hat ...
Wichtiger als funktionierende Hardware und minimaler Preis ist die
Community, der Support, die Entwicklungsumgebung, die Code-Beispiele,
und und und ...
Kay schrieb:> Ich habe für meinen Modellbau (Modellbahn H0) schon einige LED> Schaltungen nachgebaut, bin aber auch in Sachen der Komponenten> (Kondensatoren, Transistoren,....) nicht ganz so Sattelfest.
Einmal durch's Internet gestochert, finden sich diverse Scripte von
Schulen, die bei Null anfangen: LED blinken, Taster abfragen, Drehpoti
abfragen, ein Motoörchen schalten ... ich war fasziniert, wie simpel das
ist. Vielleicht bringt der Weihnachtsmann auch ein Buch mit
"Die_elektronische_Welt_mit_Arduino_entdecken" - ich finde es gut.
Kanaan schrieb:> Den Einstieg würde ich mit Bascom machen.
Nee, warum kommerzielle Software kaufen, wenn es jede Menge freier
Umgebungen gibt?
Oyoyo schrieb:> Nicht so begeistert bin ich allerdings davon, ausgerechnet mit C/C++ als> erster Programmiersprache anzufangen. Bei Mikrocontrollern hat man wegen> der begrenzten Ressourcen zwar üblicherweise gar nicht viel mehr> Auswahl, aber das sind einfach keine für absolute Programmier-Einsteiger> besonders gut geeigneten Programmiersprachen (Falls Du bereits> Programmiererfahrung hast, ist es natürlich was anderes).
Ich kenne Basic, ich programmiere in AutoIT, ich habe 65xx / 68xx in
Assembler gemacht. Arduino-C fand ich nun nicht so toll, aber es ist
verbreitet und mit ein paar Stunden Stocherei ist auch das begreifbar.
Ich habe hier noch keine Programme gepostet, meine Fehler stets selber
gefunden.
Wichtig ist eher, dass man persönlich bereit ist, sich wirklich
einzuarbeiten und Zeit aufzubringen. Wer Modellbau betreibt, dürfte
diese Energie besitzen.
Widerstand schrieb:> Der Haken an den Arduino-Nachbauten ist, daß der Chip manchmal/eventuell> nicht korrekt (d.h. dann gar nicht) programmiert ist, um mit der> Arduino-Programmierumgebung zusammenzuarbeitn.
Stimmt, hatte ich zwei von. Nach etwas Zickerei hat der Chinese sein
Geld nicht bekommen, inzwischen kann ich ISP und habe die Dinger
erfolgreich in Betrieb gesetzt.
@Kay: Der Arduino-Uno ist mechanisch recht groß, ich mag ihn nicht. Mein
erster Kauf war dennoch ein UNO, weil praktisch alle Basisanleitungen
auf diesen aufsetzen. Da Du wenig Ahnung hast (Deine Aussage),
vielleicht den:
https://www.heise.de/make/meldung/Sonderheft-Make-Arduino-Special-jetzt-online-bestellbar-3103699.html
("im heise Shop für 24,95 Euro versandkostenfrei bestellbar")
Nikolaus steht vor der Tür, dazu:
https://www.conrad.de/de/adventskalender-conrad-adventskalender-fuer-arduino-ab-14-jahre-1421382.html
Damit machst' über Weihnachten Grundlagenarbeit, danach vom Chinesen ein
paar Nanos um 2..3 US-Dollar und weiter geht das.
>@Kay: Der Arduino-Uno ist mechanisch recht groß, ich mag ihn nicht. Mein>erster Kauf war dennoch ein UNO,
Ursrünglich hatte ich auch immer UNOs und fand die nicht so schlecht.
Irgendwann habe ich dann die Nanos ausprobiert und sie haben sich
tatsächlich als das bessere Format herausgestellt. Man kann sie vor
allen Dingen auf ein Steckbrett stecken und dann zusätzliche Bauteile
anschließen.
Oyoyo schrieb:> Ich finde auch, dass für den Einstieg in die Mikrocontroller-Welt> sowas> wie die Arduino-Boards am sinnvollsten sind.
Ja, das kann man so unterschreiben.
Wichtig ist halt, sich nicht nur unverstandene Codeschnipsel zu holen
und zusammenkopieren, sondern alles selber zu schreiben. Die Arduino Lib
nimmt einem dabei am Anfang viele Details ab.
Hast man dann das Gefühl, dass das damit richtig gut klappt, ist die
Zeit gekommen, sich einen µC zu suchen. Der Einstieg geht dann deutlich
besser, weil man viele Konzepte schon kennt.
Der µC lohnt gegenüber dem Arduino dann schon deshalb, weil man on-chip
debuggen kann, und der Platzbedarf der Sache ist auch besser.
Manfred schrieb:> Kanaan schrieb:>> Den Einstieg würde ich mit Bascom machen.> Nee, warum kommerzielle Software kaufen, wenn es jede Menge freier> Umgebungen gibt?
Öhm, für einen Anfänger reichen die 4kB möglicher Code mit der freien
Version sehr lange, bei manchen Leuten ein Bastlerleben lang.
my2ct
http://www.mcselec.com/index.php?option=com_docman&task=cat_view&gid=99&Itemid=54
BASCOM AVR DEMO
dazu noch das Handbuch, und los gehts