Forum: Mikrocontroller und Digitale Elektronik (Wieder)Einsteiger in Sachen µC, wie fange ich sinnvoll an?


von Daniel H. (Firma: keine) (commander)


Lesenswert?

Hallo allerseits,

vor zwei Jahren habe ich im Rahmen einer Vorlesung an der Uni einen AVR 
Butterfly programmieren müssen.
Beim Aufräumen vor zwei Tagen ist mir dieser wieder in die Hände 
gefallen und seitdem treibe ich mich wieder hier und auf anderen Seiten 
herum.

Nun, ich wollte schon damals tiefer in die Programmierung von 
Mikrocontrollern einsteigen, aber mangels Geld und Zeit konnte ich mir 
dies nicht erlauben. Nun bin ich allerdings fest entschlossen, zumindest 
einmal zu versuchen, das Ganze zu meinem Hobby zu machen (im moment habe 
ich nur Uni und Arbeit, das ist nicht wirklich erfüllend).

Mein Problem ist nur, wie ich anfangen soll. Klar, ich habe hier den 
Butterfly herumliegen, mich stört daran aber, dass dort quasi schon 
alles fest verdrahtet ist, ich jedoch gerne etwas selber 
"zusammenstöpseln" würde (Lego-Syndrom?). Auch die elektronischen 
Grundlagen kenne ich, ich komme mit Strom- und Spannungsteilern zurecht, 
weiß wie man die Werte von Dioden, Transistoren, Operationsverstärkern 
usw. berechnet. Nur leider kenne ich hier eben nur die Theorie (x 
Vorlesungen im elektro- und informationstechnischen Bereich), möchte 
jedoch auch etwas Erfahrung in der Praxis kriegen. Auch die 
programmiertechnischen Grundlagen sind mir (zumindest für den Butterfly 
und somit den Mega169V) bekannt.

Nun habe ich in den letzten Tagen viel gelesen, bin aber irgendwie nicht 
wirklich schlauer. Die einen sind der Meinung, dass unterhalb des STK500 
bzw. STK600 alles nur Spielzeug ist. Andere sind der Meinung, dass die 
STK500/STK600 vollkommen oversized sind, und dass man lieber eines der 
diversen Evaluationsboard von Pollin und Co. nehmen sollte. Und wieder 
andere schwören auf Steckbretter. Wo soll ich also nun anfangen?

Vielleicht eine kurze Zusammenstellung dessen, was ich hier an Material 
habe:

- AVR Butterfly
- USB -> Seriall-Adapter
- AVR ISP MK II
- 15W Lötkolben mit 1.1mm Spitze
- Lötzinn
- Entlötlitze

Man sieht, ich bin perfekt ausgestattet um mir einen autonomen 
Hochleistungsroboter zu basteln ;)

Um es gleich zu sagen, ich möchte an sich gerne bei den AVR bleiben, 
einfach weil ich hiermit schon ein wenig Erfahrung sammeln konnte. Für 
den Anfang wäre mir zunächst einmal wichtig mit unterschiedlichen 
Mikrocontrollern arbeiten zu können, um ihre Grenzen usw. kennen zu 
lernen, wobei ich hier wohl DIL-Bauformen bevorzugen würde, da ich 
einfach noch nicht über genug Löterfahrung verfüge, als dass ich mir SMD 
löten zutrauen würde.

Die Kernfrage im moment ist also, womit soll ich anfangen, Schaltungen 
zu bauen und zu programmieren, mit einem der STKxxx, einem 
Evaluationsboard eines Drittherstellers oder soll ich mir ein Steckbrett 
besorgen und damit arbeiten? Ein Steckbrett wäre ja insofern ganz nett, 
da man die Schaltungen einfach wieder umbauen kann, allerdings möchte 
ich über kurz oder lang auch dahin gehen, dass ich mir Schaltungen 
selber löte. Bei den STKxxx ist mir hingegen im moment nicht klar, 
welche Mikrocontroller man programmieren kann, ich habe irgendwie den 
Eindruck, dass man ohne die Zusatzmodule nicht viel damit machen kann 
(?) und bei den Evaluationsboards anderer Hersteller frage ich mich, ob 
ich damit flexibel genug bin um mal einen ATmegax, einen ATtinyy oder 
einen AT90z auszuprobieren.
Natürlich ist mir auch klar, dass wenn ich selber Schaltungen bauen 
will, ich nicht umhin komme mich noch um Widerstände, Kondensatoren, 
LEDs usw. zu kümmern.

Danke für eure Geduld.

Gruß, Daniel

P.S.: Gibt es eigentlich gute (kostenlose) Simulationstools, mit denen 
ich mir zunächst am Rechner Schaltungen erstellen kann um zu schauen, 
wie sich die Schaltung verhält? Und falls es sowas generell gibt, gibt 
es sowas auch für Linux? ;)

von Hubert G. (hubertg)


Lesenswert?

Wenn du einen Butterfly und AVR ISP MKII hast brauchst du kein STKXXX.
Eventuell einen kleinen Robbi wie den NIBO-Bee besorgen, da hast du eine 
Weile zum programmieren.
Einfache Simulationen funktionieren mit dem AVR-Studio.

von oldmax (Gast)


Lesenswert?

Hi
Ich kenn Butterfly und Avr Isp MK 11 nicht, aber ich habe mit einem 
einfachen Pollinboard angefanggen, dazu ein Steckbrett für Versuche vor 
der Platine und bin damit gut zufrieden. Assembler und AVR Studio für 
den µc und Daelphi für die PC Seite. Das ergibt ganz lustige 
Anwendungen, auch wenn die Verbindung "nur" RS232 ist.
Gruß oldmax

von Daniel H. (Firma: keine) (commander)


Lesenswert?

Hallo,

vielen Dank für eure Antworten. Also, der NIBO-Bee hört sich schonmal 
interessant an, zumal der Preis erschwinglich ist allerdings kann ich 
das STK500 für 10€ weniger bekommen, da ich Student bin... wobei mir 
dann auch gerade auffällt, dass jegliche Evaluationsboards ebenso 
unnötig wären, da das STK500 eben für mich günstig zu kriegen ist. 
Allerdings kann man NIBO-bee ja auch nicht direkt mit dem STK500 
vergleichen... immerhin gibt es bei Ersterem richtig Action ;)

Von Vorteil wäre beim NIBO-Bee sicherlich, dass ich hier auch ein wenig 
was basteln könnte. Damit kommt ich dann zum nächsten Punkt, so wie ich 
das sehe sollte ein Steckbrett ohnehin zum Repertoire eines jeden 
Bastlers gehören, damit man schnell einmal Schaltungen aufbauen und 
testen kann. Gleichzeitig stellt sich mir dann jetzt die Frage, wenn ich 
mir eines solche holen sollte, in welchen Mengen ich welche Bauteile 
brauche. Ich weiß, das kommt in erste Linie darauf an, was ich bauen 
will, wenn ich rein passive Schaltungen bauen will brauche ich sicher 
keine Dioden und Transistoren.
Aber, was stellt eine gut Grundausstattung dar? ich habe im 
Anfängerartikel eine zusammenstellung der Bauteile gesehen, die man als 
Anfänger haben sollte. Allerdings stellt sich mir die Frage nach der 
Anzahl, die man zu Beginn am besten von den jeweiligen Bauteilen haben 
sollte.

Gruß,
Daniel

von Stefan B. (stefan) Benutzerseite


Lesenswert?

Welche Funktion des STK500 brauchst du denn zusätzlich zu den Funktionen 
des vorhandenen USB -> Serial-Adapters und des vorhandenen AVR ISP MK 
II?

von Daniel H. (Firma: keine) (commander)


Lesenswert?

Hallo,
ich weiß nicht ob ich sie brauche, die Frage ist eher, ob ich sie mal 
brauchen könnte weswegen es sinnvoll sein könnte, sich das Board zu 
holen :)

Gruß,
Daniel

von Stefan B. (stefan) Benutzerseite


Lesenswert?

2x könnte in einem Satz - dieser "Vorratskauf" hätte sich für mich 
bereits erledigt ;-)

von Daniel H. (Firma: keine) (commander)


Lesenswert?

Ok, klär mich auf was der "Vorratskauf" mit dieser sprachlichen Finesse 
zu tun haben kann? ;)

von Karl H. (kbuchegg)


Lesenswert?

Wenn du ohnehin den Butterfly schon hast:
Wie wäre es mit so was
http://elmicro.com/de/atavrbfly.html

> Mein Problem ist nur, wie ich anfangen soll. Klar, ich habe hier
> den Butterfly herumliegen, mich stört daran aber, dass dort quasi
> schon alles fest verdrahtet ist,

?
Am unteren Rand sind doch einige Portpins herausgeführt! Stiftleiste 
einlöten und los gehts.

von (prx) A. K. (prx)


Lesenswert?

Dürfte direkt bei ECROS billiger sein.

von Karl H. (kbuchegg)


Lesenswert?

A. K. schrieb:
> Dürfte direkt bei ECROS billiger sein.

:-)
War der erste Link von Google

Bei ECROS:

Butterfly Carrier Bare PCB only             $8.95
Butterfly Carrier with Complete Parts Kit  $18.95
Butterfly Carrier Parts Kit Only           $10.00

Da kann man doch nicht meckern :-)

von Daniel H. (Firma: keine) (commander)


Lesenswert?

Hallo,

natürlich habe ich das Butterfly-Modul, und natürlich kann ich auch 
damit arbeiten. Aber es geht mir eben auch darum, dass ich auch 
irgendwann (und zwar lieber früher als später) andere Mikrocontroller 
ausprobieren will, und damit bin ich dann mit dem Butterfly doch sehr 
eingeschränkt bzw. so oder so gezwungen mir irgendwann zu überlegen, wie 
ich denn nun andere Mikrocontroller als den auf dem Butterfly 
programmiere.

von Hubert G. (hubertg)


Lesenswert?

Du hast doch den AVR-ISP-MKII.
Auf deine zukünftigen Boards einen ISP-Stecker und es flutscht schon.

von Daniel H. (Firma: keine) (commander)


Lesenswert?

Hallöchen,

also, ich habe mich jetzt so entschieden, dass ich mir erstmal ein 
Steckbrett nebst Komponenten besorge und mir Schaltungen 
zusammenstöpsel. Ich denke das hat für den Anfang einfach den Vorteil, 
dass ich schnell verschiedenste Schaltungen zusammenbasteln und dann 
auch in verbindung mit dem µC testen kann.

Mein Einkaufsliste sieht jetzt wie folgt aus (alles Reichelt):

STECKBOARD 4K7V  Experimentier-Steckboard 2560/700 Kon     1
MK 612S          10-teiliger Verbindungsleitungs-Satz      1
PEAKTECH 1035    Peaktech 1035 - Digital Multimeter        1
SA 39-11 GN      7-Segment-Anzeige, grün, 10,0mm, gem.     1
1/4W 100         Kohleschichtwiderstand 1/4W, 5%, 100     10
SMCC 10µ         Drosselspule, Festinduktivität, axial     2
KERKO 100N       Keramik-Kondensator 100N                 20
PT 6-L 10K       Einstellpotentiometer, liegend, 6mm,      2
1/4W 1,5K        Kohleschichtwiderstand 1/4W, 5%, 1,5     10
1/4W 10K         Kohleschichtwiderstand 1/4W, 5%, 10 K    10
LED 3MM 2MA GN   LED 3mm, low-Current, grün               10
LED 3MM 2MA RT   LED 3mm, low-Current, rot                10
TASTER 3301B     Kurzhubtaster 6x6mm, Höhe: 9,5mm, 12V    10
1N 4001          Gleichrichterdiode, DO41, 50V, 1A        10
µA 7805          Spannungsregler 1A positiv, TO-220        1
RAD 10/100       Elektrolytkondensator, 6,3x11mm, RM 2    10
SL 1X40G 2,54    40pol. Stiftleiste, gerade, RM 2,54       2
SL 2X40G 2,54    2x40pol.-Stiftleiste, gerade, RM 2,54     2
KERKO 22P        Keramik-Kondensator 22P                  10
8,0000-HC49U-S   Standardquarz, Grundton,   8,0 MHz        2
KERKO 47N        Keramik-Kondensator 47N                  10
GS 28P-S         IC-Sockel, 28-polig, superflach, gedr     1
GS 8P            IC-Sockel, 8-polig, superflach, gedre     1
ATMEGA 88-20 PU  ATMega AVR-RISC-Controller                1
HEBW 21          Hohlstecker-Einbaubuchse, gewinkelt,      1
YSTY 4X2-5       Fernmeldeleitung, 4x2x0,6mm, 5m-Ring      1
ATTINY 45-20PU   Atmel AVR-RISC-Controller                 1
BC 547A          Transistor NPN TO-92 45V 0,1A 0,5W       10
1/4W 470K        Kohleschichtwiderstand 1/4W, 5%, 470     10
1/4W 180K        Kohleschichtwiderstand 1/4W, 5%, 180     10
1/4W 24K         Kohleschichtwiderstand 1/4W, 5%, 24 K    10
RAACO PSC 6-12   Sortimentskoffer,B/T/H 175x145x32mm,1     1

Vorhanden ist (neben dem ganzen anderen Zeug von weiter oben) schon ein 
stabilisierten Netzteil, dass ich von 1.5 bis 12 Volt regeln kann.

Ich habe mich hierbei ans Tutorial gehalten (zumindest an die Teile, die 
ich für den Anfang ausprobieren möchte), wobei ich gerade bei 
Kleinteilen wie Widerständen usw. einfach auf volle 10er gerundet habe, 
weil es dann eh nur ein paar Cent mehr kostet. Anstatt der speziellen 
Steckbrücken fürs Steckbrett habe ich mir gedacht, dass ich einfach die 
Fernmeldeleitung nehme, weil sie günstiger ist und ich da mehr Draht 
rauskriege.
Die Quarze habe ich drin, weil ich die µC auch mal gerne mit externem 
Takt ausprobieren möchte. Ausserdem (für den Anfang) erstmal nur einen 
ATmega88 und einen ATtiny45, die kann ich hier aber schnell nachkaufen, 
weil Conrad bei meiner Arbeit fast um die Ecke ist.

Die letzten drei Widerstände in der Liste sind für die Transistoren als 
Basis- und Basis-Emitter-Widerstände gedacht, 470k als BE-Widerstand und 
24k + 180k als minimal/maximal berechneter Wert für die Basis.

Nun noch zwei Fragen:

1. Was sollte ich nehmen, Kohleschicht- oder Metallschichtwiderstände? 
Ich weiß aus der Vorlesung nur, dass Kohleschicht wohl mehr 
Stromrauschen erzeugen soll, was aber, wie ich diversen Beiträgen im 
Forum entnehme, für den Anfang irrelevant sein soll.

2. Ich möchte gerne die µC miteinander kommunizieren lassen, bzw. zu 
Beginn möchte ich eigentlich nur erreichen dass der eine µC registriert, 
wenn der andere z.B. einen Port-Pin schaltet. Kann ich hierzu einfach 
die beiden Port-Pins verbinden oder muss ich hier schaltungstechnisch 
noch was beachten (falls ja, was)? Oder sollte ich mich gleich mal 
Richtung SPI/I²C o.ä. orientieren.

Edit:
Achja, programmieren werde ich dann auch über meinen ISP MK II.

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.