Белов, А.В. Микроконтроллеры AVR: от азов программирования до создания практических устройств

Шаг 6. Осваиваем все возможности микроконтроллера ATtiny23 13 377 Таблица 6.12 (продолжение) CLKPS3 CLKPS2 CLKPS1 CLKPSO Коэффициент деления 0 1 1 0 64 0 1 1 1 128 1 0 0 0 256 1 0 0 1 Зарезервировано 1 0 1 0 Зарезервировано 1 0 1 1 Зарезервировано 1 1 0 0 Зарезервировано 1 1 0 1 Зарезервировано 1 1 1 0 Зарезервировано 1 1 1 1 Зарезервировано Управления питанием и режимы сна Режим низкого потребления (спящий режим) позволяет программе отключать неиспользуемые модули микроконтроллера, снижая, таким образом, потребляемую мощность. Микроконтроллеры AVR поддержи ­ вают три спящих режима, что дает возможность выбирать самый опти ­ мальный вариант для конкретного приложения. Для перехода в любой из трех спящих режимов необходимо записать в бит SE регистра SMCR логическую единицу, а затем выполнить команду SLEEP. Состояние битов SM1 и SM0 регистра MCUCR определяет, какой из трех спящих режимов будет использован при выполнении инструк ­ ции SLEEP. Эти режимы имеют названия: ♦ «Idle»; ♦ «Power-down»; ♦ «Standby». Значения битов для каждого из режимов указано в табл. 6.13. Если запрос на одно из разрешенных прерываний происходит в то время, когда микроконтроллер находится в спящем режиме, он пробуждается. После того, как ЦПУ проснется, он выдерживает стартовую паузу в течение четырех циклов тактового сигнала (в дополнение к задержке запуска), выполняет процедуру обработки прерывания и возобновляет выполне ­ ние основной программы с инструкции, которая идет в программе сразу после команды SLEER После пробуждения содержание регистрового файла и ОЗУ (SRAM) не изменяется. Если во время сна происходит системный сброс микро ­ контроллера, он пробуждается и начинает выполнение программы с нулевого адреса (вектора сброса). Для дальнейшего описания спящих режимов нам пригодится рис. 6.8, на котором представлена схема распределения тактового сигнала микро ­ схемы ATtiny2313.

RkJQdWJsaXNoZXIy MTExODQxMg==