Caracteristici generale
Microcontrolerul AVR are la bază un procesor RISC cu o arhitectură Harvard (adică unitatea centrală de procesare are memorie de program şi memorie de date separate). Pe baza acestui nucleu RISC firma Atmel a dezvoltat mai multe familii de microcontrolere, cu diferite structuri de memorie şi de interfeţe I/O, destinate diferitelor clase de aplicaţii.
Aceste microcontrolere sunt destinate aplicaţiilor simple cum ar fi: controlul motoarelor, controlul fluxului de informaţie pe portul USB, controlul accesului de la distanţă (Remote Access Control), ş.a..
Familia de microcontrolere AVR pe 8 biţi prezintă următoarele caracteristici:
1. Are memorie Flash programabilă integrată, folosită ca memorie de program. Toate procesoarele AVR au memorie de program integrată. Asta înseamnă că nu ai nevoie de memorii EPROM sau ROM externe pentru a stoca codul programelor. Programarea se poate face în două moduri: serial şi paralel.
2. Are 32 de registre de lucru de 8 biţi fiecare (acest lucru este specific procesoarelor RISC). Numărul mare de registre de lucru permite stocarea variabilelor în interiorul procesorului, în loc să fie stocate în memorie, lucru care necesită un timp mai lung pentru accesare. În acest fel creşte viteza de execuţie a programului (deci va rula mai repede).
3. Are memorie de date integrată de tip EEPROM (Electrically Erasable Programmable Read-Only Memory) şi memorie RAM integrată. Unitatea centrală de prelucrare are arhitectură Harvard, iar memoriile de tip RAM şi EEPROM ale microcontrolerului sunt memorii de date, fiind folosite pentru a stoca variabile, respectiv constante.
4. Are frecvenţa de lucru care poate fi controlată prin software de la 0 la 16 MHz. Cele mai multe instrucţiuni sunt executate într-un singur ciclu de tact, ceea ce duce la îmbunătăţirea performanţei de 10 ori faţă de procesoarele convenţionale care operează la aceeaşi frecvenţă (de exemplu: Intel 8051).
5. Realizează funcţia de RESET fără decuplarea circuitului.
6. Are un timer programabil încorporat cu circuit de prescalare separat, care este folosit pentru sincronizarea aplicaţiilor.
7. Surse interne şi externe de întrerupere.
8. Are un timer watchdog cu oscilator independent, care este folosit pentru recuperarea informaţiilor în caz de apariţia unei erori software, dar mai poate fi folosit şi în alte aplicaţii.
9. Are 6 moduri de operare pentru economisirea energiei. Poate lucra în modurile de operare SLEEP şi POWER DOWN, moduri ce economisesc energie, atunci când procesorul nu lucrează.
10. Multe cipuri au oscilator integrat RC, care micşorează şi mai mult numărul componentelor în cazul microcontrolerelor care-l conţin.
11. Sunt prevăzute cu o gamă largă de dispozitive de I/O şi de periferice încorporate.
12. Beneficiază de existenţa unui set unitar de instrumente software pentru dezvoltarea aplicaţiilor.
13. Are o compatibilitate mare, pornind de la procesoare mici cu 8 pini şi ajungând la procesoare cu 68 de pini.