Microcontroller für Einstieg in die embedded Systemprogrammierung

Disclaimer: Dieser Thread wurde aus dem alten Forum importiert. Daher werden eventuell nicht alle Formatierungen richtig angezeigt. Der ursprüngliche Thread beginnt im zweiten Post dieses Threads.

Microcontroller für Einstieg in die embedded Systemprogrammierung
Hi,
Ich möchte die Sachen die ich im Studium lerne, speziell in SP (da ich mich vermutlich ganz gerne in diese Richtung spezialisieren möchte) mal ganz gerne hobbymäßig umsetzen und bin auf der Suche nach einer geeigneten Microcontroller-Platform für dieses Vorhaben. Dabei ist mir bisher nur die Arduino-Plattform aufgefallen, jedoch würde ich gerne mit C/C++ speziell unter Unix/Posix arbeiten und nicht in einer IDE die mir die Sache durch Einbindung zusätzlicher Libraries zu sehr vereinfacht. Ansonsten hab ich schon mit dem Raspberry-Pi geliebäugelt, jedoch bin ich unsicher ob das für den Einstieg angemessen ist. Vielleicht hat ja jemand von euch nen guten Tip für mich.


Soweit ich weiss kann man man das Arduino Board auch ohne die IDE in C/C++ programmieren, es sitzt ja ein Atmega Chip drauf.
Ansonsten gibts auch schoene Entwicklerboards fuer Anfaenger, auf denen sitzen auch gleich n paar LEDs drauf und Buttons.
Ich hab mir zum Einstieg ein Steckbrett gekauft und ein paar atmega168.

Du solltest dich noch nach nem ISP Programmer umschauen, wenn du “nackte” Chips programmieren willst.
Ich hab damals den gekauft: http://www.ladyada.net/make/usbtinyisp/

Vielleicht willst du dir auch einfach die SPIC Vorlesung der Etechniker anhoeren, da loetet man auch sein eigenes Board.


Außerdem empfehle ich das PEMSY Praktikum vom LIKE Lehrstuhl. Aber wirklich früh (am Anmeldetag) anmelden, das ist schnell voll.


Gibt es Mikrokontroller mit Unix-Schnittstelle? Das würde doch imho ein Betriebssystem und Adressräume voraussetzen, beides hast du auf den meisten Mikrokontrollern wohl nicht.

Den Raspberri-Pi kann man (imho) nicht als Mikrokontroller bezeichnen – auch wenn ein ARM-Chip verbaut ist, wird man ihn überlicherweise mit einem Linux o.Ä. wie einen PC betreiben, er ist halt nur etwas kleiner. Natürlich kannst du auch dein eigenes Betriebssystem für den Raspberri-Pi schreiben, aber das könnte für den Einstieg etwas happig sein.

Übrigens: in Systemprogrammierung arbeitet man nicht mit Mikrokontrollern. Die Veranstaltung dafür ist (wie bereits erwähnt) SPiC.


Sorry kenne mich da leider noch nicht so aus, aber so viel ich weiss laufen doch auf vielen Mikrocontrollern auch (Echtzeit-)Betriebssysteme unter denen ich dann eher auf meinem SP Wissen zurueckgreifen koennte. Aber vermutlich ist es einfacher erst mal auf einfacherer Hardware, ohne BS zu arbeiten. Ich hab wie gesagt noch keine Erfahrungen in dem Bereich und weiss deshalb nicht so ganz wo ich anfangen soll.

Das hoert sich auf jeden Fall sehr interessant an, danke fuer den super Tip!


AVRs sind für den Einstieg nicht schlecht. Sie kosten nicht viel und Tutorials gibts an jeder Ecke (http://www.mikrocontroller.net/articles/AVR-Tutorial)
Da kannste dir ein paar Einzelteile samt Steckbrett besorgen und loslegen. Steht alles gut Dokumentiert auf dieser Seite.

Auch günstig sind die MSP430 von TI. Evalboard (MSP Launchpad) für 5$ z.B.


wenn du mikrocontroller programmieren willst, schau dir auch mal SPiC an, das is zwar eigentlich für nebenfächler aber beschäftigt sich tatsächlich mit mikrocontrollern.


Kauf einen Arduino Uno.
Fang nicht mit Steckbrett und irgendeinem ISP-Programmer an der genausoviel kostet.
Den Arduino kannst du genauso als ISP nutzen,
aber hast die Option die weniger umständlichen Arduino-Libs zu verwenden.
Arduino ist auch C++.
Für Linux-Sachen ist ein PC angebracht.


Falls du ein tieferes Verstaendnis fuer die Vorgaenge im µC entwickeln willst, wuerd ich dir von einem Arduino abraten und eher fuer den Atmega plaedieren. Das ist allerdings ein stueckweit Glaubenskrieg. Ich find als Entwicklungsplattform den Pollin Net I/O ganz toll (gibt’s auch schon in fertig, kostet etwa so viel wie ein Arduino Uno. Programmer wird noch benoetigt, aber das gilt ja auch fuer den Arduino).


Afaik hat nen Arduino Uno nen USB. Zumindest meiner daheim


[quote=t.animal]Programmer wird noch benoetigt, aber das gilt ja auch fuer den Arduino).
[/quote]

Nein, bei einem Arduino braucht man keinen extra Programmer. Der ist dabei.
Und selbst wenn man nicht mit Arduino programmieren will, ist ein Arduino keine schlechte Wahl.


Ich dachte du brauchst da noch wenigstens ein spezielles Kabel oder so? Hab noch nie so ein Ding selbst in Betrieb genommen, immer nur anderen dabei zugeguckt.


Nen USB-B Kabel ist das afaik.


Ok eventuell verwechsel ich das jetzt… Jedenfalls find ich auf die schnelle nicht dieses (aktive) Kabel, das ich meinte und laut der Arduino homepage braucht man nur ein stinkormales USB Kabel. Damit entfallen natürlich die ca etwa 30-50€ für einen Programmer.


[quote=t.animal]Ok eventuell verwechsel ich das jetzt…[/quote]Ja tust du. Meines Wissens nach gab es noch nie einen Arduino, den man mit einem Programmer programieren musste.


Denke dann wird es wohl doch der Arduino. Codys Argument ueberzeugt mich da am meisten und zu der Platform gibt es auf jeden Fall Dokumentation und Projektvorschlaege ohne Ende (gut vermutlich auch fuer den ATmega ;)). Ausserdem wird ja im PEMSY Praktikum schon mit nem ATmega32 gearbeitet, dann wuerde mir das die ganze Vorfreude nehmen. Als Linux-Frickelplatform muss dann wohl mein Netbook herhalten oder ich besorg mir doch noch irgendwann das Raspberry.
So dann werd ich jetzt mal zu GdS aufbrechen^^


man muss keine 30€-50€ für einen Programmer ausgeben. Wem die Ebay-China-Teile nicht passen, der kann immer noch z.B. USBasp, AVRLab greifen. Die sind absolut brauchbar. Ich glaube im Uni-Shop von EmbDev gibts den original mkII auch für ca 20€, da hab ich jetzt allerdings net nachgeschaut.


Und wer freie Lösungen bevorzugt: http://www.usbprog.org/