• Willkommen im Geoclub - dem größten deutschsprachigen Geocaching-Forum. Registriere dich kostenlos, um alle Inhalte zu sehen und neue Beiträge zu erstellen.

AVR-Anfänger: Wie starten?

Sushkin

Geocacher
Moin!

Also früher dachte ich ja, Blinkschaltungen per Mikrokontroller zu bauen wäre mit Kanonen auf Spatzen schießen. Aber jetzt lese ich, dass die Teile doch sehr preiswert und stromsparend sind (z.B. Atmel Tiny AVR: 80 cent bei Reichelt, bei 3 Volt Betriebsspannung und internem 128 kHz Oszillator beträgt die Stromaufnahme 0,04 mA bzw. 0,01 mA im Idle-Modus). Und es scheint außerdem, dass man kaum zusätzliche Komponenten für den Betrieb braucht: Keinen externen Schwingquarz, keinen Spannungsregler etc.

Soweit so gut. Aber was brauche ich jetzt wirklich, um anfangen zu können? Was empfehlt Ihr mir da? Klar, nen Mikrokontroller, Lötzinn und ne Lochrasterplatine, bisschen Software (AVT-Studio denke ich). Was noch? Gibt's ne elegante und günstige Möglichkeit, den AVR über einen USB-Anschluss am Rechner zu programmieren? Ich habe auch noch nen alten Rechner mit serieller Schnittstelle, aber lieber würde ich alles auf meinem neuen PC machen (der hat halt nur USB). Wie fange ich jetzt an?

Viele Grüße,
Sushkin
 

huzzel

Geowizard
Parallele Schnittstelle ist geschickter, da der Programmer damit erheblich einfacher ist.
Schaue mal bei reaktivlicht.de rein und lade Dir das Kochbuch herunter. Da ist es schön und einfach nachvollziehbar beschrieben.
 

thomas_st

Geowizard
Sushkin schrieb:
Also früher dachte ich ja, Blinkschaltungen per Mikrokontroller zu bauen wäre mit Kanonen auf Spatzen schießen.
Hätte ich bis vor zwei Jahren auch gedacht - aber mit einem µC kommt man billiger als das alles diskret aufzubauen.

Sushkin schrieb:
Soweit so gut. Aber was brauche ich jetzt wirklich, um anfangen zu können?
- µC ist klar
- Taster, Widerstände, LEDs für die Ein-/Ausgabe
- Transistoren, LDR wenn es dann etwas aufwendiger werden soll ...
- Programmieradapter (Programmer): bewährt hat sich wohl der für die parallele Schnittstelle -> siehe Kochbuch
- Entwicklungsumbebung für die Programme. Hier entscheidet in erster Linie, welche Programmiersprache Du nutzen willst: für Basic > Bascom; für C > win_avr + AVR-Studio und Assembler > AVR-Studio allein). Bascom ist für kleine Projekte (2kByte IIRC) kostenlos als Demo zu erhalten, darüber dann kostenpflichtig; win-avr ist kostenlos (Open Source); AVR-Studio gibt es bei Atmel nach eine Registrierung kostenfrei. Wenn Du letztere nutzen willst: erst Win-avr und anschließend AVR-Studio installieren, dann integriert sich win-avr gleich ins Studio. Aber Achtung: ich weiß nicht, ob AVR-Studio obigen Parallelport-Programmer unterstützt :/

Sushkin schrieb:
Gibt's ne elegante und günstige Möglichkeit, den AVR über einen USB-Anschluss am Rechner zu programmieren?
Ich nutze das STK500 (~60€) via USB-zu-Serial-Adapter. Es gibt aber auch Programmieradapter, die direkt am USB-Port laufen (AVR Dragon, AVR JTAGICE mkII und diverse Clone davon) - mit diesen habe ich aber keine Erfahrungen.

HTH,
Thomas(_st)
 

Fridolin

Geocacher
Okay, jetzt wird es auch für mich interessant. Ich dachte bisher das es ein Hexewerk sei die AVRs zu programieren. Wenn ich das mit dem Programieradapter so lese und die Seite 6 des Kochbuchs sehe könnte ich mir vorstellen da auch gefallen dran zu finden.
Nachher mal los ziehen, den Elektronikladen meines vertrauens plündern und im Keller ein bischen Platz schaffen .....

Wäre schön noch mehr Tips für Anfänger zu hören, das erleichtert den Einstieg und motivier (mich) ungemein.

Danke erst mal für's anfixen.
 

Windi

Geoguru
Zum Einsteigen finde ich das Board von myavr.de recht interessant.
Da ist eigentlich alles drauf was man zum Experimentieren braucht.
Taster, Potis, LEDs, Piezo-Piepser, Programmierinterface, RS232-Schnittstelle, LC-Display und ein Mega8.
 

stonewood

Geowizard
Anfängerbuch? Da würd ich als erste Näherung erst mal die Kochbuch-Programme empfehlen. Die tun dann auch was sinnvolles, und wenn man mal verstanden hat warum die Watchdog-LDR-Variante so tut wie sie soll braucht's dann auch kein Anfängerbuch mehr.

Eigentlich bleibt da nur die Gegenfrage: Worin bist Du anfänger? Im Programmieren allgemein? Im Löten? Bei Mikrocontrollern, speziell Atmel AVR? In (AVR-)C oder in (AVR)-Basic?
 

00M

Geomaster
stonewood schrieb:
Anfängerbuch? Da würd ich als erste Näherung erst mal die Kochbuch-Programme empfehlen. Die tun dann auch was sinnvolles, und wenn man mal verstanden hat warum die Watchdog-LDR-Variante so tut wie sie soll braucht's dann auch kein Anfängerbuch mehr.

Eigentlich bleibt da nur die Gegenfrage: Worin bist Du anfänger? Im Programmieren allgemein? Im Löten? Bei Mikrocontrollern, speziell Atmel AVR? In (AVR-)C oder in (AVR)-Basic?

Ums löten geht es nicht.

Es geht eher um das Verstehen der Befehle.
Welcher Code bewirkt was?
Wie muss das Programm aufgebaut sein?

Ein paar Kenntnisse von Basic sind vorhanden, mit C habe ich mich noch nicht richtig beschäftigt.
 

Tennisanlage

Geocacher
Um die Dinger richtig zu verstehen, solltest Du erstmal die Tutorials bei AVR Assembler für Dummies oder http://www.avr-asm-tutorial.net/ reinziehen. Da erfährt man wie ein µC "spricht/denkt/arbeitet". Natürlich ist Assembler nichts für komplexe Aufgaben, da sind C oder Basic klar im Vorteil, aber bleibt da leider der Verstand recht auf der Strecke. Gute Bücher gibt es viele. Es kommt nur drauf an, was man mal nutzen möchte; ASM, C oder Basic. Wenn Du unschlüssig bist, würde ich an deiner Stelle C lernen, da lernt man sehr viel nützliches gleich mit ( PHP z.B. bzw andere Sprachen die an C angelehnt sind ) Mit Basic hab ich garnicht erst angefangen, da die Software kostenpflichtig ist und bei C bekommt man sie geschenkt ;)
 

Windi

Geoguru
Tennisanlage schrieb:
Mit Basic hab ich garnicht erst angefangen, da die Software kostenpflichtig ist
Das ist so nicht ganz richtig.
Bascom gibt es in einer kostenlosen und einer kostenpflichtigen Variante.
Die kostenlose Variante ist begrenzt auf 4 kB Code. Das reicht aber für alle bisher hier beschriebenen Projekte aus.
 

Tennisanlage

Geocacher
Windi schrieb:
Die kostenlose Variante ist begrenzt auf 4 kB Code. Das reicht aber für alle bisher hier beschriebenen Projekte aus.
Das ist war, 4kB erinnere ich mich auch noch, sind aber schnell erreicht, also bei mir zumindest. Sind denn die 4kB Maschinencode oder Programmcode :eek:ps: da wär auch nochmal ein riesen Unterschied
 

thomas_st

Geowizard
00M schrieb:
Welches Anfängerbuch auf Deutsch ist denn empfehlenswert?
Die Frage nach dem "Für was soll das Buch gut sein? bzw. "Was willst Du aus dem Buch lernen?" ist sehr berechtigt - weil hier nämlich unterschiedliche Punkte reinspielen. Du wirst vermutlich kein Buch finden "C lernen mit AVR" oder die "Kleine AVR Fibel für BASIC-Anfänger". Einerseits müsstest Du Dir also ein Buch bzgl. Deiner favorisierten Programmiersprache zulegen und andererseits ein Buch zum AVR und - ganz wichtig - das Abstraktionsvermögen Beispiele z.B. aus dem AVR-Buch in Deine Programmiersprache zu übersetzen und andersherum.

Was vielleicht noch möglich wäre, sind Bücher, die speziell z.B. den Bascom-Compiler (z.B. dieses hier *) oder den win-avr behandeln - nur ob Du dort auch eine Einführung in Basic bekommst, kann ich nicht sagen

Leider kann ich Dir keine Bücher empfehlen, da ich mir mein AVR-Wissen in erster Linie aus den Datenblättern ("-büchern") angelesen habe.

Viele Grüße und ich hoffe, dass es wenigstens etwas geholfen hat,
Thomas(_st)
______________
* Ich habe das Buch nicht und kann daher auch nichts zur Qualität sagen.
 

Starglider

Geoguru
Ich würde erstmal die Tutorien auf www.mikrocontroller.net durcharbeiten. Das AVR-GCC Turoral ist schon sehr umfassend.
Danach weisst du wenigstens, welche Themen in einem Buch stehen müssten das dir weiterhelfen soll.
 

stonewood

Geowizard
Windi schrieb:
Tennisanlage schrieb:
Sind denn die 4kB Maschinencode oder Programmcode :eek:ps: da wär auch nochmal ein riesen Unterschied
Es handelt sich um 4 kB Maschinencode.
Außerdem muß man erst mal einen Prozessor mit 4K flash haben: Der Tiny13 hat 1K flash, der Tiny24 nur deren 2, Tiny44 hat 4K, Tiny84 hat 8K. Erst der kann von der Freeware-Version nicht mehr komplett programmiert werden.

Übrigens ist die Kaufversion für unter 100EUR zu haben.
 

00M

Geomaster
Starglider schrieb:
Ich würde erstmal die Tutorien auf http://www.mikrocontroller.net durcharbeiten. Das AVR-GCC Turoral ist schon sehr umfassend.
Danach weisst du wenigstens, welche Themen in einem Buch stehen müssten das dir weiterhelfen soll.
Unter gewissen Aspekten ist mir teilweise ein Buch lieber als etwas online zu lesen.
Ein Buch kann ich auch in Bus und Bahn lesen, oder draußen auf dem Liegestuhl.
Einen Laptop zu Lesen mitzuschleppen ist schon umständlicher, und dann muss man auch noch eine Verbindung zum www haben.
 
Oben