Белов, А.В. Микроконтроллеры AVR: от азов программирования до создания практических устройств
Шаг 6. Осваиваем все возможности микроконтроллера ATtiny23 13 449 Режимы работы 16-разрядноготаймера/счетчика Режим работы таймера/счетчика и выходов совпадения определяется установками битов WGM13:0 и битами СОМ1х1:0: ♦ биты WGM13:0 определяют на работу таймера/счетчика; ♦ биты СОМ1х1:0 в ШИМ-режимах определяют, будет ли сигнал на выходе инвертирован или неинвертирован. В не-ШИМ-режимах эти же биты определяют, будет ли сигнал на выходе установлен, очищен или будет переключаться в момент совпаде ния (смотрите раздел «Модуль Сигнала совпадения»). Режим Normal Режим Normal (WGM13:0 = 0) — самый простой режим работы. В этом режиме таймер работает как обычный суммирующий счетчик. При достижении максимального 16-ричного значения (МАХ = OxFFFF) счет чик переполняется и начинает работать сначала, т. е. со своего минималь ного значения BOTTOM (0x0000). В нормальном режиме работы в том же цикле тактового сигнала, в кото ром произошло переполнение, устанавливается флаг переполнения таймера/ счетчика (TOV 1). Флаг TOV 1 в этом случае ведет себя как 1 7-ый бит счетчика, но с тем лишь отличием, что он только устанавливается, но не сбрасывается. Одновременно с перезапуском таймера возникает запрос на преры вание, которое автоматически очищает флаг TOV1. Коэффициент пере счета таймера может быть увеличен программным путем. В режиме Normal новое значение счетного регистра может быть записано в любой момент времени. Именно в режиме Normal удобнее всего использовать режим захвата. Нужно только следить, чтобы максимальный интервал между внешними событиями, вызывающими захват, не превышал периода пересчета счет чика. Если интервал между событиями слишком велик, то необходимо использовать: ♦ прерывание по переполнению таймера; ♦ предварительный делитель для увеличения периода пересчета. Модуль совпадения может использоваться для того, чтобы вызвать прерывание в заданный момент времени. Использовать модуль совпаде ния для генерации сигналов в режиме Normal не рекомендуется, так как это займет слишком много процессорного времени. Режим сброса при совпадении (СТС) В режиме сброса при совпадении, или в английском сокращении — СТС (WGM13:0 = 4 или 12), для управления коэффициентом пересчета
Made with FlippingBook
RkJQdWJsaXNoZXIy MTExODQxMg==