Архитектура таймеров-счетчиков.

В стандартной модели 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.