Ревич, Ю.В. Программирование микроконтроллеров AVR: от Arduino к ассемблеру

Глава 1. Обзор микроконтроллеров AVR 23 Таймеры-счетчики с предустановкой и возможностью выбора источника счет- ных импульсов: как правило, один-два 8-разрядных и как минимум один 16-разрядный, в том числе могущие работать в режиме PWM (ШИМ) — много- канальной 8-, 9-, 10-, 16-битовой широтно-импульсной модуляции (см. главу 9 ). Возможность работы при тактовой частоте от 0 Гц до 16–20 МГц. Диапазон напряжений питания от 2,7 до 5,5 В (в некоторых случаях от 1,8 или даже 0,7 В). Многочисленные режимы энергосбережения , отличающиеся числом узлов, остающихся подключенными. Выход из «спящих» режимов осуществляется по сторожевому таймеру или по внешним прерываниям (см. главу 14 ). Встроенный монитор питания — детектор падения напряжения (Brown-out Detector). Здесь упомянуты далеко не все особенности, характерные для различных моделей AVR. С некоторыми другими мы познакомимся в дальнейшем, а также на практике рассмотрим упомянутые подробнее. Но сначала дадим общую характеристику раз- личных семейств AVR с точки зрения их преимущественного назначения. Семейства и модификации AVR В 2002 году фирма Atmel начала выпуск новых подсемейств 8-разрядных МК на базе AVR-ядра. С тех пор МК этого семейства стали делиться на три основные группы (подсемейства): Classic, Tiny и Mega. В 2008 году к ним добавилось семей- ство Xmega, которое популярности не снискало, и потому в этой книге мы его не рассматриваем. МК семейства Classic (AT90S xxxx ) уже давно не выпускаются — дольше всего в производстве «задержалась» очень удачная (простая, компактная и быстродействующая модель) AT90S2313, но и она была еще в 2005 году заменена на ATtiny2313. Все «классические» AVR с первыми цифрами 2, 4 и 8 в наименовании модели (что означает количество килобайт памяти программ) первоначально имели полные аналоги в семействах Tiny и Mega, и большая часть таких совместимых моделей выпускается до сих пор. Для Mega-аналогов при программировании возможна ус- тановка специального бита совместимости, который позволяет без каких-либо из- менений использовать программы, созданные для семейства Classic. Поэтому, если вы найдете на интернет-ресурсах примеры программирования AVR семейства Classic, то их можно будет задействовать в современных моделях без каких-либо доработок. Тем не менее в книге все примеры адаптированы для современных мо- делей Tiny и Mega. Микросхемы Tiny в основном имеют Flash-ПЗУ программ объемом 1–8 кбайт (в некоторых современных моделях расширенное до 16 кбайт) и размещаются в корпусах с 6–32 выводами, т. е. они в целом предназначены для более простых и дешевых устройств. Это не значит, что их возможности во всех случаях более ог-

RkJQdWJsaXNoZXIy MTExODQxMg==