76
От флага TF идет цепь обратной связи, задающая режим работы таймера:
1. Однократный счет: после переполнения в регистр-счетчик загружается
значение 0 и счет останавливается. Запуск следующего цикла –
специальной командой из программы;
2. Циклический счет с полным циклом: после переполнения в регистр-
счетчик загружается значение 0 и счет начинается снова. Полный цикл
счета
таймера будет 2
k
тактов, где k – разрядность счетчик +
постделитель.
3. Циклический счет с автоперезагрузкой: после переполнения в регистр
счетчик загружается значение из регистра перезагрузки. Таким образом
счет можно начинать не с 0 и уменьшается (программируется)
длительность цикла таймера.
Во многих процессорах имеется специальный вывод INgate, который
выполняет функцию разрешения счета внешним сигналом. С помощью этого
механизма
легко подсчитывать длительность временного интервала,
определяемого длительностью импульса на входе INgate.
Режим счетчика
В отличие от режима таймера, в режиме счетчика выбирается
тактирование от внешнего импульсного сигнала, подаваемого на вход INcnt.
При этом подсчитываются импульсы внешнего сигнала. Инкрементация или
декрементация счетчика происходит по перепаду (фронту) сигнала. Фронт
сигнала в данном случае называют «внешним событием». Полярность фронтов
можно программировать.
В остальном функционирование в режимах счетчика
и таймера
аналогично.
2.2.6.1 Программируемые таймеры в микроконтроллере с ядром Intel
MCS-51
Микроконтроллер ADuC812 имеет три программируемых 16-битных
таймера/счетчика: Таймер 0, Таймер 1, Таймер 2. Каждый таймер состоит из
двух 8-битных регистров THX и TLX. Все три таймера могут быть настроены
на работу в режимах “таймер” или "счетчик".
В режиме "таймер" регистр инкрементируется каждый машинный цикл,
т.е. можно рассматривать это как подсчет машинных циклов. Так как
машинный
цикл состоит из 12 перепадов напряжения на тактовом входе
микроконтроллера, частота инкрементирования таймера в 12 раз меньше
тактовой частоты микроконтроллера (соответствующего кварцевого
резонатора).
В режиме "счетчик" регистр инкрементируется по перепаду из "1" в "0"
внешнего входного сигнала, подаваемого на вывод микроконтроллера T0, T1
или T2. Когда опрос показывает высокий уровень в одном машинном цикле и