October 17 2017 05:01:42
Навигация
Авторизация
Логин

Пароль



Вы не зарегистрированы?
Нажмите здесь для регистрации .

Забыли пароль?
Запросите новый здесь.
Срез в режиме статической защелки
МИКРОКОНТРОЛЛЕРЫ СЕМЕЙСТВА НС08

О наличии в системе принятого запроса на внешнее прерывание свидетельствует установленный в 1 флаг IRQF в регистре управления внешними прерываниями INTSCR. Однако установка флага IRQF в 1 не всегда сопровождается формированием активного уровня сигнала запроса на прерывание в модуль системной интеграции SIM08. Разрешает или запрещает формирование этого сигнала бит маски внешнего прерывания IMASK.

Внимание! Глобальная маска прерывания I в регистре признаков CPU МК маскирует все прерывания, в том числе и внешние прерывания по запросу ØIRQ. При сбросе МК маска I устанавливается в 1, следовательно, сразу после включения питания внешние прерывания запрещены. Однако маска внешнего прерывания IMASK после сброса устанавливается в 1. Поэтому, разрешая прерывания в системе, можно случайно разрешить нежелательные внешние прерывания!

Вход ØIRQ может быть программно настроен на один из механизмов распознавания сигнала запроса:

* Динамический режим.

* Режим статической защелки.

В динамическом режиме срез сигнала на входе ØIRQ устанавливает запрос на прерывание (в формировании запроса участвует только триггер T) Длительность сигнала низкого уровня на входе ØIRQ должна быть не менее tILIH=50 нс для МК с напряжением питания 5.0 В и tILIH=125 не для МК с напряжением питания 3.0 В. После обработки данного запроса триггер автоматически сбрасывается. Следующий запрос будет воспринят триггером Т, только если сигнал на входе ØIRQ установится а 1, а затем опять в 0.

В режиме статической защелки срез или низкий логический уровень сигнала на входе ØIRQ устанавливает запрос на прерывание (сигнал запроса формируется одновременно по двум каналам - триггер Т и элементы 1, 2, 3 на Рис. 3.23). Так долго как существует низкий логический уровень на входе ØIRQ удерживается и запрос на прерывание (IRQF=1). Переход на подпрограмму обслуживания внешнего прерывания приведет только к сбросу триггера T, однако второй канал формирования запроса обеспечит его существование. Если время выполнения подпрограммы окажется меньше времени удержания активного уровня на входе ØIRQ, то она может быть выполнена многократно, что эквивалентно обработке нескольких запросов на прерывание.

Состояние бита маски внешнего прерывания IMASK не оказывает влияния на логику установки и сброса флага IRQF, который доступен для чтения. Это обстоятельство может быть использовано разработчиком, если в приложении необходимо фиксировать перепад сигнала из 1 в 0 и время реакции на это событие не является критичным. Кроме того, вход ØIRQ может быть использован как дополнительная линия ввода. Для контроля за уровнем сигнала на входе следует использовать команды ветвления BIH и BIL

img038

Табл. 3.45. Формат регистра INTSCR

INTSCR Регистр управления внешними прерываниями

IRQ Status and Control Register
7 6 5 4 3 2 1 0
0 0 0 0 IRQF ASK IMASK MODE
Состояние при сбросе: $00
Имя бита Назначение бита
IRQF Флаг запроса внешнего прерывания (IRQ Flag Bit).
Флаг запроса внешнего прерывания устанавливается в 1 , если сигнал запроса на прерывание принят, но прерывание еще не обслужено.
1 - сигнал запроса на прерывание поступил.
0 - сигнал запроса на прерывание не поступал. Этот бит доступен только для чтения. Условия сброса флага подробно рассмотрены выше по тексту
ASK Бит подтверждения запроса на прерывание (IRQ Interrupt Request Acknowledge Bit).
Установка этого бита в 1 под управлением программы вызывает очистку триггера запроса на прерывание Т. Этот бит доступен только для записи. Операция чтения этого бита возвращает 0
IMASK Маска внешнего прерывания (IRQ Interrupt Mask),
1 - внешние прерывания запрещены.
0 - внешние прерывания разрешены.
Этот бит доступен как для чтения, так и для записи. Обратите внимание: сброс МК вызывает установку бита IMASK в 0, т.е. при включении МК в работу внешние прерывания разрешены
MODE Бит выбора режима обработки сигнала внешнего запроса (IRQ Edge/Level Select Bit).
1 - вход IRQ работает в статическом режиме.
0 - вход IRQ работает в динамическом режиме.
Бит доступен как для чтения, так и для записи, При сбросе МК устанавливается динамический режим распознавания сигналов запроса на прерывание

Внимание! Если МК находится в режиме прерывания по контрольной точке (Break mode), то установка бита ASK в 1 приведет к сбросу триггера Т только в том случае, если бит BCFE регистра SBFCR установлен в 1 (см. п. 3.5.7). В противном случае установка бита ASK не приведет к сбросу флага внешнего прерывания IRQF.

Всего один регистр специальных функций используется для программного управления модулем внешних прерываний. Формат этого регистра одинаков для всех моделей МК семейства НС08, однако этот регистр имеет разные аббревиатуры: INTSCR - для HC908GP32/20 и HC908JL3/JK3/JK1, ISCR - для остальных моделей МК. Формат регистра управления внешними прерываниями приведен в Табл. 3.45.

Абсолютные адреса регистра управления внешними прерываниями для различных типов МК приведены в Табл. 3.46.

Табл. 3.46. Адрес регистров INTSCR или ISCR

Регистры управления внешними прерываниями Тип микроконтроллера
GP32/20 JL3/JK3/JK1 MR32/24 AZ60 AZ0/16/24/32
Имя регистра INTSCR INTSCR ISCR ISCR ISCR
Адрес регистра $0010 $0010 $001 Е $001А $001A
Комментарии
Нет комментариев.
Добавить комментарий
Пожалуйста, залогиньтесь для добавления комментария.
Рейтинги
Рейтинг доступен только для пользователей.

Пожалуйста, авторизуйтесьили зарегистрируйтесь для голосования.

Нет данных для оценки.

Время загрузки: 0.02 секунд 2,254,295 уникальных посетителей