Mikrocontroller programmieren erlernen

Diskutiere Mikrocontroller programmieren erlernen im Was ich unbedingt noch sagen wollte... Forum im Bereich Kaffeeklatsch; Hallo Forum, einige von Euch programmieren doch Mikrocontroller. Ich würde gerne in das Thema kennenlernen um etwas zu basteln. Beim googlen...

  1. #1 ChristianK, 23.03.2008
    ChristianK

    ChristianK Mitglied

    Dabei seit:
    07.06.2003
    Beiträge:
    2.358
    Zustimmungen:
    12
    Hallo Forum,
    einige von Euch programmieren doch Mikrocontroller.

    Ich würde gerne in das Thema kennenlernen um etwas zu basteln. Beim googlen komme ich immer wieder zu dem Atmel ATmega8 Kontroller, der scheint mir zumindest der richtige Kontroller zu sein.

    Danach wird die Orientierung schon schwer. Bastel ich mir alles auf einem "Breadboard" selbst oder brauche ich eine Entwicklerplatine? Die Preise für solche Teile liegen ja zwischen 10 und 100€.

    Könntet Ihr mir mal mögliche Wege aufzeigen wie ich mich dem Thema nähern kann? Also was die Vorgehensweise aber auch die möglichen Anschaffungen angeht?

    Danke
    Gruß
    Christian
     
  2. #2 JohannesN, 23.03.2008
    JohannesN

    JohannesN Mitglied

    Dabei seit:
    03.02.2008
    Beiträge:
    30
    Zustimmungen:
    0
    AW: Mikrocontroller programmieren erlernen

    Ja die ATMega's von Atmel sind recht gut fuer Einsteiger geeignet.
    Ein gutes Tutorial fuer den Start findest du hier:
    AVR-Tutorial - www.mikrocontroller.net

    Auf dieser Website gibts auch allgemein recht gute Infos, fuer Einsteiger und Fortgeschrittene, inkl. gut besuchtem Hilfeforum.
    Ansonsten sind aber auch die Datasheets und Application Notes von Atmel sehr aussagekraeftig und mit vielen Beispielen ausgestattet.

    Viel Spass damit.

    johannesn
     
  3. #3 Bernd Barista, 23.03.2008
    Bernd Barista

    Bernd Barista Mitglied

    Dabei seit:
    07.09.2007
    Beiträge:
    330
    Zustimmungen:
    4
    AW: Mikrocontroller programmieren erlernen

    Hallo Christian,

    bei Pollin Electronic - Elektronik, Technik und Sonderposten bekommt Du unter der Bestell-Nr.: 810 038 ein "ATMEL Evaluations-Board Version 2.0.1 - Bausatz" für 14,95 EUR.
    Zusätzlich brauchst Du noch einen Mikrocontroller von Atmel und eine Anschlussleitung für den Com-Port. Entwicklungsumgebung und C-Compiler (GCC) gibts im Internet als WinAVR.

    Gruß,

    Thorsten
     
  4. #4 chelonae, 23.03.2008
    Zuletzt bearbeitet: 23.03.2008
    chelonae

    chelonae Mitglied

    Dabei seit:
    27.03.2005
    Beiträge:
    613
    Zustimmungen:
    9
    AW: Mikrocontroller programmieren erlernen

    Moin,

    in der µC-Welt gibt es meistens zig Wege, die einem zum gewünschten Ziel bringen und letztlich entscheidet nur der individuelle Bedarf und die eigene Vorliebe für die Wahl der Mittel. Wenn Du noch nicht sicher weißt, ob's tatsächlich ein µC aus der ATmega8-Reihe wird oder vielleicht doch ein ARM, PIC oder sonstwas, dann würde ich mich eher nach einem halbwegs universell einsetzbaren Programmierer umsehen. Falls Debugging möglich sein soll, dann auch am besten gleich mit JTAG etc. -- der usbprog wäre dann sicherlich ein solides und vielseitiges Werkzeuge der engeren Wahl.

    Ich persönlich werde für meinen Hähnchengrill vermutlich einen der neueren ATtinys und für die Linea eine der dickeren ATmega-Ausführungen nehmen. Da ich für das letztgenannte Projekt jedoch auch einen Ethernetanschluß vorsehe, könnte es auch passieren, daß ich gleich auf nen ARM sattele -- dafür hatte ich bereits früher mal das eine oder andere Embedded-Linux-System zurechtgeschnitzt, was dann doch ein wenig Zeit sparen sollte. Für die AVRs ziehe ich als Programmierer erstmal einen simplen USBASP-Eigenbau vor, der sich leicht auf einem Steckbrett aufbauen läßt und gerademal rund 4€ für die Einzelteile verschlingt. Allerdings muß man das Henne-Ei-Problem der Initialprogrammierung des USBASP-µCs lösen, indem man sich entweder mit einem Parallelkabel was zusammenlötet oder nen Kollegen bittet, den µC für einen zu programmieren.

    Da beide Projekte eh nen USB-Anschluß verpaßt bekommen, werde ich aber vermutlich ziemlich bald nen Bootloader verwenden, um "Firmware"-Änderungen zunkünftig dann ohne Hilfsmittel vornehmen zu können. Allerdings ist mir dafür keine Debugginglösung bekannt und die wird's in der Form wohl auch nie geben...

    Viele Grüße
    Martin
     
  5. Niko

    Niko Mitglied

    Dabei seit:
    13.01.2008
    Beiträge:
    158
    Zustimmungen:
    175
    AW: Mikrocontroller programmieren erlernen

    Hallo Christian,

    wenn Du die Hürden am Anfang möglichst niedrig haben willst (und es nicht auf 10 Euro ankommt), empfehle ich Dir, mit dem Arduino (Arduino - HomePage) anzufangen. Arduino besteht aus einem AtMege168 mit nem USB-Controller etc. auf ne Platine gelötet und einer OpenSource Entwicklungsumgebung. Man schließt einfach den Arduino per USB an, startet die Entwicklungsumgebung, bastelt ein bisschen Code rein und per Knopfdruck wird dein Programm cross-compiliert (für die AtMega Architektur), auf den Arduino geladen und ein Reset ausgeführt. Ist wirklich so einfach, wie's klingt. Der Arduino kostet (z.B. hier: SEGOR electronics GmbH, Berlin) 26€. Auf der offiziellen Seite gibt's massenhaft Tips und Tutorials (unter anderem PID-Code, mit dem ich mich gerade beschäftige). Auf deutsch würde ich hiermit anfangen: Arduino Einführung | Robotfreak Blog

    Grüße, Niko.
     
  6. #6 chelonae, 23.03.2008
    chelonae

    chelonae Mitglied

    Dabei seit:
    27.03.2005
    Beiträge:
    613
    Zustimmungen:
    9
    AW: Mikrocontroller programmieren erlernen

    Achso,

    nochwas: die Umwege über parallele oder RS232-Schnittstellen wollte ich von vornherein vermeiden, um einen möglichst simplen Aufbau zu haben. Auch die Spannungsversorgung ziehe ich mir (wo es geht) per USB oder PoE.

    Gruß
    Martin
     
  7. #7 koffeinschock, 23.03.2008
    koffeinschock

    koffeinschock Mitglied

    Dabei seit:
    10.03.2005
    Beiträge:
    4.195
    Zustimmungen:
    10
    AW: Mikrocontroller programmieren erlernen

    irgendwo in den tiefen meines kellers fliegt noch ein 80C535 rum, mit board, spannungsversorgung, ner cd mit programmierumgebung und einem halbwegs tauglichen buch. aber ich glaube mit einem atmel ist es wesentlich einfacher einzusteigen ;)
     
  8. blu

    blu Mitglied

    Dabei seit:
    15.11.2004
    Beiträge:
    9.690
    Zustimmungen:
    6.718
  9. #9 Kaffee-Paul, 24.03.2008
    Kaffee-Paul

    Kaffee-Paul Mitglied

    Dabei seit:
    16.12.2006
    Beiträge:
    671
    Zustimmungen:
    1
    AW: Mikrocontroller programmieren erlernen

    Hallo,

    eines fernen Tages möchte ich mich da auch mal ranwagen :roll:
    Mich würde interessieren, wie die Dinger überhaupt programmiert werden. Oben habe ich mal was von C gelesen, wo ich aber keinen Bock zu habe.... Python ist mir, nach dem, was ich über diese Sprache gelesen habe, ziemlich sympathisch - evtl. auch Ruby. Kann ich damit einen Controller programmieren? Vor-/Nachteile?


    Gruß

    Paul
     
  10. #10 ChristianK, 24.03.2008
    ChristianK

    ChristianK Mitglied

    Dabei seit:
    07.06.2003
    Beiträge:
    2.358
    Zustimmungen:
    12
    AW: Mikrocontroller programmieren erlernen

    Hallo Leute,

    vielen Dank für die hilfreichen Beiträge. Ich schwanke noch zwischen Arduino und dem mikrocontroller.net Tutorial.

    Arduino scheint nicht ganz so hardwarenahe zu wie die Programmierung über Assembler, wobei ich nicht sicher bin ob es nicht ein Nachteil ist. Zumindest zum Lernen.

    Was mir noch total unklar ist, woher weiß ich beispielsweise diese Dinge, die in den Tutorials am Rande stehen, beispielsweise dass ein LCD Display manchmal einen 33 Ohm Wiederstand braucht oder das eine LED einen Vorwiederstand braucht? Muss ich vielleicht doch noch einmal meinen Kemo Baukasten im Keller suchen um weiter unten anzufangen?

    Gruß
    Christian
     
  11. Niko

    Niko Mitglied

    Dabei seit:
    13.01.2008
    Beiträge:
    158
    Zustimmungen:
    175
    AW: Mikrocontroller programmieren erlernen

    Na, da wollen alle was anderes… dem einen ist C nicht lowlevel genug, der andere würde lieber Python oder Ruby haben! :D

    Soweit ich weiß, kommt man um C wohl nicht rum. Der Arduino hat ja schon 16K Speicher, davon gehen wohl 2K oder so für den Bootloader drauf. Bleiben 14K, da passen dann nur noch ein paar hundert Zeilen Code rein. An sich kein Problem, aber sobald man Bibliotheken z.B. für ein Display oder eine Funkuhr dazuläd, wird's ganz schön eng. Da ist für einen Python-Interpreter nun wirklich kein Platz. Von der Prozessorleistung ganz zu schweigen!

    Ich programmiere vollzeit Ruby und find's eigentlich ganz spannend, mal was anderes zu machen. Ein weiteres Paradigma zu lernen einerseits und zum anderen mal was hardware-näheres zu machen macht Spass. Wann muss man als Highlevel-Entwickler schon mal einen Schalter debouncen? Mein Arbeitgeber unterstützt meine Anstrengungen sogar! :D

    Grüße, Niko.
     
  12. #12 JohannesN, 24.03.2008
    JohannesN

    JohannesN Mitglied

    Dabei seit:
    03.02.2008
    Beiträge:
    30
    Zustimmungen:
    0
    AW: Mikrocontroller programmieren erlernen

    Wieso willst Du µC's unbedingt in Ruby/Python programmieren - wegen der OO?
    Also ueblich sind C und Assembler, wobei Letzteres immer weiter in den Hintergrund geraert, C ist eigentlich state of the art. Bei umfangreicheren Projekten kommt auch schon mal C++ zum Einsatz (dann haste auch OO). Performante Plattformen (siehe google's Android) lassen sich auch in Java programmieren. Wobei wir bei letzteren beiden Sprachen schon bei 32 Bittern angelangt sind.
     
  13. #13 JohannesN, 24.03.2008
    JohannesN

    JohannesN Mitglied

    Dabei seit:
    03.02.2008
    Beiträge:
    30
    Zustimmungen:
    0
    AW: Mikrocontroller programmieren erlernen

    Also die Beschaltung eines LCDs sollte eig in seinem Datasheet zu finden sein.
    Dass eine LED einen Vorwiderstand braucht, naja eig. Grundwissen (9. Klasse Physik). Je nach LED sind das so um die 300 Ohm. (genauer mit R (Widerstandswert) = U (Spg.-Abfall an der Diode) / I (Strom durch die Diode) )
     
  14. #14 Kaffee-Paul, 24.03.2008
    Kaffee-Paul

    Kaffee-Paul Mitglied

    Dabei seit:
    16.12.2006
    Beiträge:
    671
    Zustimmungen:
    1
    AW: Mikrocontroller programmieren erlernen

    Hallo,


    Vor allem, weil ich denke, daß diese Sprachen für den ANfänger intuitiver zu erlernen sind als C (ich bin da leider ein kompletter Laie... :-?). Vermutlich wird man wohl auch (wegen der Objektorientierung?) mit weniger Code mehr erreichen können (Stichwort "Scriptsprache")


    OK, Assembler- da könnte man ja auch Maschinencode schreiben... ;-)
    Aber wahrscheinlich ist diese Art der Programmierung kleinschrittiger und genauer, etwas was man mit OO-Sprachen so nicht hinkriegt.
    C zu erlernen wäre mir schätzungsweise zu viel Aufwand- ich denke, daß aus genannten Gründen Python oder Ruby besser für mich geeignet wären.


    Gut, wenn C++ möglich ist, wäre Python / Ruby auch klasse. Liegt es daran, daß C++ kompiliert wird und die anderen einen Interpreter brauchen (wie Niko schon angedeutet hat)?

    Was ist "Android"? Java wäre für mich evtl. auch noch OK- wird AFAIK aber auch bei jeder Ausführung interpretiert- da dürfte der Schritt zu meinen Wunschsprachen dann ja auch nicht mehr allzu fern sein, oder?


    Gruß

    Paul
     
  15. #15 koffeinschock, 24.03.2008
    koffeinschock

    koffeinschock Mitglied

    Dabei seit:
    10.03.2005
    Beiträge:
    4.195
    Zustimmungen:
    10
    AW: Mikrocontroller programmieren erlernen

    hier ist nicht die 'programmiersprache' gemeint - assembler = maschinencode.
    die hochsprachen haben den vorteil bei komplexen programmieraufgaben einfacher zu sein. die details bei der umsetzung in maschinencode übernimmt dann der compiler.
    viele aufgaben lassen sich auch direkt im maschinencode schreiben - die vorteile sind klar: du arbeitest direkt auf der maschinenebene und zeitkritische anwendungen kannst du direkt vorausberechnen (musst halt die taktfrequenz kennen und die abarbeitungszeit für die einzelnen befehle). das verliert aber immer mehr an bedeutung, wie schon zuvor geschrieben worden ist.



    die technischen daten oder die verschaltungen für diverse bauteile/erweiterungen entnimmt man übrigens den datenblättern oder berechnet die schaltungen selbst. einfacher ist es aber, im netz nach schon getesteten schaltungen zu suchen. das erleichtert dem laien auch die fehlersuche, da sowas schon recht komplex werden kann (ok, ok: ein do der über einen treiber eine led mit vorwiderstand steuern soll ist nicht wirklich komplex :mrgreen: )
     
  16. Jens77

    Jens77 Gast

    AW: Mikrocontroller programmieren erlernen

    Wenn ich auch noch einen Tip geben darf: display3000

    da ist dann auch das Farbdisplay mit AVR dabei! Bin auch schon am überlegen, ob ich mir meine ECM nicht um ein buntes Display mit ein paar Prozessdaten erweitere ;-)
     
  17. #17 JohannesN, 24.03.2008
    JohannesN

    JohannesN Mitglied

    Dabei seit:
    03.02.2008
    Beiträge:
    30
    Zustimmungen:
    0
    AW: Mikrocontroller programmieren erlernen

    Ja OO (=Objektorientierung) lohnt sich aber erst ab einem bestm Umfang Deines Projekts.


    Hoehere Sprachen, vor allem OO Sprachen, lohnen sich wie gesagt erst ab einer bestimmten Groesse des Projekts und des Mikrocontrollers.
    Sag doch mal was du machen willst, dann kann man dir evtl einen Tipp geben welche Sprache/System am besten ist.


    Ist eine einheitliche Plattform fuer Handy und PDA Programmierung, richtet sich also eher an groessere Projekte. Google hat dafuer eine eigene Java-VM entwickelt die den JavaByte Code ausfuehrt um unabh. von Sun zu sein.
    Denke dass sich das fuer den Einstieg in µC-Programmierung eher weniger eignet...




    Gruesse,
    j.
     
  18. blu

    blu Mitglied

    Dabei seit:
    15.11.2004
    Beiträge:
    9.690
    Zustimmungen:
    6.718
    AW: Mikrocontroller programmieren erlernen

    hallo,
    der vollstaendigkeit halber: es gibt auch etwas basic-aehnliches: BASCOM. auch wenn's kein basic im eigentlichen sinne ist, da es kompiliert wird. neben C und assembler geht bei der myavr entw.umg. auch C++.
    lg blu
     
  19. #19 ChristianK, 31.03.2008
    ChristianK

    ChristianK Mitglied

    Dabei seit:
    07.06.2003
    Beiträge:
    2.358
    Zustimmungen:
    12
    AW: Mikrocontroller programmieren erlernen

    Hallo Leute,

    ich habe mich für den Anfang für einen Arduino entschieden.

    Abschließend hätte ich noch zwei Fragen:

    Wie schließe ich (physisch) ein LCD Display an? Die meisten scheinen 14 Pins zu haben, soll man an den kleinen Dingern löten oder gibt es fertige Stecker mit Kabeln dran?

    Was ist das Henne-Ei Problem? Ich habe bei google wirklich keine Erklärung gefunden. Es muss etwas mit Bootloadern und dem Einspielen der Programm auf einen Controller zu tun haben.

    Gruß
    Chrisitan
     
  20. #20 JohannesN, 31.03.2008
    JohannesN

    JohannesN Mitglied

    Dabei seit:
    03.02.2008
    Beiträge:
    30
    Zustimmungen:
    0
    AW: Mikrocontroller programmieren erlernen

    Also zum Anschluss eines LCD's kann man das nicht so pauschal sagen.
    Haengt vom Modul ab und nat. wie du es ansteuern willst.
    Z.B. welche Farbtiefe das LCD macht, und dann noch ob es ein TFT oder STN LCD ist.
    Also erstmal das Datenblatt des Displays studieren, dann den Abschnitt LCD Controller im Datenblatt des µC.
     
Thema:

Mikrocontroller programmieren erlernen

Die Seite wird geladen...

Mikrocontroller programmieren erlernen - Ähnliche Themen

  1. [Verkauft] Mikrocontrollermodul

    Mikrocontrollermodul: Hallo, beim ausmisten bin ich über ein Mikrocontrollermodul von meinem ito Umbau gestoßen. Das ganze hat leider einen wegbekommen und es muss...
  2. Mikrocontroller Arduino und Kaffee

    Mikrocontroller Arduino und Kaffee: Hallo zusammen, beim Schmökern habe ich Arduino playground - CoffeeTronics entdeckt. Jede Menge Lesestoff :-) lg blu
  3. Bezugsdauer mit Mikrocontroller messen

    Bezugsdauer mit Mikrocontroller messen: hallo zusammen, ausgehend von Mikrocontroller programmieren erlernen habe ich mich mal etwas an die materie heran gewagt: ziel ist es, dass...
  4. S* B* Pro programmieren

    S* B* Pro programmieren: Hallo liebe Community Ich habe eine S* Barista Pro gekauft und wollte diese programmieren. Ich habe alles schön nach Handbuch gemacht (siehe...
  5. VBM Vibiemme Domobar Super Electronic - alte Version, Tastenfeld lässt sich nicht programmieren

    VBM Vibiemme Domobar Super Electronic - alte Version, Tastenfeld lässt sich nicht programmieren: moin zusammen, Ich schaffe es nicht das Tastenfeld zu programmieren. Die LED leuchtet nie. Espressobezug funktioniert nur über die Taste ganz...