Архитектура таймеров-счетчиков.
В стандартной модели 2 таймера-счетчика. T/C0, T/C1 могут работать в 4х режимах (режим 0, 1, 2, 3). T2 – дополнительный таймер.
Режимы 0, 1, 2 – одинаковы для обоих T/С.
1) Режим 0 (для обоих таймеров это режим 8-байтного T/C с 5-байтным делителем)
5 бит 8 бит
Данный режим предусмотрен для сопряжения с предыдущей моделью (I8048).
2)Режим 1 (для T/C0 режим 16-битного счетчика)
Схема 16. Режим 1 работы таймера-счетчика
В режиме таймера идёт подсчёт импульсов резонатора. Чтобы запретить счёт, на TR0 нужно подать 0. Чтобы разрешить – подать на TR0 1. Максимальная частота - 1 МГц – режим таймера.
3) Режим 2.
Автоперегружаемый режим.
8-битный T/C. T/C0 и T/C1 работают одинаково.
Схема 17. Режим 2 работы таймера-счетчика
4) Режим 3.
T/C0 и T/C1 работают различным образом. T/C1 в режиме 3 останавливается, сохраняя своё значение. T/C0 разбивается на 2 8ми разрядных счётчика.(Схема – аналогично схеме в режиме 2
Схема 18. Режим 3 работы таймера-счетчика
Работа только в режиме таймера.
TF1, TR1 – т.к. TF0 и другие заняты.
При этом T/C1 можно запрограммировать в другом режиме (не в 3). Например, в режиме 2, видоизменённом (без генерации прерываний).
Если T/C0 работает в режиме 3, то можно T/C1 запрограммировать для работы в режиме 2, и использовать без прерывания для задания скорости обмена по UART.