AVR: Unterschied zwischen den Versionen
Zeile 54: | Zeile 54: | ||
* [http://www.lochraster.org/rumpus Rumpus von lochraster.org] ist ein günstiges und gut dokumentiertes Starterkit mit Atmega 168 | * [http://www.lochraster.org/rumpus Rumpus von lochraster.org] ist ein günstiges und gut dokumentiertes Starterkit mit Atmega 168 | ||
* [http://www.das-labor.org/wiki/Laborboard Laborboard von das-labor.org] - Bauplan Lochrasterplatine mit Atmega32 | * [http://www.das-labor.org/wiki/Laborboard Laborboard von das-labor.org] - Bauplan Lochrasterplatine mit Atmega32 | ||
* [http://nibo.nicai-systems.de Roboterbausatz NIBO 2] - autonomer Roboter mit einem ATmega128 und einem ATmega88 / [http://nibobee.nicai-systems.de Roboterbausatz NIBObee] - Roboter mit ATmega16 und integriertem USB-Programmer | * [http://nibo.nicai-systems.de Roboterbausatz NIBO 2] - autonomer Roboter mit einem ATmega128 und einem ATmega88 / [http://nibobee.nicai-systems.de Roboterbausatz NIBObee] - Roboter für Einsteiger mit ATmega16 und integriertem USB-Programmer | ||
* [http://www.nerdkits.com Nerdkit - Starterkit inkl. Doku] - ideal für Anfänger | * [http://www.nerdkits.com Nerdkit - Starterkit inkl. Doku] - ideal für Anfänger | ||
* [http://arduino.cc/ Arduino] - Ein modulares System mit verschiedenen Entwicklungsboards (insbesondere auch eins mit ATmega1280, dem mit den vielen dünnen Beinchen), das aufgrund der Nutzung einer JAVA-IDE und "Wiring" besonders einfach zu nutzen ist. Es gibt verschiedene Clones unter Namen wie Freeduino, Seeeduino etc., auch den Lilypad zum Einnähen in Kleidung und Verschaltung mittels leitender Fäden. Die neueren Versionen können über einen standardmäßig mit ausgelieferten Bootloader ohne sonstige Hardware direkt über USB bespielt werden. | * [http://arduino.cc/ Arduino] - Ein modulares System mit verschiedenen Entwicklungsboards (insbesondere auch eins mit ATmega1280, dem mit den vielen dünnen Beinchen), das aufgrund der Nutzung einer JAVA-IDE und "Wiring" besonders einfach zu nutzen ist. Es gibt verschiedene Clones unter Namen wie Freeduino, Seeeduino etc., auch den Lilypad zum Einnähen in Kleidung und Verschaltung mittels leitender Fäden. Die neueren Versionen können über einen standardmäßig mit ausgelieferten Bootloader ohne sonstige Hardware direkt über USB bespielt werden. |
Version vom 21. Juli 2010, 07:03 Uhr
Die AVR-Mikrocontroller von Atmel sind besonders in Deutschland sehr beliebt, da sie meist in DIL-Gehäusen verfügbar sind, per In-System-Programming programmiert werden können, und eine Vielzahl von kostenlosen Programmen zur Softwareentwicklung (Assembler, Compiler) existiert. Diese Eigenschaften machen den AVR zum perfekten Mikrocontroller für Anfänger.
Über die Bedeutung des Namens "AVR" gibt es verschiedene Ansichten; manche meinen er sei eine Abkürzung für Advanced Virtual RISC, andere vermuten dass der Name aus den Anfangsbuchstaben der Namen der Entwickler (Alf Egin Bogen und Vegard Wollan RISC) zusammengesetzt wurde. Laut Atmel ist der Name bedeutungslos.
Architektur
Die Architektur ist eine 8-Bit-Harvard-Architektur, das heißt, es gibt getrennte Speicher für Programmcode (Flash-ROM) und Daten (RAM). Bei der Programmierung hat das den Nachteil, dass sich Konstanten aus dem ROM nicht mit dem gleichen Code laden lassen wie Daten aus dem RAM. Abgesehen davon ist der Aufbau des Controllers recht übersichtlich und birgt wenige Fallstricke.
- 32 größtenteils gleichwertige Register
- 3 Pointerregister
- ca. 110 Befehle, die meist 1-2 Taktzyklen dauern
- Taktfrequenz bis 32MHz
- Betriebsspannung von 1,8-5,5 V
- Speicher
- Peripherie: AD-Wandler, 8- und 16-Bit-Timer mit PWM, SPI, I²C (TWI), UART, Analog-Komparator, Watchdog, externer SRAM
- JTAG bei den größeren ATmegas
- debugWire bei den neueren AVRs
Software
- AVR-Studio: Kostenlose Enwicklungsumgebung mit Simulator
- KontrollerLab: Kostenlose Entwicklungsumgebung für KDE
- Microsoft Visual C++ Express: Kostenlose Enwicklungsumgebung (Win),über makefile
- AVR Eclipse: Plugin-basierte kostenlose Entwicklungsumgebung (Win, Linux, Mac)
- Code::Blocks: Freie Entwicklungsumgebung (Win, Linux, Mac), die auch für AVR-Projekte Unterstützung anbietet
- AVR-GCC: Kostenloser C-Compiler
- AVRA: freier AVR-Assembler
- Bascom AVR beliebter Basic-Compiler
- AVRCo Pascal Compiler
- amforth: interaktiver und erweiterbarer Kommandointerpreter für AVR unter GNU Lizenz (Open Source)
- SJC: Experimenteller Java-Compiler unter GPL mit AVR-Unterstützung
Boards & Starterkits
Siehe dazu auch die Artikel in der Kategorie AVR-Boards und den Artikel zur AVR Programmierung.
- diverse im Mikrocontroller.net-Shop
- STK200
- STK500
- STK600
- AVR Dragon
- AVR Butterfly
- AVR Raven
- AVR-ISP / AVR-ISP mkII
- AVR JTAG-ICE
- RN-Control
- C-Control PRO
- myAVR Board
- AVR Lehrbuch und -bausatz
- Pollin - preiswerte Starterkits sowie Lösungen für RFID-125kHz und EtherNet
- Rumpus von lochraster.org ist ein günstiges und gut dokumentiertes Starterkit mit Atmega 168
- Laborboard von das-labor.org - Bauplan Lochrasterplatine mit Atmega32
- Roboterbausatz NIBO 2 - autonomer Roboter mit einem ATmega128 und einem ATmega88 / Roboterbausatz NIBObee - Roboter für Einsteiger mit ATmega16 und integriertem USB-Programmer
- Nerdkit - Starterkit inkl. Doku - ideal für Anfänger
- Arduino - Ein modulares System mit verschiedenen Entwicklungsboards (insbesondere auch eins mit ATmega1280, dem mit den vielen dünnen Beinchen), das aufgrund der Nutzung einer JAVA-IDE und "Wiring" besonders einfach zu nutzen ist. Es gibt verschiedene Clones unter Namen wie Freeduino, Seeeduino etc., auch den Lilypad zum Einnähen in Kleidung und Verschaltung mittels leitender Fäden. Die neueren Versionen können über einen standardmäßig mit ausgelieferten Bootloader ohne sonstige Hardware direkt über USB bespielt werden.
- Modularis - AVR Mikrocontroller-Boards (z.T. mit Zusatz-Speicher und USB) die über Flachbandkabel erweitert werden können. Es gibt bis jetzt Zubehör-Module mit Taster, Motor H-Brücke, XBee und Winkelsensor.
- AVR Mikrocontroller Lehrbuch (R. Walter, 3. Auflage 2009) und Bauteilesatz incl. Leiterplatte; www.b-redemann.de
Projekte
Siehe dazu auch die Artikel in der Kategorie AVR-Projekte.
- PWM_foxlight - LED Lampe mit PWM
- Digitaler Funktionsgenerator
- Midi Rekorder mit MMC/SD-Karte
- Schrittmotor-Controller (Stepper)
- Pulsuhrempfänger mit AVR Butterfly
- DCF77-Funkwecker mit AVR
- Fahrradcomputer
- Einfacher und billiger Webserver mit AtMega32
- AVR RFM12
- Selbstbau Schachcomputer SHAH mit ATMega88V
- Giess-o-mat - vollautomatische Blumengießanlage
- POV-LED mit ATmega8, USB und Beschleunigungssensor
- Attiny-Mikrokontroller für Schulbedarf
Tutorials
Literatur
- C.Kühnel Programmieren der AVR RISC Mikrocontroller mit BASCOM-AVR ISBN 3898119378 (2000) ISBN 3907857046 (2.Aufl.2002)
- R.Mittermayr AVR-RISC: Embedded Software selbst entwickeln Franzis 2008 ISBN 3772341071
- F.Schäffer AVR: Hardware und C-Programmierung in der Praxis Elektor 2008 ISBN 3895762008
- G.Schmitt Mikrocomputertechnik mit Controllern der Atmel AVR-RISC-Familie...Oldenbourg 4.Aufl.2008 ISBN 3486587900 ISBN 3486580167 (2006) ISBN 3486577174 (2005) Verlags-Webseite mit Buchauszügen
- M.Schwabl-Schmidt Programmiertechniken für AVR-Mikrocontroller Elektor 2008 ISBN 3895761761 Webseite des Autors
- M.Schwabl-Schmidt Systemprogrammierung für AVR-Mikrocontroller Elektor 2009 ISBN 3895762180
- W.Trampert Messen,Steuern und Regeln mit AVR Mikrocontrollern Franzis 2004 ISBN 3772342981
- W.Trampert AVR-RISC Mikrocontroller Franzis ISBN 3772354769 (2003) ISBN 3772354742 (2002) ISBN 3772354750 (2000)
- P.Urbanek Embedded Systems: Ein umfassendes Grundlagenwerk ... (2007) ISBN 3981123018 Inhaltsverzeichnis
- S./F.Volpe AVR-Mikrocontroller-Praxis Elektor 2001 ISBN 3895760633
- R.Walter AVR-Mikrocontroller-Lehrbuch 3. Auflage Denkholz 2009 ISBN 9783981189445 Webseite des Autors, Buch-Download in geringer Auflösung
Tipps & Hinweise
- AVR Typen - Die verschiedenen Typen (AT90S, ATmega, ATTiny)
- AVR Checkliste - Liste mit Hinweisen zur Lösung üblicher Probleme
- Fuse-Bits - Das Setzen der Fuse-Bits ist ein berüchtigter Fallstrick bei den AVRs; vor dem Rumspielen damit unbedingt diese Hinweise lesen!
- AVR In System Programmer - Programmierhardware
- Pony-Prog Tutorial - Hinweise zur Programmiersoftware PonyProg
- AVRDUDE - Programmiersoftware für die Kommandozeile
- AVR-GCC-Codeoptimierung - Wie man mehr aus dem Controller herausholen kann, ohne ein Assembler-Guru sein zu muessen.
- AVR Softwarepool - Verschiedene Softwaremodule und Codeschnippsel aus der Codesammlung
Weblinks
- AVR101 - systm Videocast von Revision3 Internet Television (engl.).
Weitere Verweise (Links) auf externe Informationen und Projekte finden sich in der Linksammlung.