русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Организация прерываний


Дата добавления: 2014-04-18; просмотров: 835; Нарушение авторских прав


МК подгруппы РIС16F8Х имеют четыре источника прерываний:

• внешнее прерывание с вывода RВ0/INТ;

• прерывание от переполнения счетчика/таймера ТМR0;

• прерывание от изменения сигналов на линиях порта RВ<7:4>;

• прерывание по окончании записи данных в ЕЕРRОМ.

Все прерывания имеют один и тот же вектор/адрес — 0004h. Однако в управляющем регистре прерываний INTCON соответствующим битом-признаком записывается, от какого именно источника поступил запрос прерывания. Исключение составляет прерывание по завершении записи в ЕЕРRОМ, признак которого находится в регистре ЕЕCON1. Бит общего разрешения/запрещения прерывания GIЕ (INТСОN <7>) разрешает (если = 1) все индивидуально незамаскированные прерывания или запрещает их (если = 0). Каждое прерывание в отдельности может быть дополнительно разрешено/запрещено установкой/сбросом соответ­ствующего бита в регистре INTCON.

Бит GIЕ при сбросе обнуляется.. Когда начинает обрабатываться пре­рывание, бит GIЕ обнуляется, чтобы запретить дальнейшие прерывания, адрес возврата посылается в стек, а в программный счетчик загружается адрес 0004h. Время реакции на прерывание для внешних событий, таких как прерывание от ножки INТ или порта В, составляет приблизительно пять циклов. Это на один цикл меньше, чем для внутренних событий, та­ких как прерывание по переполнению от таймера ТМR0. Время реакции всегда одинаковое.

В подпрограмме обработки прерывания источник прерывания может быть определен по соответствующему биту в регистре признаков. Этот флаг-признак должен быть программно сброшен внутри подпрограммы. Признаки запросов прерываний не зависят от соответствующих маскиру­ющих битов и бита общего маскирования GIЕ.

Команда возврата из прерывания RETFIE завершает прерывающую под­программу и устанавливает бит GIЕ, чтобы опять разрешить прерывания.



Логика прерываний контролллера:

Внешнее прерывание на ножке RВО/INТ осуществляется по фронту: либо по нарастающему (если в регистре ОРТION бит INTEDG=1), либо по спадающему (если INTEDG=0). Когда фронт обнаруживается на нож­ке INT, бит запроса INTF устанавливается в единицу (INTCON <1>). прерывание может быть замаскировано сбросом управляющего бита INТЕ в ноль (INTCON <4>). Бит запроса INTF необходимо очистить прерыва­ющей программой перед тем, как опять разрешить это прерывание. Пре­рывание INТ может вывести процессор из режима SLЕЕР, если перед вхо­дом в этот режим бит INТЕ был установлен в единицу. Состояние бита GIE также определяет, будет ли процессор переходить на подпрограмму прерывания после выхода из режима SLЕЕР.

Переполнение счетчика ТМR0 (FFh->00h) устанавливает в единицу бит запроса Т0IF (INTCON<2>). Это прерывание может быть разрешено/зап­рещено установкой/сбросом бита маски Т0IЕ (INTCON<5>). Сброс зап­роса Т0IF - дело программы обработки.

, Любое изменение сигнала на одном из четырех входов порта RВ<7:4> устанавливает в единицу бит RВIF (INTCON<0>). Это прерывание может быть разрешено/запрещено установкой/сбросом бита маски RВIE (INTCON<3>). Сброс запроса RВIF - дело программы обработки.

Признак запроса прерывания по завершении записи в ЕЕРRОМ, ЕЕIF (ЕЕСОN1<4>) устанавливается в единицу по окончании автоматической записи данных в ЕЕРRОМ. Это прерывание может быть замаскировано сбросом бита ЕЕIЕ (INTCON<6>). Сброс запроса ЕЕIF - дело программы обработки.

 

 

Занятие 51(55)



<== предыдущая лекция | следующая лекция ==>
Модуль таймера и регистр таймера. | Специальные функции и система команд МК. Специальные функции


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.037 сек.