
L'AVR è una famiglia di microcontrollori RISC ad architettura Harvard sviluppati dalla Atmel a partire dal 1996. L'AVR fu una delle prime famiglie di microcontrollori a utilizzare una memoria flash interna per memorizzare il contenuto del programma: questo permette di cancellare la memoria di programma e riscriverla con una nuova versione in pochi secondi e anche senza rimuovere il microcontrollore dalla scheda su cui è montato, velocizzando enormemente il processo di correzione e messa a punto del codice. Durante gli anni novanta la maggior parte dei microcontrollori utilizzava One-Time Programmable ROM, EPROM, o EEPROM.
I creatori dell'AVR non hanno mai chiarito il significato della sigla. È comunemente accettato che AVR stia per "Alf and Vegard RISC processor" (da Alf-Egil Bogen e Vegard Wollen, i due studenti che lo idearono).
I microcontrollori AVR tipo "mega" sono diventati molto popolari da quando sono stati inclusi nel progetto della piattaforma Arduino.
Caratteristiche salienti di tutti i dispositivi sono:
In base alle caratteristiche gli AVR si possono suddividere in quattro gruppi:
Questi dispositivi sono concettualmente simili ai Mega, ma a seconda del modello contengono delle periferiche particolari pensate per un uso specifico. Ad esempio esistono versioni con a bordo controllore per display LCD, controllore per porta USB, per seriale CAN, ecc. Tuttavia, le periferiche specializzate degli AT90 sono oggi disponibili nella serie XMega oppure nella serie UC3 con architettura AVR32: di conseguenza per progetti di nuova concezione l'uso degli AT90 non è consigliabile.
Nel 2006 Atmel ha messo in commercio dei microcontrollori basati sull'architettura a 32-bit AVR32. Questa include istruzioni SIMD e DSP, assieme con altre caratteristiche di elaborazione audio e video. Questa famiglia a 32-bit di dispositivi è stata creata per competere con i processori basati su architettura ARM. L'insieme delle istruzioni è simile ad altri RISC, ma non è compatibile con gli originali AVR.
| Controllo di autorità | LCCN (EN) sh2008020007 · GND (DE) 4540630-3 · J9U (EN, HE) 987007542400905171 |
|---|