Источники внешних прерываний:
PD2 – прерывание INT0;
PD3 – прерывание INT1
Все вывода Port B, объединенные по ИЛИ – прерывание PCINT
Бит 7— INT1: Разрешение внешнего прерывания INT1. Внешнее прерывание INT1 разрешается, когда бит INT1 установлен в единицу, а также установлен флаг I регистра SREG,. Условия возникновения прерывания определяются битами ISC11 и ISO0 регистра MCUCR. Прерывание будет вызвано даже в том случае, если контакт INT1 сконфигурирован как выход. При вызове прерывания выполняется процедура, определяемая соответствующим вектором прерывания.
Бит 6— INT0: Разрешение внешнего прерывания INT0. Когда бит INT0 установлен в единицу, а также установлен флаг I регистра SREG, внешнее прерывание INT0 разрешается. Условия возникновения прерывания определяются битами ISC01 и ISC00 регистра MCUCR. Прерывание будет вызвано даже в том случае, если контакт INT0 сконфигурирован как выход. При вызове прерывания выполняется процедура, определяемая соответствующим вектором прерывания.
Бит 5 — PCIE: Разрешение прерывания по изменению состояния выводов. Если бит PCIE установлен в единицу, и при этом установлен флаг I регистра SREG, прерывание по изменению состояния любого контакта разрешено. Запрос на прерывание по изменению состояния на любом из контактов вызывает процедуру обработки прерывания, определяемую соответствующим вектором прерывания. Какие именно контакты будут вызвать прерывание, определяется индивидуально, установкой одного из битов PCINT7 – 0 регистра PCMSK.
Бит 7 — INTF1: Флаг внешнего прерывания 1. Когда изменение логического уровня сигнала на входе INT1 вызывает запрос на прерывание, устанавливается флаг INTF1. Если при этом флаг I регистра SREG и бит INT1 регистра GIMSK установлены в единицу, микроконтроллер перейдет к выполнению процедуры обработки прерывания по соответствующему вектору.
При запуске процедуры обработки прерывания флаг автоматически очищается. Флаг может быть также очищен программно, путем записи в него логической единицы. Если прерывание INT1 сконфигурировано как прерывание по уровню, данный флаг всегда очищен.
Бит 6 — INTF0: Флаг внешнего прерывания 0. Когда изменение логического уровня сигнала на входе INT0 вызывает запрос на прерывание, устанавливается флаг INTF0. Если при этом флаг I регистра SREG и бит INT0 регистра GIMSK установлены в единицу, микроконтроллер перейдет к выполнению процедуры обработки прерывания по соответствующему вектору.
При запуске процедуры обработки прерывания флаг автоматически очищается. Флаг может быть также очищен программно, путем записи в него логической единицы. Если прерывание INT0 сконфигурировано как прерывание по уровню, данный флаг всегда очищен.
Бит 5 — PCIF: Флаг прерывания по изменению состояния оного из выводов. Изменение логического уровня на одном из входов PCINT7 – 0 вызывает генерацию запроса на прерывание, благодаря чему устанавливается флаг PCIF. Если при этом флаг 1 регистра SREG и бит PCIE регистра GIMSK установлены в единицу, микроконтроллер перейдет к выполнению процедуры обработки прерывания по соответствующему вектору.
При запуске процедуры обработки прерывания флаг автоматически очищается. Флаг может быть также очищен программно, путем записи в него логической единицы.
Бит 7..0 — PCINT7..0: Маска разрешения входов. Каждый из битов PCINT7 – 0 определяет, разрешается ли прерывание по изменению уровня на соответствующем входе. Если бит и флаг PCIE регистра GIMSK установлены в единицу, прерывание по изменению сигнала на соответствующем входе разрешается. Если бит сброшен, то прерывание по изменению сигнала на соответствующем входе запрещено.
Регистры для управления портами микроконтроллера:
DDRx – регистр направления передачи данных порта;
PORTx – регистр данных порта;
PINx – регистр значения порта
Если не удалось найти и скачать презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:
Email: Нажмите что бы посмотреть