WikiDer > Atmel AVR

Atmel AVR

Das AVR ist ein 8-BitRISC-Mikrocontroller (µC) von Atmel im Jahr 1996 entwickelt. Der AVR war eine der ersten Mikrocontroller-Familien, die Standard auf ChipFlash-Speicher zur Programmspeicherung anstelle eines notwendigen externen PROMO, EPROM oder EEPROM.

Atmel AVR ATmega8 PDIP

Geräteübersicht

Der AVR ist ein modifizierter Gerät mit Harvard-Architektur wobei auf das Programm und die Daten durch separate physikalische Speichersysteme zugegriffen wird.

Familien

AVRs werden im Allgemeinen in vier Gruppen eingeteilt:

  • winzigAVR — die ATtiny-Serie
    • 0,5–16 KB Programmspeicher
    • 6–32-poliges Gehäuse
    • Begrenztes Peripherieset
  • megaAVR — die ATmega-Serie
    • 4–512 KB Programmspeicher
    • 28–100-poliges Gehäuse
    • Erweiterter Befehlssatz (Multiplikationsbefehle und Befehle zur Nutzung größerer Programmspeicher)
    • Umfangreiches Peripherieset
  • XMEGA — die ATxmega-Serie
    • 16–384 KB Programmspeicher
    • 44–64–100 Stiftgehäuse (A4, A3, A1)
    • Umfangreiche Leistungsmerkmale, wie z DMA, "Event System" und Kryptographie-Unterstützung
    • Sehr umfangreiches Peripherieset mit DACs
  • Anwendungsspezifischer AVR
    • megaAVRs mit besonderen Fähigkeiten, die in anderen Mitgliedern der AVR-Familie nicht zu finden sind, wie LCD-Controller, USB-Controller, Advanced PWM, KÖNNEN usw.
  • 32-Bit-AVRs

Eingang und Ausgang

Die elektrischen, elektronischen und funktionalen Eigenschaften der Verbindungen des Atmel AVR zur Außenwelt sind multifunktional. Das Hauptproblem bei elektrischen Schaltungen ist der Platzbedarf für die Stifte, Verbinder und Verdrahtung. Durch die weitgehende Reduzierung der Schaltungen bei der Integration auf einem Chip kann intern im IC eine Funktionalität bereitgestellt werden, die dazu dient, die externen Verbindungen optimal einzurichten. Dies erfordert, dass der Programmierer die vielen Optionen versteht, aus denen eine Auswahl für den Zweck getroffen werden muss, für den der Prozessor verwendet wird. Beim Start müssen zuerst die richtigen Ein- und Ausgaberegister initialisiert werden.

Beispielsweise können die Anschlusspins hinsichtlich der elektrischen Eigenschaften auf beispielsweise hoch- und niederohmig (Tri-State) oder Open Drain mit "Pull-Widerstand" eingestellt werden. Beim Oszillator kann man sich oft für einen internen Oszillator oder einen externen Oszillator, mit Digitaleingang oder mit Kondensator oder mit Quarz entscheiden. Die elektronischen Eigenschaften können auf Eingang oder Ausgang eingestellt werden. Am Eingang können Sie zwischen digitalen oder analogen Eingängen wählen. Bei analogen Eingängen ein Komparator oder A-D-Wandler. Funktionell sind durch internes Multiplexing alle möglichen Kombinationen möglich, sowohl analog als auch digital: zum Beispiel UART oder I2C oder 1-adrig oder PWM usw.

Die Architektur

Daten-RAM

Blitz, EEPROM, und SRAM sind alle in einem Chip integriert, sodass kein externer Speicher erforderlich ist. Einige Geräte verfügen über einen externen Bus für zusätzlichen Datenspeicher.

Programmspeicher (Flash)

Programmanweisungen werden gespeichert in nichtflüchtiger Speicher. Obwohl die 8-Bit-MCUs jeder Befehl verwendet ein oder zwei 16-Bit-Wörter.

Die Größe des Programmspeichers wird normalerweise im Namen des Gerätes angegeben (zum Beispiel hat die ATmega64-Reihe 64 KB Flash-Speicher.

Es gibt keine Option für externen Programmspeicher; der gesamte vom AVR-Kern ausgeführte Code muss sich im Flash-Speicher auf dem Chip befinden.

Interner Datenspeicher

Der Datenadressraum besteht aus der Registerdatei, I/O-Registern und SRAM.

Interne Register

Die AVRs haben 32 Single-Byte-Register und werden als 8-Bit klassifiziertRISCGeräte.

Bei den meisten Varianten der AVR-Architektur werden die Arbeitsregister auf die ersten 32 Speicheradressen abgebildet (0x0000-0x001F) gefolgt von den 64 I/O-Registern (0x0020-0x005F).

Die tatsächliche SRAM beginnt nach diesen Registern (Adresse 0x0060). (Der I/O-Registerplatz kann bei einigen aufwendigeren Geräten größer sein, daher sind einige der SRAMAbschnitt verwendet.)

Während auf die Registerdatei und die E/A-Register mit speziellen Opcodes separat zugegriffen werden kann, kann auf sie auch zugegriffen und sie manipuliert werden, als wären sie im SRAM sitzen).

EEPROM

Fast alle AVR-Mikrocontroller verfügen über "Electrically Erasable Programmable Read Only Memory" (EEPROM) zur semipermanenten Datenspeicherung. Wie der Flash-Speicher behält das EEPROM seine Daten bei einem Stromausfall.

Bei den meisten Varianten der AVR-Architektur wird der interne EEPROM-Speicher nicht in den adressierbaren Speicherplatz der MCU abgebildet. Es kann nur mit speziellen Zeigerregistern und Lese-/Schreibbefehlen darauf zugegriffen werden. Dadurch ist der EEPROM-Speicher viel langsamer als der interne SRAM.

Da die Anzahl der Schreibvorgänge des EEPROM-Speichers begrenzt ist – Atmel gibt in seinen Datenblättern 100.000 Schreibvorgänge an – sollte eine gut durchdachte EEPROM-Schreibroutine prüfen, ob die Daten von den gewünschten Daten abweichen, bevor sie geschrieben werden.

Programmausführung

Die AVRs von Atmel haben ein zweistufiges, einstufiges Pipeline-Design. Dies bedeutet, dass der nächste Maschinenbefehl geholt wird, wenn der aktuelle ausgeführt wird. Die meisten Befehle benötigen nur ein oder zwei Zyklen, was die AVRs unter den 8-Bit-Mikrocontrollern relativ schnell macht.

Die AVR-Prozessorfamilie wurde mit Blick auf die effiziente Ausführung von kompiliertem C-Code entwickelt und verfügt über mehrere eingebaute Zeiger auf die Aufgabe.

Befehlssatz

Der AVRBefehlssatz ist mehr senkrecht als die meisten 8-BitMikrocontroller, insbesondere die PIC-Mikrocontroller, mit denen AVR konkurriert. Er ist jedoch nicht ganz regelmäßig:

  • Zeigerregister X, Y und Z haben unterschiedliche Adressierungsfähigkeiten.
  • Registrierungsstandorte R0 bis R15 haben andere Adressierungsfähigkeiten als die Registerplätze R16 bis R31.
  • Die E/A-Ports 0 bis 31 haben andere Adressierungsfunktionen als die E/A-Ports 32 bis 63.
  • CLR beeinflusst Flags, wo SER dies nicht tut, obwohl es sich um die genauen umgekehrten Anweisungen handelt. CLR setzt alle Bits auf Null, während SER alle Bits auf Eins setzt.

Darüber hinaus beeinflussen einige chipspezifische Unterschiede die Codegenerierung. CodeZeiger bestehen aus zwei Bytes auf Chips mit 128 kB oder weniger Flash-Speicher, aber drei Bytes auf den größeren Chips; nicht alle Chips haben Hardware-Multiplikatoren; Chips mit mehr als 8 kB Flash-Speicher haben Verzweigungs- und Aufrufbefehle mit größeren Reichweiten usw.

Die weitgehend regelmäßige Befehlssatz ermöglicht die Programmierung mit C- (oder sogar Ada-)Compiler ziemlich einfach. GCC hat AVR-Unterstützung, die seit einiger Zeit weit verbreitet ist. Atmel bat sogar große Compiler-Entwickler für kleine Mikrocontroller um Input, um festzustellen, welcher Befehlssatz für einen Compiler am nützlichsten ist.

Geschwindigkeit

Die AVR-Linie unterstützt Geschwindigkeiten von 0-20 MHz, wobei einige Geräte bis zu 32 MHz erreichen. Ein Betrieb mit geringerer Leistung erfordert normalerweise eine reduzierte Taktgeschwindigkeit. Alle neueren (Tiny und Mega, nicht die 90S) AVRs verfügen über einen On-Chip-Oszillator, wodurch kein externer Taktgeber oder Resonanzkreis erforderlich ist. Einige AVRs verfügen auch über einen Systemtaktgeber, der den Takt bis zu 256 teilen kann. Dieser Prescaler kann zur Laufzeit umkonfiguriert werden, um eine optimierte Taktrate zu ermöglichen.

Da alle Operationen an den Registern R0-R31 einen einzigen Zyklus verwenden, kann der AVR bis zu 1 MIPS (Million Instruktionen pro Sekunde) pro MHz erreichen. Das Laden und Speichern in und aus dem Speicher dauert 2 Zyklen, das Verzweigen dauert 3 Zyklen. Das Verzweigen in den neuesten "3-Byte-PC"-Teilen wie dem ATmega2560 ist 1 Zyklus langsamer.

Entwicklung

AVRs sind aufgrund der Verfügbarkeit kostenloser und kostengünstiger Entwicklungstools, einschließlich preisgünstiger Entwicklungsboards und kostenloser Entwicklungssoftware, weit verbreitet. Die AVRs werden unter verschiedenen Namen verkauft, die den gleichen Grundkern, aber unterschiedliche Peripherie- und Speicherkombinationen haben. Die Kompatibilität zwischen den Chips jeder Familie ist recht gut, obwohl die I/O-Controller-Fähigkeiten variieren.

Chancen

AVRs bieten eine Vielzahl von Funktionen:

  • Multifunktionale, bidirektionale Allzweck-E/A-Ports mit konfigurierbaren Pullup-Widerständen.
  • Mehrere interne Oszillatoren, einschließlich RC-Oszillator ohne externe Teile
  • Interner, selbstprogrammierbarer Befehlsspeicher bis 256 KB.
  • In-System programmierbar mit seriellen/parallelen Niederspannungsschnittstellen oder JTAG
    • Optionaler Boot-Code-Abschnitt mit unabhängigen Lock Bits für Sicherheit
  • Unterstützung für On-Chip-Debugging (OCD) mit JTAG oder debugWIRE auf den meisten Geräten
    • Die JTAG-Signale (TMS, TDI, TDO und TCK) werden auf GPIOs gemultiplext. Diese Pins können je nach Fuse-Bit-Einstellung, die mit ISP oder HVSP programmiert werden kann, für JTAG oder GPIO konfiguriert werden. Standardmäßig ist JTAG aktiviert.
    • debugWIRE verwendet den /RESET-Pin als bidirektionalen Kommunikationskanal, um die Debug-Schaltung auf dem Chip anzusprechen. Es ist bei Geräten mit niedriger Pinanzahl vorhanden, da es nur einen Pin verwendet.
  • Interne Daten EEPROM bis zu 4 kB
  • Intern SRAM bis zu 8 kB (32 kB bei XMega)
  • Externer 64-kB-Little-Endian-Datenspeicher bei ausgewählten Modellen wie Mega8515 und Mega162
    • Der externe Datenraum wird dem internen Datenraum überlagert, so dass nicht der gesamte 64kB Adressraum auf dem externen Bus existiert. Eine Adresse höher als 0x0100 adressiert den internen RAM, nicht den externen Bus.
    • Bei ausgewählten Mitgliedern der XMEGA-Serie wurde der externe Datenraum erweitert, um beides zu unterstützen SRAM als SDRAM. Außerdem wurden die Datenadressierungsmodi erweitert, um eine direkte Adressierung von bis zu 16 MB Datenspeicher zu ermöglichen.
    • AVRs unterstützen im Allgemeinen keine Codeausführung aus externem Speicher. Einige ASSPs (Application Specific Standard Product) unterstützen dies.
  • 8-Bit- und 16-Bit-Timer
    • PWM-Ausgang
    • Eingabeerfassung
  • Analoger Komparator
  • 10- oder 12-Bit-A/D-Wandler, Multiplexen von bis zu 16 Kanälen
  • 12-Bit-D/A-Wandler
  • Diverse serielle Schnittstellen, wie z
    • I²C
    • Synchrone/asynchrone serielle Peripheriegeräte (UART/USART) (verwendet mit RS-232, RS-485 und mehr)
    • Serieller Peripherieschnittstellenbus (SPI)
    • Universelle serielle Schnittstelle (USI)
  • Brownout-Erkennung
  • Watchdog-Timer (WDT)
  • Mehrere Schlafmodi zum Energiesparen
  • Licht- und Motorsteuerung (PWM)
  • CAN-Controller-Unterstützung
  • Unterstützung für USB-Controller
    • Full Full-Speed ​​(12 Mbit/s) Hardware & Hub Controller mit integriertem AVR
    • frei verfügbar Lowspeed (1,5 Mbit/s) (HID)
  • Unterstützung für Ethernet-Controller
  • Unterstützung für LCD-Controller
  • Niederspannungsgeräte arbeiten ab 1,8 V
  • picoPower-Geräte
  • DMA-Controller und "Event System"-Peripheriekommunikation
  • Schnelle Kryptographie-Unterstützung für AES und DES

Entwicklungstools und Evaluierungskits

Die offiziellen AVR-Entwicklungstools und Evaluierungskits von Atmel bestehen aus einer Reihe von Starterkits und Debug-Tools mit Unterstützung für die meisten AVR-Geräte:

STK600 Starterkit

Das STK600 Starterkit und Entwicklungssystem ist ein Update des STK500.[1] Der STK600 verwendet eine Basisplatine, eine Signalroutingplatine und eine Zielplatine.

Die Grundplatine ist die gleiche wie beim STK500 und verfügt über eine Spannungsquelle, eine Uhr, In-System-Programmierung, RS-232Ports und Anschlüsse für die GPIO-Signale des Zielgeräts.

Das Zielboard hat ZIF-Steckdosen für TAUCHEN-, QFN- oder QFPGehäuse, je nach Platine.

Die Signal-Routing-Platine sitzt zwischen der Basisplatine und der Zielplatine und verbindet die Signale mit den entsprechenden Pins auf der Zielplatine. Es gibt viele verschiedene Routing-Boards, die mit einem einzigen Target-Board verwendet werden können, je nach Gerät in der ZIFSteckdose.

Der STK600 wird über eine USB-Verbindung mit dem PC verbunden, sodass beides möglich ist RS-232Für den Mikrocontroller stehen Ports zur Verfügung.

STK500 Starterkit

STK500 Starterkit

Das STK500 Starterkit und Entwicklungssystem verfügt über eine IS P und ein HVP (High Voltage Programming) für alle AVR-Geräte, entweder direkt oder über eine Erweiterungsplatine. Das Board enthält DIP-Buchsen für alle verfügbaren AVRs in DIP-Gehäusen.

Für den STK500 stehen mehrere Erweiterungsmodule zur Verfügung:

  • STK501 - Fügt Unterstützung für Mikrocontroller in 64 Pins hinzuTQFP-Gehäuse
  • STK502 - Fügt Unterstützung für LCD-AVRs in 64-Pin-TQFP-Gehäusen hinzu
  • STK503 - Fügt Unterstützung für Mikrocontroller in 100-Pin-TQFP-Gehäusen hinzu
  • STK504 – Fügt Unterstützung für LCD-AVRs in 100-Pin-TQFP-Gehäusen hinzu
  • STK505 - Fügt Unterstützung für 14- und 20-polige AVRs hinzu
  • STK520 - Fügt Unterstützung für 14- und 20-Pin-Mikrocontroller der AT90PWM-Familie hinzu
  • STK524 - Fügt Unterstützung für die ATmega32M1/C1-32-Pin CAN/LIN/Motor Control-Familie hinzu
  • STK525 - Fügt Unterstützung für die AT90USB-Mikrocontroller in 64-Pin-TQFP-Gehäusen hinzu
  • STLK526 - Fügt Unterstützung für die AT90USB-Mikrocontroller in 32-Pin-TQFP-Gehäusen hinzu

AVR ISP und AVR ISP mkII

Der AVR ISP und AVR ISP mkII sind kostengünstige Tools zum Programmieren von AVRs über VR ICSP

Der AVR ISP verbindet sich über eine serielle Schnittstelle mit dem PC und bezieht seinen Strom vom Zielsystem. Der AVR ISP ermöglicht die Verwendung von "Standard" ICSP-Pinbelegungen, dem 10-Pin- oder dem 6-Pin-Anschluss. Der AVR ISP wird nicht mehr produziert und wurde durch den AVR ISP mkII ersetzt.

Der AVR ISP mkII wird über einen USB-Anschluss mit dem PC verbunden und bezieht seinen Strom über den USB-Anschluss. Durch das klare Gehäuse sichtbare LEDs zeigen den Spannungszustand des Zielsystems an.

AVR-Drache

Der Dragon ist ein kostengünstiges Tool, das über einen USB-Anschluss mit dem PC verbunden wird. Der Dragon kann alle AVRs über JTAG, HVP oder ICSP. Der Dragon unterstützt auch das Debuggen von AVRs mit weniger als 32 KB Programmspeicher über JTAG oder debugWIRE. Der Dragon hat einen kleinen Prototypenbereich, an dem ein 8, 28 oder 40 Pin AVR angeschlossen werden kann.

JTAGICE mkI und mkII

Es Gemeinsame TestaktionsgruppeDas Debug-Tool In Circuit Emulator (JTAGICE) bietet Unterstützung für das On-Chip-Debugging (OCD) von AVRs mit einer JTAG-Schnittstelle. Das Original JTAGICE mkI verwendet eine RS-232-Schnittstelle zum Anschluss an den PC. Das JTAGICE mkI wird nicht mehr produziert und wurde durch das JTAGICE mkII ersetzt.

Das Debug-Tool JTAGICE mkII unterstützt das On-Chip-Debugging (OCD) von AVRs über die JTAG-, PDI- oder debugWIRE-Schnittstelle. Die debugWIRE-Schnittstelle verwendet nur einen Pin (den Reset-Pin), was das Debuggen für Anwendungen mit einem Low-Pin-Mikrocontroller ermöglicht.

Das JTAGICE mkII wird über eine USB-Verbindung mit dem PC verbunden, es gibt jedoch eine alternative Verbindung über eine serielle Schnittstelle, die eine separate Stromversorgung erfordert. Neben JTAG unterstützt das mkII die Programmierung über ISP (über die 6- oder 10-Pin-Adapter). Sowohl die USB- als auch die serielle Variante verwenden eine Version des STK500-Protokolls.

Schmetterlings-Demoboard

Das sehr beliebte AVR Butterfly Demoboard ist ein batteriebetriebener, eigenständiger Computer, der auf dem Atmel AVR ATmega169V Mikrocontroller läuft. Es wurde gebaut, um die AVR-Familie zu präsentieren, insbesondere die neue integrierte LCD-Schnittstelle. Die Platine umfasst ein LCD-Display, einen Joystick, einen Lautsprecher, einen seriellen Anschluss, eine Echtzeituhr (RTC), einen Flash-Speicherchip sowie Temperatur- und Spannungssensoren. Frühere Versionen des AVR Butterfly enthielten auch einen CdS-Fotowiderstand; dies ist auf Platten, die nach Juni 2006 hergestellt wurden, nicht mehr vorhanden, um die RoHSNorm zu erfüllen. Das kleine Schild hat auf der Rückseite eine Hemdnadel, so dass es als Namensschild getragen werden kann.

Der AVR Butterfly wird mit vorinstallierter Software geliefert, um die Fähigkeiten des Mikrocontrollers zu demonstrieren. Die werkseitige Firmware kann Ihren Namen scrollen, die Sensormesswerte anzeigen und die Uhrzeit anzeigen.

Der AVR Butterfly demonstriert die LCD-Steuerung, indem er ein 14-Segment-Display mit 6 alphanumerischen Zeichen ansteuert. Die LCD-Schnittstelle verwendet jedoch viele der I/O-Pins.

Die ATmega169-CPU des Buttferly kann Geschwindigkeiten von bis zu 8 MHz verarbeiten, ist jedoch von der Werksfirmware auf 2 MHz eingestellt, um die Akkulaufzeit zu verlängern. Ein vorinstalliertes Bootloader-Programm ermöglicht die Neuprogrammierung des Boards über einen standardmäßigen seriellen Ser RS-232Verbindung mit neuen Programmen, die Benutzer mit dem kostenlosen Atmel IDE-Tool schreiben können.

AT90USBSchlüssel

Dieses kleine Board, etwa halb so groß wie eine Kreditkarte, ist etwas teurer als das AVR Butterfly. Es enthält einen AT90USB1287 Mikrocontroller mit USB-On-The-Go (OTG), 16MBDatenFlash, LEDs, ein kleiner Joystick und ein Temperatursensor. Die mitgelieferte Software ermöglicht es dem Board, als USB-Speichergerät, USB-Joystick und mehr zu fungieren. Für den Betrieb als USB-Host ist eine Batterie erforderlich, als USB-Peripheriegerät wird jedoch nur der Strom vom USB-Port verwendet.

Lediglich die JTAG-Verbindung verwendet den normalen 2,54mm Pinabstand. Alle anderen AVR-I/O-Ports verwenden kompaktere 1,27-mm-Header.

Da der AT90USBKey 128 kB Flash-Speicher besitzt, kann ein AVR Dragon ihn nur programmieren und nicht debuggen. Ein JTAGICE kann es sowohl programmieren als auch debuggen. Der Prozessor kann auch über USB von einem Windows- oder Linux-Host unter Verwendung von USB-Protokollen "Device Firmware Update" programmiert werden.

LUFA ist ein kostenloser USB-Protokollstack für den USBKey von Drittanbietern (MIT-Lizenz).

Raven Wireless-Kit

Das RAVEN-Kit unterstützt die drahtlose Entwicklung mit Atmels IEEE 802.15.4Chipsätze für ZigBee und andere drahtlose Stacks. Es stellt ein Paar drahtloser Buttefly-Karten plus einen drahtlosen USBKey dar und kostet ungefähr so ​​viel wie diese zusammen (unter 100 US-Dollar). Alle Boards unterstützen die Entwicklung über JTAG.

Das Kit enthält zwei AVR Raven-Boards, beide mit einem 2,4-GHz-Transceiver, der unterstützt IEEE 802.15.4 (und ein ZigBee-Stack mit kostenloser Lizenz). Die Funkgeräte werden von ATmega1284p-Prozessoren angetrieben, die von einem benutzerdefinierten segmentierten LCD-Display unterstützt werden, das von einem ATmega3290p-Prozessor angetrieben wird. Raven-Peripheriegeräte ähneln dem Butterfly; Piezo-Lautsprecher, DatenFlash (größer), externes EEPROM, Sensoren, 32kHz Quarz für Echtzeituhr usw. Diese dienen zum Entwerfen von fernsteuerbaren Sensormodulen, zum Steuern von Relais oder was auch immer benötigt wird.

Der USB-Stick verwendet einen AT90USB1287 für Verbindungen zu einem USB-Host und die 2,4-GHz-Funkverbindungen. Sie sind zum Lesen und Steuern von drahtlosen Modulen bestimmt, wobei die Spannung vom Host anstelle von Batterien verwendet wird.

Programmierer von Drittanbietern

Es gibt eine große Anzahl von Programmier- und Debugging-Tools von Drittanbietern. Diese Geräte verwenden eine Vielzahl von Schnittstellen, einschließlich RS-232, Parallelport und USB. AVR Freaks hat eine umfangreiche Liste.

Atmel AVR-Nutzung

AVRs werden in verschiedenen Automobilanwendungen wie Sicherheits-, Sicherheits- und Unterhaltungssystemen verwendet. Atmel hat eine Publikation namens "Atmel Automotive Compilation" herausgebracht, um neuen Entwicklern bei Automobilanwendungen zu helfen.

Es ArduinoComputerplattform basiert auf einem ATmega328 Mikrocontroller (ATmega168 oder ATmega8 in älteren Versionen). Der ATmega1280 mit mehr Pins und verfügbarem Speicher wurde auch verwendet, um Arduino Mega-Plattform zu entwickeln. Arduino Zeichen können mit ihrer eigenen Sprache verwendet werden und IDE, oder mit konventionelleren Programmierumgebungen (C/ASM/etc.) wie den Standard-AVR-Plattformen. Arduino-Boards können auf viele Arten programmiert werden. Dies geschieht über ein spezielles Softwareprogramm.

USB-basierte AVRs wurden in Microsoft Xbox-Handcontrollern verwendet. Die Verbindung zwischen den Controllern und der Xbox ist USB.

Mehrere Unternehmen produzieren AVR-basierte Mikrocontroller-Boards, die für Bastler, Roboterbauer, Experimentatoren und Entwickler kleiner Systeme gedacht sind.

System Semiconductor, Inc. produziert den M3000 Motor and Motion Control, der einen Atmel AVR-Kern und einen Advanced Motion Controller enthält.

Neue 32-Bit-AVRs

2006 brachte Atmel Mikrocontroller auf den Markt, die auf einer neuen 32-Bit-AVR32-Architektur basieren. Diese enthalten SIMD- und DSPAnweisungen, zusammen mit anderen Audio- und Videoverarbeitungsfunktionen. Diese 32-Bit-Gerätefamilie soll mit der op . konkurrieren ARM basierten Prozessoren. Der Befehlssatz ähnelt anderen RISC-Kernen, ist jedoch nicht mit dem ursprünglichen AVR oder einem der ARM-Kerne kompatibel.

Lego hat Firmware-Quellcodedateien für die 32-Bit-AVRs veröffentlicht, um die Entwicklung von Open-Source-Alternativen zu seiner beliebten Robotik zu unterstützenNXT-Betriebssystem.

Externe Links