AVR
(TODO: umstrukturieren, soll eher eine Art Portalseite sein)
- Hersteller: Atmel
- AVR steht für Advanced Virtual RISC (in einem Paper von Alf Egin Bogen und Vegard Wollan)
- 8 Bit
- Architektur ist für Hochsprachen (C) optimiert
- Harvard-Architektur (getrennter Befehls- und Datenspeicher)
- 32 Register, kein Akkumulator
- 3 Pointerregister
- Multiplikationsbefehle bei den neueren ATmegas
- ~60 Befehle
- die meisten Befehle dauern 1 oder 2 Taktzyklen
- 1-128kB Flash-ROM, 128B-4kB EEPROM, 0-4kB RAM
- viele Typen mit ADC, SPI, I2C
- In-System progammierbar
- JTAG bei ATmegas mit mindestens 16 KB ROM (ausgenommen ATmega103)
- Assembler, Simulator und guter C-Compiler kostenlos (AVR-GCC)
Das Design, das an der Universität für Technologie in Trondheim/Norwegen entwickelt wurde, hat Atmel von einer Schwedischen Firma gekauft. Laut Atmel bedeutet AVR garnichts, manche behaubten es bedeute "Alf (Egil Bogen) and Vegard (Wollan)'s Risc processor" oder "Arnes og Vegards RISC"...
Typen
AT90
Die "Basic Line" der AVR Reihe. Sie beinhaltet die ersten AVRs die produziert wurden und beginnen alle mit "AT90". Alle Typen wurden mit der Zeit von den beiden Nachfolgereihen ersetzt: ATMega bzw. ATTiny.
ATMega
Die ATmega-Mikrocontroller sind ein Teil der AVR-Controllerfamilie. Zusammen mit den ATTiny lösen die ATmega die AT90S-Serie schrittweise ab, wobei es in den meisten Fällen weitgehend pin- und funktionskompatiblen Ersatz für die abgekündigten Controller gibt (ATmega8 statt AT90S4433, ATmega8515 statt AT90S8515 usw.).
ATMEL ATmega AVRs werden mit aktiviertem internem Taktgeber ausgeliefert. Schließt man ein andere externe Taktquelle an (Quarz, Quarzoszillator o.ä.), wird diese nicht automatisch genutzt. Zum Aktivieren müssen die Fuse-Bits des Controllers entsprechend einstellt werden (siehe Datenblatt).
Bei ATmegas mit integriertem JTAG-Interface (z.Zt. solche ab 16kB Flash-Speicher) werden ab Werk mit aktiviertem JTAG-Interface ausgeliefert. Dieses Interface belegt vier Port-Pins (PORTC bei ATmega16/32), die nicht für eigene Anwendungen genutzt werden können, solange das JTAG-Interface aktiviert ist. Das Interface lässt sich über ein Fuse-Bit (JTAGEN) dauerhaft, und über ein Bit im MC-Kontroll-Register (MCUCR) per Software zur Laufzeit an- und abschalten (siehe Datenblatt).
ATTiny
Die ATTiny stellen das untere Ende der neuen AVR Linie von Atmel da und waren zunächst durch das Fehlen von internem SRAM gekennzeichnet. Mittlerweile gibt es aber so bemerkenswerte Controller wie den ATtiny2313, deren Möglichkeiten und Funktionen den ATMegas in nichts nachstehen. Der ATtiny2313 soll aber leider erst ab September 2004 lieferbar sein.
Ein weiterer Unterschied zu den ATmega's ist der fehlende Hardwaremultiplizierer. Jede Multiplikation muß also in Software ausgeführt.