Белов, А.В. Микроконтроллеры AVR: от азов программирования до создания практических устройств
432 Микроконтроллеры AVR от азов программирования... начинается выполнение соответствующей процедуры обработки преры вания. Бит TOVO может быть очищен программно, путем записи в него логической единицы. Прерывание выполняется, когда флаг I регистра SREG, бит TOIEO (бит разрешения прерывания по переполнению) и флаг TOVO установлены. Действие этого флага зависит от состояния разрядов WGM02:0. Смотри табл. 6.40. Бит 0 — OCFOA: Флаг совпадения канале А. Бит OCFOA устанавли вается в том случае, когда возникает совпадение содержимого счетного регистра таймера/счетчика 0 и регистра OCROA. Бит OCFOA аппаратно сбрасывается в ноль в тот момент, когда начинается выполнение соот ветствующей процедуры обработки прерывания. Бит OCFOA может быть очищен программно путем записи в него логической единицы. Прерывание выполняется, когда флаг I регистра SREG, бит OCIEOA (бит разрешения прерывания по совпадению А) и флаг OCFOA установлены. Предварительные делители таймера/счетчика 0 и таймера/счетчика 1 Для таймера/счетчика 1 и таймера/счетчикаО используется один общий предварительный делитель (рис 6.28). Но каждый из таймеров/счетчиков может использовать свой собственный коэффициент пересчета предва рительного делителя частоты. Все описанное ниже относится как к тай- меру/счетчику 1, так и к таймеру/счетчику 0. Внутренний источник тактового сигнала Любой таймер/счетчик может быть синхронизирован непосред ственно от сигнала системного тактового генератора (при установке CSn2:0 = 1). Это самый скоростной режим работы с максимально воз можной тактовой частотой таймера/счетчика, равной частоте системного генератора (f CLK 1/о ). Кроме этого, в качестве источника тактового сигнала может использоваться один из четырех выходов предварительного дели теля. Частоты сигналов после предварительного делителя имеют следую щие значения: (ськ_і/о^> ^сі.к_і/о/64; (ськ_і/о^256; f CLK I/o /1024. Сброс предварительного делителя Предварительный делитель работает автономно, то есть независимо от работы таймеров/счетчиков. Выбор тактового сигнала происходит отдельно для таймера/счетчика 1 и для таймера/счетчика 0. Так как работа предварительного делителя продолжается и в момент переключе ния коэффициентов деления, то состояние предварительного делителя в
Made with FlippingBook
RkJQdWJsaXNoZXIy MTExODQxMg==