Programowanie

Atmel AVR

Atmel AVR

Atmel AVR to rodzina ośmiobitowych mikrokontrolerów produkowanych przez firmę Atmel.

Jednostka arytmetyczno-logiczna opracowana przez dwóch studentów z Norwegian Institute of Technology oparta jest na schemacie RISC procesora i zasadami architektury harwardzkiej, zawiera 32 ośmiobitowe rejestry. Instrukcje arytmetyczno-logiczne mogą być wykonywane na rejestrach. Dane z pamięci mogą być tylko przesyłane do i z rejestrów. Charakteryzuje się ona prostą strukturą rozkazów, dużą wydajnością obliczeniową (większość rozkazów wykonywana jest w jednym takcie procesora).

Listę rozkazów dopasowano do wymagań współczesnych kompilatorów wprowadzając rozkazy pobierania danych przez adresowanie pamięci rejestrem 16-bitowym (zestaw dwóch rejestrów) z jednoczesnym zwiększeniem lub zmniejszeniem rejestru adresowego (pobierz i zwiększ/zmniejsz).

Produkowanych jest wiele rodzajów mikrokontrolerów różniących się wyposażeniem w urządzenia peryferyjne, ilość pamięci RAM, EEPROM i flash. W oznaczeniach dzieli się rodzinę na kontrolery Tiny AVR - małe, Mega AVR -duże, oraz specjalne.

Przykładowo: ATtiny13 zawiera 1kB pamięci programu (flash), 64 bajty EEPROMu, 64 B RAM + 32 rejestry, 6 wejść/wyjść, 2 kanały PWM, SPI, 4 kanały A/D, oscylator w układzie scalonym, montowany jest w obudowie 8 nóżkowej. ATmega2560 zawiera 256 kB pamięci programu, 4 kB EEPROMu, 8 kB RAM, 86 wejść/wyjść, 4 liczniki/czasomierze 16 bitowe, 6 PWM, SPI, 2 - UART, 16 - kanałów A/D ...

Kontrolery wyposażone są między innymi w:

[edytuj] Linki zewnętrzne