Режимы энергосбережения (Sleep Modes)

Для перевода в любой из трех режимов энергосбережения бит SE в регистре MCUCR должен быть установлен в состояние1. Биты SM1 и SM0 регистра MCUCR определяют какой из режимов Idle, Power Down или Power Save будет запущен командой SLEEP.

При возникновении разрешенного прерывания во время нахождения MCU в режиме энергосбережения, MCU активируется, выполняет подпрограмму обработки прерывания и продолжает работу до следующей команды SLEEP. Если во время режима энергосбережения происходит сброс, MCU активируется и начинает работу по вектору сброса. Содержимое регистрового файла, SRAM и памяти I/O в процессе активации не изменяется. В Таблице 4 представлен выбор режима энергосбережения.

Отметим, что если для возврата из режима энергосбережения Power Down или Power Save, используется запуск прерывания по уровню, то низкий уровень должен удерживаться несколько дольше, чем время задержки сброса tTOUT, иначе микроконтроллер не активируется.

РЕЖИМ Idle

Если биты SM1/SM0 находятся в состоянии 00 команда SLEEP переводит MCU в режим Idle, останавливая CPU но оставляя активными таймеры/счетчики, сторожевой таймер и систему прерываний. Это обеспечивает активацию MCU внешними прерываниями и такими внутренними прерываниями, как переполнение таймера и завершение приема UART. Если активация по аналоговому компаратору не требуется, то аналоговый компаратор может быть отключен установкой бита ACD в регистре управления и статуса аналогового компаратора ACSR. Это позволит дополнительно снизить потребление в Idle режиме. При активации MCU из Idle режима CPU начинает выполнять программу незамедлительно.

РЕЖИМ Power Down

При установке битов SM1/SM0 в состояние 10 команда SLEEP переводит MCU в режим Power Down. В этом режиме останавливается внешний генератор. Пользователь может разрешить работу сторожевого таймера. Если сторожевой таймер разрешен, то активация MCU произойдет по завершении установленного в сторожевом таймере периода времени. Если внешний источник тактового сигнала подключен к выводу XTAL1, то активация MCU из режима Power Down может происходить без ATMEL задержки, обычно необходимой для стабилизации XTAL генератора. Режим такой активации разрешается программированием перемычек SUT0/SUT1 в Flash памяти. См. раздел Режим параллельного программирования.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: