Л_4. Система прерываний AVR микроконтроллера (инкрементальный энкодер)
Лекция расскажет о системе прерываний AVR микроконтроллера. Рассматриваются регистры внешних прерываний и пример программирования энкодера.
Прерывания в микроконтроллере - это набор инструкций, которые исполняются в произвольный момент времени, не определённый программистом заранее, а исполняются они по причине некоего события - внешнего (например, смена состояния сигнала на ножке контроллера) или внутреннего (например, переполнение и сброс значения таймера/счётчика) по отношению к микроконтроллеру.
Atmega128 имеет 8 ножек для подключения внешних сигналов, могущих вызвать прерывание программы, каждая ножка может быть настроена независимо с помощью специальных регистров - регистра локального разрешения прерываний EIMSK, регистра настройки типа сигнала, вызывающего функцию-обработчик прерывания EICRA (для младших ножек прерываний ) и EICRB (для старших ножек прерываний ) и регистра флагов прерываний EIFR (выставляется при переходе функции main() в функцию-обработчик прерывания).