Системный таймер/счетчик.
В состав
К1816ВЕ51 входят два 16-разрядных
таймера/счетчика
T0, T1. Состояние таймеров/счетчиков
(далее для краткости - таймеров)
отображается регистровыми парами
TiH-TiL в пространстве DSEG.
В режиме
таймеров осуществляется пересчет
тактовых сигналов с частотой OSC/12, а в
режиме счетчиков подсчитываются
переходы с H-уровня в L-уровень на
соответствующих входах T0, T1.
Каждый
таймер может работать в одном из четырех
режимов. Режим 1 – обычный 16-разрядный
таймер, режим 0 – то же для 13-разрядного
таймера. В режиме 2 работает только
8-разрядный таймер (младший байт), а из
старшего байта возможна автозагрузка
при переполнении таймера. В режиме 3
16-разрядный таймер «распадается» на
два независимых 8-разрядных таймера1.
Для
требуемого управления объектом необходимо
в алгоритм программы включить таймер
Т0, который состоит из регистровых пар
Т0H
– старший байт и Т0L
– младший байт. Первый вырабатываемый
сигнал у1
должен быть длительностью t1
= 6 мкс. Поэтому в регистр младшего байта,
который во внутренней памяти данных
находится по адресу 8А, заносим значение
константы #06.
При
выработке управляющих сигналов у2
и у3
необходимо задавать значения таймеров
t2
= 80 мкс и t3
= 220 мкс. Значит в младший байт таймера
Т0 задаются значения 80 или 20, в старший
- 02 при выполнении соответствующих
условий.
При
выборе режима работы таймера используют
регистр TMOD.
Для правильной работы таймера необходимо
каждый его бит запрограммировать в
соответствии с требованиями управления.
1