МИКРОКОНТРОЛЛЕРЫ ФИРМЫ "ATMEL" СЕМЕЙСТВА AVR

МИКРОКОНТРОЛЛЕРЫ ФИРМЫ "ATMEL" СЕМЕЙСТВА AVR

Характерные черты семейства AVR

    AVR-микроконтроллеры фирмы ATMEL - это 8-разрядные RISC микроконтроллеры (далее МК) для встраиваемых приложений. Они привлекают внимание разработчиков наилучшим соотношением показателей быстродействие/энергопотребление, удобными режимами программирования, доступностью программно-аппаратных средств поддержки и широкой номенклатурой выпускаемых кристаллов. Предлагается более 15 различных типов МК, которые разбиты на три группы:
  • Classic AVR (префикс AT90SXXX) - высокое быстродействие, средние: уровень развития периферии, объемы памяти программ и данных, ценовая категория (количество наименований постепенно сокращается в связи с переходом большинства пользователей на кристаллы MegaAVR)
  • Mega AVR (префикс ATmegaXXX) - наивысший уровень развития периферии, большие объемы памяти программ и данных высокое быстродействие и ценовая категория
  • Tiny AVR (префикс ATtinyXXX) - малогабаритные корпуса, среднее быстродействие, низкий уровень развития периферии и низкие цены

Использование архитектуры AVR - RISC

  • Высокоскоростная КМОП технология с низким потреблением мощности:
    Рабочие напряжения: 2.7 - 6.0 В, 4.0 - 6.0В
    Потребление тока (4 МГц, 3В, 25 °С) в режимах:
    - Active (Активный): от 2,0 до 6,4 мА для Classic AVR;
    - Idle (холостой): от 0,4 до 1,9 мА для Classic AVR;
    - Power-down (спящий): <1 мкА для для всех МК;
    - Полностью статическое функционирование: тактовые частоты от 0 до 16 МГц.
  • 89..133 мощных инструкций, большинство из которых исполняется
    за 1 период тактовой частоты, что позволяет достигнуть производительности,
    характеризующейся формулой: 1 миллион выполняемых инструкций на каждый мегагерц тактовой частоты
  • 32 8-битных регистра общего назначения
  • У моделей ATMEGA встроенный аппаратный перемножитель
  • Память
       - программ: Flash с возможностью программирования в системе,
    минимальное число циклов перепрограммирования - 1000;
       - данных: СППЗУ(EEPROM) с возможностью программирования в системе, минимальное число циклов перепрограммирования - 100 000.
       - Внутреннее ОЗУ (SRAM) (кроме AT90S1200 и МК серии Attiny (за исключением ATTINY12, 15,15L - у них в качестве ОЗУ используется блок РОН)
       - Защита программного кода и содержимого СППЗУ от несанкционированного считывания
       - Наличие у моделей ATMEGA 161, 163, 128 специализированного загрузочного сектора памяти, позволяющего программировать память программ и СППЗУ без внешнего программатора, с собственной защитой от несанкционированного считывания
       - В модель ATMEGA128 введен порт JTAG, позволяющий программировать все области памяти и специальные биты этого МК, а также осуществлять аппаратную отладку устройства в системе
Classic AVR

  • Периферия:
    - Один или два 8 битных таймера-счетчика
    - Один 16 битный таймер-счетчик с режимами сравнения, захвата, 8-,9- или 10-битного ШИМ
    - Полнодуплексный УАПП (UART)
    - Встроенный в кристалл аналоговый компаратор
    - Программируемый сторожевой (Watchdog) таймер с собственным тактовым генератором (встроен в кристалл)
    - Высокоскоростной последовательный интерфейс SPI
    - Шести- или восьмиканальный 10-битный АЦП
  • Специальные функции микроконтроллера - Несколько режимов энергосбережения: Idle, и Power-down (Power Save у моделей AT90S4434, AT90S8535)
    - Встроенный тактовый генератор (AT90S1200)
    - Внешние и внутренние источники прерываний
    - Схема перезагрузки при включении питания (все модели)
    - Встроенный счетчик реального времени
Mega AVR

  • Периферия:
    - Два 8 битных таймера-счетчика с режимами: ШИМ , Сравнение
    - Один 16 битный таймер-счетчик с режимами: Сравнения, захвата, двойного 8-,9- или 10-битного ШИМ
    - Программируемый сторожевой (Watchdog) таймер с собственным тактовым генератором (встроен в кристалл)
    - Встроенный в кристалл аналоговый компаратор
    - Полнодуплексный УАПП (UART)
    - Последовательный интерфейс с режимами SPI Master/Slave
    - Встроенный счетчик реального времени
    - Шести- или восьмиканальный 10-битный АЦП (В ATMEGA 128 может быть организован как: 8 однополярных каналов, 7 двуполярных
    каналов, 2 двуполярных канала с программируемым усилением (1х, 10х, 200х))
    - Байтно-ориентированный двухпроводный интерфейс у ATMEGA128
  • Специальные функции микроконтроллера - Несколько режимов энергосбережения: Idle, и Power-down , Power Save и дополнительно к ним: ATMEGA128 - ADC Noise Reduction, Standby работает только тактовый генератор, Extended
    - Программно изменяемая тактовая частота у ATMEGA 128
    - Внешние и внутренние источники прерываний
    - Схема перезагрузки при включении питания и при понижении рабочего напряжения ниже допустимого уровня (программируется)
Tiny AVR

  • Периферия:
    - Функция генерации прерывания и выхода из режима энергосбережения при любом изменении состояния линий ввода/вывода
    - Один или два 8 битных таймера-счетчика
    - Встроенный аналоговый компаратор
    - Программируемый сторожевой (Watchdog) таймер с собственным тактовым генератором (встроен в кристалл)
    - Высокоскоростной (150 кГц), 8-ми битный ШИМ
    - 4-рех канальный 10-битный АЦП, может быть организован как 1 двуполярный канал с дополнительным усилением сигнала в 20 раз
    - Встроенный сильноточный драйвер светодиодов с программируемым режимом работы (ATtiny28)
    - Программируемый сторожевой (Watchdog) таймер с собственным тактовым генератором (встроен в кристалл)
  • Специальные функции микроконтроллера: - Несколько режимов энергосбережения: Idle, и Power-down
    - Внешние и внутренние источники прерываний
    - Улучшенная схема перезагрузки при включении питания и при понижении рабочего напряжения ниже допустимого уровня (программируется)
  • Внутренний калиброванный RC генератор

Раcшифровка некоторых сокращений, приведенных в таблице:

  • I/O - максимальное количество цифровых линий ввода/вывода
  • Fmax - максимальная тактовая частота
  • Vcc - диапазон напряжений питания
  • RTC - встроенные часы реального времени
  • SPI - трехпроводной интерфейс
  • TWI - двухпроводной интерфейс
  • ISP - возможность программирования в системе
  • WD - сторожевой таймер
  • Osc. - встроенный тактовый генератор
  • Детектор Vcc - встроенный детектор провалов напряжения питания
  • Hardware Multiplier - встроенный аппаратный перемножитель

  • Модель Flash (Кб) СППЗУ,кБ ОЗУ (байт) I/O Fmax, МГц Vcc, В Таймер 16-бит Таймер 8-бит ШИМ, каналов RTC SPI UART TWI ISP 10-бит АЦП, кан. Компаратор (ан.) Детектор Vcc WD Osc. Hardware Multiplier Корпус
    AT90S1200 1 0.0625   15 12 2.7-6.0   1           +   +   + +   PDIP20, SOIC20, SSOP20
    AT90S2313 2 0.125 128 15 10 2.7-6.0 1 1 1     1   +   +   +     PDIP20, SOIC20
    ATmega128 128 4 4096 53 16 4.5-5.5 2 2 8 + 1 2 + + 8 + + + + + TQFP64
    ATmega128L 128 4 4096 53 8 2.7-5.5 2 2 8 + 1 2 + + 8 + + + + + TQFP64
    ATmega16 16 0.5 1024 32 16 4.5-5.5 1 2 3 + 1 1 + + 8 + + + + + PDIP40, TQFP44, MLF44
    ATmega162 16 0.5 1024 35 16 4.5-5.5 2 2 4 + 1 2   +   + + + + + PDIP40, TQFP44
    ATmega162L 16 0.5 1024 35 8 2.7-5.5 2 2 4 + 1 2   +   + + + + + PDIP40, TQFP44
    ATmega162V 16 0.5 1024 35 1 1.8-3.6 2 2 4 + 1 2   +   + + + + + PDIP40, TQFP44
    ATmega165 16 0.5 1024 54 16 4.5-5.5 1 2 4 + 1+USI 1 + + 8 + + + + + TQFP64
    ATmega165V 16 0.5 1024 54 8 1.8-5.5 1 2 4 + 1+USI 1 + + 8 + + + + + TQFP64
    ATmega168 16 0.5 1024 23 20 1.8-5.5 1 2 3 + 1+USART 1 + + 8 + + + + + PDIP28, TQFP32, MLF32
    ATmega169 16 0.5 1024 54 16 4.5-5.5 1 2 4 + 1+USI 1 + + 8 + + + + + TQFP64
    ATmega169V 16 0.5 1024 54 1 1.8-5.5 1 2 4 + 1+USI 1 + + 8 + + + + + TQFP64
    ATmega16L 16 0.5 1024 32 8 2.7-5.5 1 2 3 + 1 1 + + 8 + + + + + PDIP40, TQFP44
    ATmega32 32 1 2048 32 16 4.0-5.5 1 2 4 + 1 1 + + 8 + + + + + PDIP40, TQFP44, MLF44
    ATmega32L 32 1 2048 32 8 2.7-5.5 1 2 4 + 1 1 + + 8 + +   + + PDIP40, TQFP44, MLF44
    ATmega48 4 0.256 512 23 20 1.8-5.5 1 2 3 + 1+USART 1 + + 8 + + + + + PDIP28, TQFP32, MLF32
    ATmega64 64 2 4096 53 16 4.5-5.5 2 2 8 + 1 2 + + 8 + + + + + TQFP64
    ATmega64L 64 2 4096 53 8 2.7-5.5 2 2 8 + 1 2 + + 8 + + + + + TQFP64
    ATmega8 8 0.5 1024 23 16 4.5-5.5 1 2 3 + 1 1 + + 8 + + + + + PDIP28, TQFP32, MLF32
    ATmega8515 8 0.5 512 35 16 4.5-5.5 1 1 3   1 1   +     + + + + PDIP40, TQFP44
    ATmega8515L 8 0.5 512 35 8 2.7-5.5 1 1 3 + 1 1   +     + + + + PDIP40, TQFP44
    ATmega8535 8 0.5 512 32 16 4.5-5.5 1 2 4   1 1 + + 8 + + + + + PDIP40, TQFP44
    ATmega8535L 8 0.5 512 32 8 2.7-5.5 1 2 4 + 1 1 + + 8 + + + + + PDIP40, TQFP44
    ATmega88 8 0.5 1024 23 20 1.8-5.5 1 2 3 + 1+USART 1 + + 8 + + + + + PDIP28, TQFP32, MLF32
    ATmega8L 8 0.5 1024 23 8 2.7-5.5 1 2 3 + 1 1 + + 8 + + + + + PDIP28, TQFP32, MLF32
    ATtiny11 1     6 6 2.7-5.5   1               +   + +   PDIP8, SOIC8
    ATtiny12 1 0.0625   6 8 1.8-5.5   1           +   + + + +   PDIP8, SOIC8
    ATtiny13 1 0.064 64 6 20 1.8-5.5   1 2         + 4 + + + +   PDIP8, SOIC8
    ATtiny15L 1 0.0625   6 1,6 2.7-5.5   2 1         + 4 + + + +   PDIP8, SOIC8
    ATtiny2313 2 0.128 128 18 20 1.8-5.5 1 1 4   USI 1   +   + + + +   PDIP20, SOIC20
    ATtiny26 2 0.125 128 16 16 4.5-5.5   2 2   USI     + 11 + + + +   PDIP20, SOIC20, MLF32
    ATtiny26L 2 0.125 128 16 8 2.7-5.5   2 2   USI     + 11 + + + +   PDIP20, SOIC20, MLF32
    ATtiny28L 2   32 11 4 2.7-5.5   1               +   + +   PDIP28, TQFP32, MLF32
    ATtiny28V 2   32 11 1 1.8-5.5   1               +   + +   PDIP28, TQFP32, MLF32