Forum: Mikrocontroller und Digitale Elektronik Anfänger: Was für Komponenten notwendig (für C und USB)?


von Rainer (Gast)


Lesenswert?

Hallo zusammen,
ich möchte neu in die Welt der uC's einsteigen und erstmal ganz einfache 
Grundlagenprojekte machen (z.B. Textausageb auf LCD Display / LED-Cube).
Leider fehlt mir ein wenig die Übersicht was ich wirklich an Hardware 
benötige. Ich möchte über USB den uC programmieren (habe an meinem 
Rechner keinen Parallel Port). Programmieren würde ich gerne mit C, da 
ich hier schon "brauchbare" Kenntnisse habe.

Ich habe an einen ATTiny2313 gedacht (aufgrund der großen Verbreitung).
Dazu brauche ich noch einen Programmer - welcher ist hierzu geeignet?
Welches Entwicklerboard ist sinnvoll?
Was benötige ich für den Anfang noch so?

Klar...je günstiger desto besser - brauche sicherlich auch keine 
"High-End" Lösung für den Anfang :)

Sollte es schon irgendwo eine solche Auflistung geben, wäre ich 
natürlich dankbar und entschuldige mich schonmal für den "Spam" :)

Vielen Dank!
Rainer

von Ralph (Gast)


Lesenswert?

Auch wenn jetzt viele AVR Fans wieder schreien.

Nimm dir vom ST ein DicoveryBoards oder von TI ein Launchpad.
Das sind dann Cortex Mx µC.
Es gibt bei beiden das komplette Set von Board über Debugger bis hin zur 
IDE mit Compiler in einem Paket.

Nimm so was und du sparst dir viel Ärger bis du ein lauffähiges System 
hast mit dem du deine ersten Erfahrungen sammeln kannst.

Auf welchen µC du mit C anfängst ist da so ziemlich egal.
Du musst auf jeden Fall lernen wie du die einzelnen Baugruppen 
ansprechen kannst.
Da macht es auch keinen große Unterschied wie viele Baugruppen so ein µC 
hat und wie die angesprochen werden. Da man ja doch immer nur die 
Baugruppen konfigurieren muss die man für die jeweilige Übung benötigt.
Das so ein Cortex M viel mehr kann als ein AVR Tiny ist da vielleicht 
auch nich ein extra Bonus für später wenn die Programme/Projekte mal 
umfangreicher werden.

von HierStehtGAST! (Gast)


Lesenswert?

Ich würd dir ebenfalls einen ARM empfehlen.

Dazu kannst du einen link oder blackmagic probe als programmer/debugger 
nehmen, je nach ziel chip. STM gibt die discovery boards wirklich 
günstig her, TI auch. Und es gibt dafür auch RTOS systeme, könnte später 
einmal interessant werden.

von Axel S. (a-za-z0-9)


Lesenswert?

Wenn du nur schnell zu einem Ergebnis kommen willst, ohne etwas dabei zu 
lernen, dann nimm das ARM-Rundum-Sorglos-Paket mit der Option, dir auch 
den Hintern abzuputzen.

Ansonsten ist ein AVR, z.B. der von dir ins Auge gefaßte tiny2313 
durchaus ein sinnvoller Einstieg. C gibts in Form des AVR-gcc kostenlos 
(für Windows heißt das dann WinAVR). Alternativ das AVR-Studio von Atmel 
(ist unter der Haube auch AVR-gcc). Praktisch alle heutzutage verkauften 
ISP-Programmer verwenden den USB-Port. Besonders günstig sind die 
China-Programmer von ebay (technisch sind das USBasp) oder der usbtiny, 
z.B. von eHaJo.

Siehe auch: AVR In System Programmer: USB und den Übersichtsartikel 
AVR


XL

von Johannes (Gast)


Lesenswert?

Als Programmer würde ich den AVR Dragon oder AVR ISP MKII nehmen.

von hmm... (Gast)


Lesenswert?

Zum lernen ist der avr schon nicht verkehrt und einfacher zu handhaben 
als so ein Cortex Schlachtschiff. Aber nimm nicht so was 
minimalistisches wie den 2313. Ich würde einen nehmen der min. 8k Flash 
und 1k Ram mitbringt,außerdem sollte eine UART, 1x SPI, 1x I2C und ein 
ADC an Board sein. Damit kann man schon deutlich mehr anfangen als mit 
den mickrigen uralt Tinies. Obwohl die neueren Tinies ganz cool sein 
sollen.

Als ich mich vor einigen Jahren noch öfter mit AVRs beschäftigt habe 
(heute eher STM32 und MSP430) fand ich Atmega8/88 ganz gut als 
universal-Controller geeignet.

von Max H. (hartl192)


Lesenswert?

Ich würde einen PIC nehmen, diese haben nur wenige und unkritischen 
Stolperfallen für Anfänger, ich habe z.B. noch nie gehört, dass sich 
jemand seinen PIC verfused hat. PICs haben oft bessere/mehr Peripherie 
als ATmega/-tiny.
Für C würde ich PIC18 empfehlen, da die Architektur des PIC18 für C gut 
geeignet ist, Microchip schreibt: „C Compiler Optimized Architecture“.
Die Entwicklungsumgebung MPLAB X IDE und dem XC8 C-Compiler gibt's 
kostenlos von Microchip. Falls du kein Windows User bist, läuft MPLAB X 
IDE zusätzlich zu Windows auch unter Linux und Mac.
Als Programmer würde ich das PICkit3 kaufen, dieses gibt es auch als Set 
mit einer Testplatine. Ich habe mit zum Einstieg die 40-pin-Testplatine 
von Sprut [1] gebaut. Mit dem PICkit3 kannst du nicht nur programmieren, 
sondern auch debuggen: Wenn du z.B. irgendeinen Fehler im Programm hast, 
den du nicht findest, kannst du das Programm Zeile für Zeile durchgehen 
oder das Programm in einer bestimmten Zeile pausieren und den Inhalt der 
einzelnen Variablen und Register ansehen.
Mit dem PICkit3 hast du den Vorteil, dass du später, falls die 
Peripherie und Rechenleistung der 8-bit PICs nicht ausreicht 16- und 
32-bit µCs programmieren kannst.
Für einen kostengünstigen einstieg, könnte man eine PICkit3 Clone kaufen 
und einen PIC mit Minimalbeschaltung und ein paar LEDs und Tasten auf 
eine Steckplatine packen. Die Clones sollten gut mit dem Original 
kompatibel sein: Beitrag "Pickit 3 - Clone - kompatibel?"


Noch ein paar Links:
Mir hat dieses Tutorial beim Anfangen sehr gut geholfen:
http://pic-projekte.de/wordpress/?p=133#comments

Ich habe dieses Video erst vor kurzem entdeckt. Ich denke, dass vor 
allem wenn man "brauchbare" Kenntnisse in C hat sollte es mit Hilfe 
dieses Videos nicht lange dauern, bis man das erste Programm zum Laufen 
gebracht hat. https://www.youtube.com/watch?v=lCzokKzD3-Q

Für ASM und generell zu PIC findet man hier viel:
http://www.sprut.de/
[1] 40-pin-Testplatine
http://www.sprut.de/electronic/pic/test/index.htm#40pin

MPLAB X IDE
http://www.microchip.com/pagehandler/en-us/family/mplabx/
XC8 Compiler
http://www.microchip.com/pagehandler/en_us/devtools/mplabxc/

Hier gibt's die gesamte Hardware, die man für den Einstieg in die Welt 
der PICs brach als Packet:
http://www.microchipdirect.com/ProductSearch.aspx?Keywords=DV164130

: Bearbeitet durch User
von Klaus I. (klauspi)


Lesenswert?

Such Dir ein schönes Tutorial und besorge Dir die entsprechenden Teile, 
wäre jetzt mein Rat. Für den Einstieg braucht es nicht viel, hier wäre 
ein Minimalvorschlag:

ca 3 Stück Atmega88A (die meisten Tutorials beziehen sich auf Atmega88A 
oder den weitgehend kompatiblen aber etwas älteren Atmega8A)
billigen usbasp Programmer
Gutes grösseres Steckbrett
flexible Drahtbrücken (Preisklasse 65 Stück für ca. 3,50 EUR)
Kleinteile: Kondensatoren (unbedingt dabei mehrere 100nF Keramik und 
einige 22pf Keramik), Quarze (16MHz wird oft verwendet), Print-Taster, 
LEDs, Widerstände, Transistoren usw.

Es gibt auch Einsteiger-Sets, z.B. bei ehajo.de und bei
guloshop.de oder Du kaufst Dir einfach die Bauteil-Sortimente von 
Vellemann z.B. bei Reichelt.

http://www.mikrocontroller.net/articles/AVR-Tutorial:_Equipment
http://www.mikrocontroller.net/articles/AVR-Tutorial
http://www.mikrocontroller.net/articles/Absolute_Beginner
http://www.mikrocontroller.net/articles/Absolute_Beginner-AVR_Steckbrettprojekte

von Markus M. (Firma: EleLa - www.elela.de) (mmvisual)


Lesenswert?

Auch lesenswert für Einsteiger:
STM32 für Einsteiger

von Marius P. (marius_p)


Lesenswert?

Ich würde dir eher einen ARM empfehlen, die Entwicklungboards sind recht 
günstig und vielfältig. Mag sein, dass es von AVR mehr Tutorials gibt, 
aber das ändert sich auch mal denke ich.

In allen Fällen würde es sicher sehr helfen sich nicht nur auf DIP 
Gehäuse oder ähnliche zu konzentrieren sondern auch einmal LQFP Gehäuse 
oder ähnliche zu löten. Es gibt möglicherweise mehr Produkte mit denen 
und man kann sie problemlos per Hand löten wenn man will.

von Kein Name (Gast)


Lesenswert?

Und wenn es nun wirklich AVR sein muss - die reinen Softwarelösungen 
ergeben schwer zu findende Fehler. Besser ein ATmegaU2/U4. Oder einen 
zusätzlichen USB-UART Chip. (Gibt beides leider nur als SMD).

Mit USB hast du ein zusätzliches Problem. Einigen Stellen haben 50ms 
Timeout. Du kannst keine Warteschleifen verwenden. Musst von Anfang an 
Interruptgesteuert arbeiten.

von Valentin S. (lochrasterer)


Lesenswert?

Für was denn die teuren Sachen? Ein mySmartUSBlight von myAVR reicht aus 
und kostet nur 15€. Dann brauchst du noch ein Steckbrett (10€), das 
Kabelbrücken-Set von Amazon für 3,50€ (ca.80 Kabel) und natürlich nen 
Mikrocontroller. Als Anfänger würde ich dir den ATmega8A empfehlen, da 
er im Tutorial hier und auf anderen Seiten ziemlich oft vorkommt und 
auch nicht viel kostet. wenn du anfangen willst, würde ich mindestens 3 
davon kaufen.

Den mySmartUSBlight hab ich hier auch und benutze ich schon bestimmt 2 
Jahre. wichtig ist aber dass du die Software von MyAVR benutzt. mit der 
im ATMEL Studio funktioniert's bei mir zumindest nicht immer richtig.

Viel Spaß beim lernen!

Mit freundlichen Grüßen,
Valentin

EDIT: Klaus I. ist schneller gewesen:)

: Bearbeitet durch User
von Rainer (Gast)


Lesenswert?

Hallo zusammen,
erstmal: ich bin echt beeindruckt wieviel Hilfe man in diesem Forum 
bekommt. Vielen Dank für all eure Vorschläge. Viele verschiedene 
Ansätze...sehr interessant. Ich denke aufgrund den Anzahl an 
Anfängertutorials werde ich mal mit AVR anfangen.
Ich komme wenn ich eure Beiträge so zusammenfasse auf folgendes für den 
Anfang:

1xUSB-Programmer mySmartUSB light
3xAtmega88A
1xSteckbrett (das hier evtl?: 
http://www.conrad.de/ce/de/product/531326/Steckplatine-830polig-Steckplatine-L-x-B-x-H-1651-x-546-x-94-mm-Anzahl-Polklemmen-830?ref=searchDetail 
)
1xKabelset (Amazon: 65St. wiederverwendbare Steckbrett Drahtbrücke Kabel 
für Bot Schaltung)

Und eben Kleinteile:
100nF Keramik-Kondensatoren
22pF Keramik-Kondensatoren
16Mhz-Quarze
Print-Taster
LEDs
Widerstände
PNP u. NPN-Transistoren
kleines LCD Display


Habe ich noch etwas vergessen, ohne dem das ganze hier nicht laufen 
wird?

Also wie gesagt - schonmal recht herzlichen Dank! Bin wirklich 
beeindruckt.
Schönen Ostermontag.
Grüße Rainer

von holger (Gast)


Lesenswert?

Wenn es ein 8 bit Mikrocontroller sein soll, würde ich mal diese Video 
anschaugen, vergleicht die beiden beleibtesten Controllerfamilen bei 
Bastlern: https://www.youtube.com/watch?v=DBftApUQ8QI

von Kein Name (Gast)


Lesenswert?

Und ein Netzgerät mit Strombegrenzung. Auf 50mA eingestellt überleben 
deine Teile auch falsch zusammengesteckte Schaltungen.

von Klaus I. (klauspi)


Lesenswert?

Rainer schrieb:
> 1xSteckbrett (das hier evtl?:
> 
http://www.conrad.de/ce/de/product/531326/Steckplatine-830polig-Steckplatine-L-x-B-x-H-1651-x-546-x-94-mm-Anzahl-Polklemmen-830?ref=searchDetail

Das ist ok für den Anfang, aber 10,51 EUR? hust
http://www.reichelt.de/Experimentier-Steckboards/STECKBOARD-1K2V/3/index.html?&ACTION=3&LA=2&ARTICLE=67678&GROUPID=6547&artnr=STECKBOARD+1K2V

für 2,95 EUR kannst Du ein paar mehr kaufen. Dann kannst Du auch mal 
Schaltungen aufgebaut lassen. Für diesen Steckbrett-Typ passen 
Präzisionssockel ganz gut, da würde ich ein paar für den µC und etwaige 
ICs mitbestellen.

Stimmt LCD habe ich vergessen.
Fehlen vielleicht noch ein paar Potis, Drehgeber, Sensoren (da gibt es 
auch einen guten Artikel hier), Krokoverbinder.

Ich habe schonmal etwas hier zusammengefasst:
Beitrag "Re: Mit was in die Mikrokontrollerwelt einsteigen?"
Beitrag "Re: Mit was in die Mikrokontrollerwelt einsteigen?"

Wenn die Lieferzeit keine Rolle spielt sind auch chinesische Händler bei 
Ebay interessant:
http://www.mikrocontroller.net/articles/China_SUPER_Bauteile-Schn%C3%A4ppchen_Thread-Wiki

Am Anfang würde ich erstmal nicht übertreiben. Nach den ersten Versuchen 
wirst Du schon ein Gespür dafür haben in welche Richtung es gehen wird. 
Dann kann man immer noch gezielt nachkaufen.

von Markus M. (Firma: EleLa - www.elela.de) (mmvisual)


Lesenswert?

Rainer schrieb:
> 1xUSB-Programmer mySmartUSB light

Einen "Programmer" alleine kann ich aus Erfahrung für den Einstieg nicht 
empfehlen.
Damit kann man den µC nur programmieren und hoffen das Programm macht 
auch das was man will.

Besser ist ein Debugger, damit kann man nicht nur programmieren sondern 
auch den µC "Fernsteuern" und im Einzelschritt jeden Befehl und deren 
Ergebnisse anschauen. Das hilft ungemein beim Verständnis.

Ein AVR ist in der Hinsicht für den Einstig eines der teuersten 
Varianten. Das liegt wohl auch daran dass der AVR schon sehr alt ist und 
die neueren µC ein deutlich besseres Preis/Leistungsverhältnis bieten.

Besser ist ein PIC (Debugger gibt es als PICKIT-3 für ca. 40 EUR)
Oder ein ARM (z.B. LPC oder STM32 Boards gibt es incl. Debugger für 
12..20 EUR (z.B. STM32F4DISCOVERY))

Eine Auflistung der Kosten für den Einstieg ist z.B. hier ersichtlich:
http://www.mikrocontroller.net/articles/STM32_f%C3%BCr_Einsteiger#Kosten

von Kein Name (Gast)


Lesenswert?

>Damit kann man den µC nur programmieren und hoffen das Programm
>macht auch das was man will.

Stimmt nicht so ganz. Man muss überlegen, warum es nicht funktioniert. 
Mit einem Debugger kann man halt irgendwas eintippen und schaen warum es 
nicht funktioniert.

Sicher - mit einem Debugger geht es 5x so schnell. Aber ohne lernt man 
mehr.

von Klaus I. (klauspi)


Lesenswert?

Habe gerade zufällig in der Bucht etwas passendes gefunden:
Einfach mal nach "Arduino Starter Kit" suchen, da gibt es einige 
Bauteil-Zusammenstellungen mit und ohne dem eigentlichen 
Arduino/Atmega328.

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.