Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Лекция №14. Обработка внешних прерываний в микроконтроллере.





В ATtiny2313 предусмотрены 10 источников прерываний. Эти прерывания и сброс имеют различные векторы в области памяти программ. Каждому из прерываний присвоен отдельный бит разрешающий данное прерывание при установке бита в 1, если бит I регистра состояния разрешает общее обслуживание прерываний.

Самые младшие адреса памяти программ определены как векторы сброса и прерываний. Полный список векторов прерываний приведен в таблице 14.1. Этот список определяет и приоритет различных прерываний. Меньшие адреса соответствуют более высокому уровню приоритета. Самый высокий уровень у сброса, следующий приоритет у INT0 - внешнего запроса прерывания 0 и т.д.

Ниже приведена типичная программа обработки сброса и векторов прерываний:

 

Address Labels Code Comments

$000 rjmp RESET; Обработка сброса

$001 rjmp EXT_INT0; Обработка IRQ0

$002 rjmp EXT_INT1; Обработка IRQ1

$003 rjmp TIM_CAPT1; Обработка захвата таймера 1

$004 rjmp TIM_COMP1; Обработка совпадения таймера 1

$005 rjmp TIM_OVF1; Обработка переполнения таймера 1

$006 rjmp TIM_OVF0; Обработка переполнения таймера 0

$007 rjmp UART_RXC; Обработка приема байта

$008 rjmp UART_DRE; Обработка освобождения UDR

$009 rjmp UART_TXC; Обработка передачи байта

$00a rjmp ANA_COMP; Обработка аналогового компаратора

 

$00b MAIN: <instr> xxx; Начало основной программы

_ _ _ _

 

Таблица 14.1. Сброс и векторы прерываний.

┌─────────────┬──────┬──────────────┬────────────────────────────────┐

│Номер вектора│ Адрес│Источник │ Описание прерывания │

├─────────────┼──────┼──────────────┼────────────────────────────────┤

│ 1 │ $000 │RESET │ Ножка сброса и сброс от сторо- │

│ │ │ │ жевого таймера │

├─────────────┼──────┼──────────────┼────────────────────────────────┤

│ 2 │ $001 │INT0 │ Внешнее прерывание 0 │

├─────────────┼──────┼──────────────┼────────────────────────────────┤

│ 3 │ $002 │INT1 │ Внешнее прерывание 1 │

├─────────────┼──────┼──────────────┼────────────────────────────────┤

│ 4 │ $003 │TIMER1 CAPT1 │ Захват таймера/счетчика 1 │

├─────────────┼──────┼──────────────┼────────────────────────────────┤

│ 5 │ $004 │TIMER1 COMP1 │ Совпаден. таймера/счетчика 1 │

├─────────────┼──────┼──────────────┼────────────────────────────────┤

│ 6 │ $005 │TIMER1 OVF1 │ Переполнение таймера/счетчика 1│

├─────────────┼──────┼──────────────┼────────────────────────────────┤

│ 7 │ $006 │TIMER0 OVF0 │ Переполнение таймера/счетчика 0│

├─────────────┼──────┼──────────────┼────────────────────────────────┤

│ 8 │ $007 │UART RX │ Последоват.порт прием закончен │

├─────────────┼──────┼──────────────┼────────────────────────────────┤

│ 9 │ $008 │UART UDRE │ Посл.порт регистр данных пуст │

├─────────────┼──────┼──────────────┼────────────────────────────────┤

│ 10 │ $009 │UART TX │ Посл.порт передача закончена │

├─────────────┼──────┼──────────────┼────────────────────────────────┤

│ 11 │ $00A │ANA_COMP │ Аналоговый компаратор │

└─────────────┴──────┴──────────────┴────────────────────────────────┘

 

ATtiny2313 имеет два регистра маски прерываний GIMSK - общий регистр маски прерываний и TIMSK - регистр маски прерываний от таймера/счетчика.

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

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







Дата добавления: 2015-08-12; просмотров: 373. Нарушение авторских прав; Мы поможем в написании вашей работы!




Аальтернативная стоимость. Кривая производственных возможностей В экономике Буридании есть 100 ед. труда с производительностью 4 м ткани или 2 кг мяса...


Вычисление основной дактилоскопической формулы Вычислением основной дактоформулы обычно занимается следователь. Для этого все десять пальцев разбиваются на пять пар...


Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...


Кардиналистский и ординалистский подходы Кардиналистский (количественный подход) к анализу полезности основан на представлении о возможности измерения различных благ в условных единицах полезности...

Основные разделы работы участкового врача-педиатра Ведущей фигурой в организации внебольничной помощи детям является участковый врач-педиатр детской городской поликлиники...

Ученые, внесшие большой вклад в развитие науки биологии Краткая история развития биологии. Чарльз Дарвин (1809 -1882)- основной труд « О происхождении видов путем естественного отбора или Сохранение благоприятствующих пород в борьбе за жизнь»...

Этапы трансляции и их характеристика Трансляция (от лат. translatio — перевод) — процесс синтеза белка из аминокислот на матрице информационной (матричной) РНК (иРНК...

Метод Фольгарда (роданометрия или тиоцианатометрия) Метод Фольгарда основан на применении в качестве осадителя титрованного раствора, содержащего роданид-ионы SCN...

Потенциометрия. Потенциометрическое определение рН растворов Потенциометрия - это электрохимический метод иссле­дования и анализа веществ, основанный на зависимости равновесного электродного потенциала Е от активности (концентрации) определяемого вещества в исследуемом рас­творе...

Гальванического элемента При контакте двух любых фаз на границе их раздела возникает двойной электрический слой (ДЭС), состоящий из равных по величине, но противоположных по знаку электрических зарядов...

Studopedia.info - Студопедия - 2014-2025 год . (0.009 сек.) русская версия | украинская версия