Обработка прерываний

Сброс от сторожевого таймера

Внешний сброс

Таблица 4.2

Сброс по выключению питания

Цепь сброса по включению питания обеспечивает запрет включения процессора до тех пор, пока напряжение питания не достигнет безопасного уровня. После того, как напряжение питания достигнет уровня включения, процессор не включается до тех пор, пока встроенный таймер не обработает несколько рабочих периодов сторожевого таймера. Общее время сброса состоит из суммы времени Tpor и времени Tout (табл.4.2).

Характеристики сигнала сброса (Vcc=5.0 B).

  Min Typ Max  
Vpot Напряжение срабатывания сброса по включению питания 1.4   2.6 В
Vrst Напряжение срабатывания сброса по выводу RESET   0,6 VCC   В
Tpor Сигнал сброса по включению питания       мс
Ttout Задержка на отработку сброса (FSTRT не запрограммирован)       мс
Ttout Задержка на отработку сброса (FSTRT запрограммирован) 1.0 1.1 1.2 мс

Если к процессору подключен керамический резонатор или другой, обеспечивающий быстрое включение, для уменьшения времени сброса можно запрограммировать бит-перемычку FSTRT.

Поскольку к выводу RESET подключен подтягивающий резистор, этот вывод может оставаться неподключенным, если не требуется внешний сброс. Подключение вывода RESET к напряжению питания дает тот же эффект. Время включения после подачи питания может быть увеличено удержанием вывода сброса на низком уровне.

Внешнее прерывание генерируется низким уровнем на выводе RESET. Вывод должен удерживаться в низком состоянии, по крайней мере, на два периода тактовой частоты. После того как напряжение на выводе RESET достигнет значения Vrst, внутренний таймер запустит процессор после отработки времени Ttout.

После переполнения сторожевого таймера, генерируется короткий им­пульс сброса длительностью в один период тактовой частоты. По окончанию этого импульса внутренний таймер начинает отсчитывать время Ttout. Подробно работа сторожевого таймера будет рассмотрена дальше.

AT90S8535 имеет два регистра маски прерываний GIMSK - общий ре­гистр маски прерываний, расположенный по адресу $3B($5B) и TIMSK - регистр маски прерываний от таймера/счетчика - по адресу $39($59).

Когда возникает прерывание, общий бит разрешения прерываний I очи­щается (ноль) и прерывания запрещаются. Программа пользователя может установить этот бит для разрешения прерываний. Флаг разрешения преры­ваний I устанавливается в 1 при выполнении команды выхода из прерыва­ния - RETI.

Для прерываний включаемых статическими событиями (т.е. переключа­емыми уровнем) (например совпадение значения счетчика/таймера 1 с регистром совпадения) флаг прерывания взводится, когда происходит событие. Ес­ли флаг прерывания очищен и присутствует условие возникновения преры­вания, флаг не будет установлен, пока не произойдет следующее собы­тие.

Когда программный счетчик устанавливается на текущий вектор пре­рывания для обработки прерывания, соответствующий флаг, сгенерированный прерыванием, аппаратно сбрасывается. Некоторые флаги прерывания могут быть сброшены записью логической единицы в бит соответствующий флагу.


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



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