Кроме 8-разрядных МК AVR, Atmel выпускает еще несколько их разновидностей, в том числе относящихся к таким популярным семействам, как ARM-процессоры и заметно модифицированные наследники старинного 8051, для которого в мире накоплен огромный объем программного обеспечения. Мы здесь ограничимся лишь 8-разрядными AVR, как одними из самых удобных в радиолюбительской и полупрофессиональной практике (например, для изготовления научного, производственного и другого спецоборудования в единичных экземплярах) — на этой почве они конкурируют лишь с упомянутыми PIC, однако для начального освоения опытные конструкторы рекомендуют именно AVR.
По вычислительной мощности ядро AVR-контроллеров, выполненное по RISC-архитектуре (Reduced Instruction System Command — «система с сокращенным набором команд»), заметно превышает 8-разрядные процессоры первых персональных компьютеров 80-х годов (i8086 в первых моделях IBM PC и 6502 в персоналках Apple), и сравнимо с производительностью 16-разрядного процессора i286, поскольку большинство инструкций выполняются за один такт, а рабочие частоты более высокие (обычно до 16 МГц, за небольшими исключениями, а у некоторых моделей — до 20 МГц). В AVR имеется 32 регистра общего назначения (часть из которых может также выполнять специализированные функции). Это позволяет в простых программах вообще не обращаться к памяти, что особенно удобно для начинающих.
Линейка AVR делится на три семейства: Classic, Mega и Tuny. МК семейства Classic (они именовались, как AT90S
Рис. 12.1.
Полная совместимость обеспечивается специальным установочным битом (из набора т. н. Fuse-битов), при программировании которого Mega-процессор начинает функционировать как Classic (подробнее об этом — в
Семейство Tuny (что в буквальном переводе означает «легко запоминающийся») предназначено для наиболее простых устройств, часть таких МК не имеет возможности программирования по последовательному интерфейсу (а АТ-tuny10 даже является однократно программируемым), и потому мы их не будем рассматривать в этой книге (за исключением ATtuny2313, точнее его «классического» аналога AT90S2313, оба они очень удобны для проектирования небольших, но функциональных устройств, и к тому же могут работать с частотой до 20 МГц). Это не значит, что Tuny следует избегать, среди них есть очень удобные и функциональные микросхемы. Но нельзя объять необъятное — здесь в основном мы будем рассматривать Mega.
Перечислим отличительные особенности Mega.
• Flash-пэмять программ от 8 до 128 кбайт (у семейства Classic 2–8 кбайт).
• Статическое ОЗУ (SRAM) от 512 байт до 4 кбайт (для Classic 128–512 байт).
• EEPROM данных от 512 байт до 4 кбайт (для Classic 128–512 байт).
• Различные способы тактирования: от встроенного RC-генератора, внешней RC-цепочки, внешнего кварцевого резонатора, внешнего сигнала (у Classic — только от кварцевого резонатора или внешнего сигнала). Удобная возможность для удешевления и упрощения схем, хотя и усложняет начальное программирование кристалла, причем у некоторых старших моделей имеется возможность программного снижения частоты.
• Расширенные режимы пониженного энергопотребления.