Power-Save

Power-Down.

Idle mode.

Когда бит SM сброшен в «0», команда SLEEP переводит процессор в ре­жим холостого хода (Idle mode). Процессор микроконтроллера останавливается, а все остальные периферийные устройства (интерфейсные модули, таймеры/счет­чики, аналоговый компаратор, АЦП, сторожевой таймер) и система прерываний продолжают работать. Это позволяет процессору возобновлять работу как от внешних прерываний, так и по переполнению таймера/счетчика или по сбросу от сторожевого таймера. Если разрешена работа от АЦП, то преобразование начнет выполняться сразу после перехода в Idle Mode. Если прерывание от аналогового компаратора не требуется, ана­логовый компаратор может быть отключен установкой бита ACD регистра ACSR. Это уменьшает потребляемую мощность в режиме холостого хода.

Основным преимуществом Idle Mode является быстрая реакция на события, приводящие к «пробуждению» микроконтроллера. Выполнение программы начинается сразу же после перехода из Idle Mode в рабочий режим.

В этом режиме отключаются все внутренние тактовые сигналы, соответственно, прекращается функционирование всех систем микроконтроллера, работающих в синхронном режиме. Единственными узлами, продолжающими работать в этом режиме, являются асинхронные модули: сторожевой таймер (если он включен) и подсистема обработки внешних прерываний. Соответственно, выход из режима Power Down возможен либо в результате сброса (аппаратного, от сторожевого таймера) или в результате генерации прерываний от внешних источников (INT1, INT0).

Поскольку тактовый генератор микроконтроллера в режиме Power Down останавливается, то между наступлением события, приводящего к «пробуждению» микроконтроллера и началом его работы проходит некоторое время, в течение которого тактовый генератор микроконтроллера выходит на рабочий режим. Длительность этой задержки определяется теми же конфигурационными битами, которые определяют задержку сброса микроконтроллера.

Для выхода микроконтроллера из режима Power Down в результате внешнего прерывания, генерируемому по низкому уровню на входе, длительность активного сигнала должна быть не менее двух периодов сигнала тактового генератора сторожевого таймера (>2 мкс при Vcc=5В). Причем, если сигнал, вызвавший «пробуждение» микроконтроллера, исчезнет раньше, чем микроконтроллера перейдет в рабочий режим, то обработчик соответствующего прерывания вызван не будет.

Этот режим идентичен режиму Power Down, за одним исключением: если таймер/счетчик микроконтроллера, поддерживающий работу в асинхронном режиме, сконфигурирован для работы в этом режиме, то он будет работать во время «сна» микроконтроллера. Поэтому выход из режима Power Save возможен не только в результате событий, перечисленных при рассмотрении режима Power Down, но и по прерываниям от таймера/счетчика.

5 Таймеры/счетчики

В AT90S8535 предусмотрены три таймера/счетчика (ТС) общего назначения, два 8-разрядных и один 16-разрядный. ТС2 может быть тактирован асинхронным способом от внешнего генератора. ТС2 оптимизирован для работы с генератором 32,768 кГц (часовой кварц) и может быть использован в качестве часов реального времени. Каждый из таймеров индивидуально подключается к одному из выходов 10-разрядного предварительного делителя частоты. Таймеры могут использоваться как таймеры с внутренним источником импульсов, или счетчики импульсов, поступающих извне. При переполнении ТС могут вызываться прерывания по соответствующим векторам.

В качестве источника импульсов для таймеров можно выбрать сигнал с тактовой частотой процессора (CK), импульсы предварительного делителя (CK/8, CK/64, CK/256 или CK/1024) или импульсы с соответствующего внешнего вывода. Кроме того, таймеры могут быть остановлены, запретом прохождения импульсов на них (рис.5.1).

Источник тактового сигнала для предделителя ТС2 называется PCK2. PCK2 по умолчанию подсоединен к основному системному источнику тактовых импульсов (CK). при установке бита AS2 в регистре ASSR, предделитель для ТС2 тактируется асинхронным образом от импульсов, приходящих на ножку PC6 (TOSC1). Это дает возможность использовать ТС2 в качестве часов реального времени (Real-Time Clock, RTC).

Когда AS2 установлен, выводы PC6 (TOSC1) и PC7 (TOSC2) отсоединены от PORT C. Поэтому внешний кварцевый резонатор может быть подключен между PC6 (TOSC1) и PC7 (TOSC2), и служить в качестве независимого источника тактовых импульсов для TC2. Генератор оптимизирован для использования с кварцевыми резонаторами частотой 32.768 кГц. Применение внешнего источника тактовых импульсов на TOSC1 не рекомендуется.

Рисунок 5.1 – Схемы тактирования таймеров-счетчиков Т0, Т1 и Т2

5.1 8-разрядный таймер/счетчик 0

8-разрядный таймер/счетчик может получать импульсы тактовой час­тоты - CK, импульсы с предварительного делителя (CK/8, CK/64, CK/256 или CK/1024), импульсы с внешнего вывода или быть остановлен соответ­ствующими установками регистра TCCR0 (рис.5.2). Флаг переполнения таймера нахо­дится в регистре TIFR. Биты управления таймером расположены в регистре TCCR0. Разрешение и запрещение прерываний от таймера управляется реги­стром TIMSK.

Рисунок 5.2 – Функциональная схема таймера-счетчика ТС0

При работе таймера/счетчика от внешнего сигнала, внешний сигнал синхронизируется с тактовым генератором ЦПУ. Для правильной обработки внешнего сигнала, минимальное время между соседними импульсами должно превышать период тактовой частоты процессора. Сигнал внешнего источни­ка обрабатывается по спадающему фронту тактовой частоты процессора.

8-разрядный таймер/счетчик можно использовать как счетчик с высо­ким разрешением, так и для точных применений с низким коэффициентом деления тактовой частоты. Более высокие коэффициенты деления можно ис­пользовать для медленных функций или измерения временных интервалов между редкими событиями.

5.1.1 Timer/Counter0 Control Register (TCCR0)

Бит $33($53) R/W Нач.знач.                 TCCR0
- - - - - CS02 CS01 CS00
R R R R R R/W R/W R/W
               

Рисунок 5.3 - Регистр управления таймером/счетчиком 0 (TCCR0)

Биты 7..3 - зарезервированы. В AT90S8535 эти биты зарезервированы и всегда читаются как 0.

Биты 2,1,0 – Clock Select (CS02, CS01, CS00). Выбор тактовой частоты. Эти биты за­дают источник тактовых импульсов и коэффициент деления предварительного делителя (табл.5.1).


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



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