Lernkurs AVR oder PIC?

Hallo! Wollte auch mal in die Welt der Mikrokontroller einsteigen, allerdings bin ich mir unschlüssig, ob nun Atmel, Microchip oder etwaige andere.
Was empfehlt ihr einem Anfänger für einen Lernkurs (evtl Bücher)
Bin gelernter Elektromechaniker, also am Grundwissen solls nicht scheitern, mir geht es nur um die Programmierung selbst, bzw um eine einfach zu erlernende Programmiersprache.
Mein Ziel ist es dann mal LCD Displays anzusteuern bzw zuerst einmal einfachere Steuerungsaufgaben wie Z.B. eine Leuchtturmsteuerung für 20 Leuchttürme.
Bin für jeden Tipp dankbar!

Hallo Sandor,

für den Anfang würde ich entweder die Mikrocontroller empfehlen, die vom Typ Intel 8051 abgeleitet sind, - oder einen PIC-Mikrocontroller wie den PIC16F84. Der AVR ist nicht mehr so ganz für Mikrocontroller-Anfänger.

Du brauchst dazu aber eine Software zum Erstellen des Programms (Assembler oder C-Compiler), und ein Programmiergerät, mit dem Du den so erstellten Code zum Mikrocontroller überträgst.

Assembler (komplette IDEs) bekommst Du von den Seiten von Microchip (PIC) und von ATMEL (AVR) umsonst, nicht aber für den Intel 8051 (allerdings gibt es eine beschränkte Demoversion von der Fa. Keil, die aber für den Anfang reichen dürfte). C-Compiler für Mikrocontroller sind dagegen meist teuer, vielleicht findest Du aber ein Open-Source-Programm.

Programmiergeräte bekommst Du zu kaufen (um einige hundert bis tausend Euro, z. B. gibt es ein PIC-Starter-Kit um ca. 200 Euro), Bauanleitungen gab es in der Zeitschrift Elektor, und gibt es eventuell im Internet (suchen).

Für den Intel 8051 (aktuell natürlich AT89C51 und ähnliche, von Atmel, mit eingebautem Flash-ROM) spricht, daß er einen leicht verständlichen „klassischen“ Befehlssatz hat ähnlich einem herkömmlichen Microprozessor. Dafür ist das Programmiergerät teurer bzw. komplizierter zu bauen.

Der PIC (z. B. PIC16F84, wichtig ist F wie Flash, es gibt auch C mit OTP-Speicher - nur einmal programmierbar) ist auch okay für Anfänger, er hat zwar einen RISC-Befehlssatz, der nicht ganz so durchsichtig ist, aber dennoch überschaubar. Das Programmiergerät dafür ist einfacher bzw. billiger.

Ich habe zuerst den Intel 8051 „gelernt“, dafür gibt es ein sehr gutes Buch: Andreas Roth, Das Mikrocontroller-Kochbuch (ISBN 3-8266-2666-4 Buch anschauen), und das Mikrocontroller-Applikationsbuch (ISBN 3-88322-225-9 Buch anschauen) - dort ist auch die Ansteuerung von alphanum. LCD-Anzeigemodulen detailliert beschrieben. Programmiergeräte habe ich anfangs mit einem Steckbrett improvisiert. Ein Steckbrett brauchst Du sowieso für Mikrocontroller-Experimente.

Grüße,

I.

Hallo,
also ich kann dir nur die PICs empfehlen. Ich stand vor 2-3 Jahren vor der gleichen Frage und bin mit den Microchip Controllern sehr zufrieden, was nicht heißt das andere Anbieter schlechter sind. Was bei dne PICs sehr positiv ist, ist folgendes:

  • Sehr gute Doku vom Anbieter selber
  • Sehr gute Doku (auf Deutsch) im Netz (z.B. www.sprut.de) , was vorallem den Einstieg vereinfacht
  • alle PIC Typen (bis auf die neuen 18er Typen) sind sehr ähnlich aufgebaut, so dass die Einarbeitung von einem Typ auf einen anderen recht einfach und schnell geht
  • sehr vielseitieg Typen (mit unterschiedliceh vielen Ports, Speicher und Peripheriefunktionalität

Nachteilig empfinde ich lediglich die recht schlechte Möglichkeit bei mathematischen Problemen; hier ermöglichen PICs nur mit viel Aufwand komplexere mathematische Rechnungen. Aber dafür gibt es mittlerweile Standardroutinen im Netz, die man kopieren und einsetzen kann.

Aber es hängt halt wirklich vom einzelnen Geschmack ab und dem was man damit machen will. Deshlab am besten mal in jeden Typ reinschnuppern und dann entscheiden; aber dann bei der Entscheidung bleiben !

Gruß
Franky

Also ich hab mir das buch von roland walter gekauft…Der beschreibt von grund auf wie du nen avr programmieren kannst und zwar in basic
nennt sich avr-basic und ist frei im internet verfügbar…Es ist auch ne bauanleitung beschrieben und ein LPT-Programmer(Bauteilkosten ca.40 euro…
Mittlerweile kann ich schon interrupts auslösen , lauflichter ,usw…
Hab mich vorher mit dem c-control ein bischen beschäftigt aber das schau ich mir sicher nicht mehr an…:smile:
Das Problem ist leider das du gutes technisches englisch fürs datasheet brauchst…Und assemblerprogrammieren ist ziemlich heavy das check ich glaub ich nicht mit meiner lehrausbildung als eletroinstallerteur:smile:
Schau mal unter:www.rowalt.de
Über die Pics kann ich nichts sagen aber die sind wie man so hört auch ziemlich beliebt!

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hi,

wir setzen AVR und 8051 ein. Ich plädiere für 8051:

  • Der Industriestandard schlechthin, von sehr vielen Herstellern in der Grundversion oder in Spezialversionen lieferbar. PIC und AVR sind mir zu proprietär.

  • Sehr flexible Peripherie

  • Ich halte Ihn nicht für komplex

  • Es gibt kleine 20-polige bis große 68-polige Versionen (PIC und AVR gibt’s, zugegeben, sogar bis 8 Pins)

  • Stand der Technik ist, dass kein Programmiergerät erforderlich ist, weil sie über die serielle Schnittstelle programmierbar sind

Ich programmiere ausschließlich in Assembler, in Basic könnte ich es auch, werde das aber immer wegen der mir schleierhaften (und mutmaßlich sehr langsamen und speicherfressenden) Umsetzung des Compilers vermeiden. (Ich akzeptiere Widerspruch, aber bitte nur von Leuten, die beides genau kennen.

Assembler gibt’s kostenlos: AS von Alfred Arnold (auch in deutsch dokumentiert): http://john.ccac.rwth-aachen.de:8000/as/index.html Der ist ziemlich leistungsfähig.

Die Vielfalt bei nur einem der vielen Hersteller: http://atmel.com/dyn/products/param_table.asp?family…

Grüße

Uwe

Hallo Uwe,

  • Es gibt kleine 20-polige bis große 68-polige Versionen (PIC
    und AVR gibt’s, zugegeben, sogar bis 8 Pins)

Den PIC gibt es auch im 6-poligen SOT23-Gehäuse. Kleiner geht’s kaum noch.

Ich programmiere ausschließlich in Assembler, in Basic könnte
ich es auch, werde das aber immer wegen der mir schleierhaften
(und mutmaßlich sehr langsamen und speicherfressenden)
Umsetzung des Compilers vermeiden. (Ich akzeptiere
Widerspruch, aber bitte nur von Leuten, die beides
genau
kennen.

Da kann ich nur zustimmen. Bei hardwarenaher Programmierung programmiere ich am liebsten in Assembler, weil ich immer genau wissen will, was die CPU in welcher Reihenfolge macht und wieviele Taktzyklen sie dafür braucht. Das ist beim PIC besonders einfach, weil er alle Befehle in einem und Sprungbefehle in 2 CPU-Taktzyklen abarbeitet. Ansonsten ist der PIC wegen seiner besonderen Architektur für CISC-CPU-Programmierer etwas gewöhnungsbedürftig.

Jörg

Hallo,

hab auch erst in diesen Jahr angefangen mich mit Mikrocontrollern zu beschäftigen. Für den Einstieg hab ich das Buch von Roland Walter „AVR Mikrocontroller Lehrbuch“ (ca 40-50 €), mit welchem ich sehr zufrieden bin und von dem ich gehört habe, das es das beste AVR Lehrbuch sein soll. Ich hab mit dem AVR Mega 8 angefangen (welcher auch im Buch benutzt wird). Software gibt´s zum Buch dazu. Die Progrmmiersprache von Bascom lehnt sich an Basic an und ist leicht zu verstehen (wenn man andere Sprachen schon kennt). Eine Experimentierplatine mit diversen Tastern und LED´s ist auch beschrieben und lässt sich für unter 20 € auch schnell basteln. Programmiert wird einfach über Parallelport (keine Zusätzliche Hardware nötig). Meiner Meinung nach für den Einstieg sehr gut geeignet, aber ich hab auch noch nicht mit anderen Mikrocontrollern gearbeitet.

Gruß, Andreas.

Hi,

zwei Tipps auf die schnelle

eine Seite:
http://www.sprut.de/electronic/pic/

und ein Buch:
http://www.amazon.de/exec/obidos/ASIN/0071437045/

Grüße,
J+

Hallo,

Mein Tipp :

http://www.elektor.de/Default.aspx?tabid=27&year=200…

Begründung :

  1. Geringste Kosten, C-Kompiler inklusive,
  2. Gute Doku, viele App. Notes für diverse Aufgabenstellungen
  3. Skalierbar. Wenn Du drin bist und das Teil pack nicht alles, dann wechsel einfach auf eine andere Version. Also von 20 Pins bis 144.
  4. Viele Schnittstellen werden unterstützt ( SPI, UART, IIC, LIN, CAN ), viele Sonderfunktionen sind eingebaut ( ADC, counter, trigger, Tasten-Interrupts, ect )
  5. Genug Power schon in der kleinsten Version.

Gruß,

Uwe P.

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]