Atmel AVR
L'architettura del microcontrollore AVR è stata sviluppata da Atmel nel 1996. È basata sull'architettura del microcontrollore Harvard. L'AVR è stata una delle prime famiglie di microcontrollori ad utilizzare la memoria flash on-chip per la memorizzazione dei programmi, al contrario della ROM programmabile una tantum, EPROM, o EEPROM utilizzata da altri microcontrollori all'epoca.
Molte persone pensano che AVR stia per Alf (Egil Bogen) e Vegard (Wollan), il processore Risc".
Questa architettura sostituisce la vecchia architettura MCS-51. Un ciclo macchina di MCS-51 richiede 12 cicli di clock e la maggior parte delle istruzioni sono eseguite in un ciclo macchina.
I microcontrollori AVR (MCU) possono eseguire la maggior parte delle istruzioni anche in un solo ciclo macchina, ma un ciclo macchina richiede solo un ciclo di clock. Le prestazioni per ciclo di clock sono 12 volte superiori con AVR.
Il nucleo ha 32 registri di uso generale direttamente collegati all'ALU. Permette l'accesso a due registri indipendenti e l'esecuzione di istruzioni con essi in un ciclo macchina.
Atmel AVR ATmega8 in 28-pin DIP.
Famiglie di base
tinyAVR
- 0,5-8 kB di memoria programma
- fino a 0,5 kB SRAM
- fino a 0,5 kB EEPROM
- fino a 20 MHz
- Pacchetto da 6-32 pin
megaAVR
- 4-256 kB di memoria programma
- 0,5-16kB SRAM
- 0,5-4 kB EEPROM
- fino a 20 MHz
- Pacchetto 20-100 pin
XMEGA
- 16-384kB di memoria programma
- 2-32 kB SRAM
- Interfaccia bus esterna per un massimo di 16M byte SRAM di SDRAM
- 1-4 kB EEPROM
- fino a 32 MHz
- Pacchetto 44-100 pin
Caratteristiche
Ogni AVR ha alcune porte di ingresso/uscita. La porta ha fino a 8 pin fisici sul suo pacchetto. Ogni pin può essere configurato come ingresso o uscita. Se un pin è usato come ingresso, può attivare le resistenze di pull-up incorporate attraverso il registro PORTx. Se un pin è configurato come uscita, può gestire fino a 40mA di carico per pin e max 100mA per tutti i pin della porta.
Convertitore A/D
- 10-bit (tinyAVR, megaAVR) con multiplex fino a 8 canali
- 12-bit (XMEGA) con multiplex fino a 16 canali
Timer/contatori (8-bit o 16-bit)
- Gli utenti possono configurarlo come PWM, contatore o timer.
- In modalità PWM semplice, il registro di conteggio gira senza fermarsi e viene confrontato con un altro registro. Se il registro di conteggio è superiore al secondo registro il pin Ocx è impostato su "1". In altri tempi il pin Ocx è impostato su "0".
- Il contatore ha una fonte esterna come un sensore fotografico e può contare la quantità di persone che passano il sensore fotografico.
- Il timer dà impulsi in tempo esatto. È usato per programmare le applicazioni dell'orologio.
TWI - Two Wire Interface Questo utilizza lo stesso protocollo di I2C e può essere usato come interfaccia I2C
UART/USART L'UART può essere usato per la comunicazione RS232/RS485.
SPI - Interfaccia periferica seriale
- bus seriale molto veloce che viene utilizzato per il trasferimento dei dati di comunicazione con i dispositivi
- è possibile masterizzare/leggere il programma nella/dalla memoria di programma o EEPROM attraverso questo bus
USI - Interfaccia seriale universale
- utilizzato per il trasferimento dati sincrono a due o tre fili
JTAG
- interfaccia per il debug online
Convertitore D/A
- 12-bit (solo XMEGA) con multiplex fino a 2 canali
Pagine correlate
- Arduino
Domande e risposte
D: Quando è stata sviluppata l'architettura del microcontrollore AVR?
R: L'architettura del microcontrollore AVR è stata sviluppata nel 1996 da Atmel.
D: Su quale architettura si basa il microcontrollore AVR?
R: Il microcontrollore AVR si basa sull'architettura del microcontrollore Harvard.
D: Cosa distingue il microcontrollore AVR dagli altri microcontrollori all'epoca del suo sviluppo?
R: Il microcontrollore AVR utilizza la memoria flash on-chip per l'archiviazione dei programmi, in contrapposizione alla ROM programmabile una tantum, all'EPROM o all'EEPROM utilizzate da altri microcontrollori dell'epoca.
D: Qual è il significato comunemente ritenuto dell'abbreviazione AVR?
R: Molte persone credono che AVR sia l'acronimo del processore Risc di Alf (Egil Bogen) e Vegard (Wollan).
D: Quale architettura ha sostituito il microcontrollore AVR?
R: Il microcontrollore AVR ha sostituito la vecchia architettura MCS-51.
D: Quanti cicli di clock richiede un ciclo macchina di MCS-51?
R: Un ciclo macchina di MCS-51 richiede 12 cicli di clock.
D: Qual è il vantaggio dei microcontrollori AVR rispetto a MCS-51 in termini di prestazioni per ciclo di clock?
R: Le prestazioni per ciclo di clock sono 12 volte superiori con i microcontrollori AVR.