і зміни коефіцієнта ділення після переповнення в кожному такті необхідно записувати задану константу .. Лічильник працює як 8-ми розрядний, причому використовується молодша частина - TL. У старшій частини (TH) знаходиться дільник, який по переповнення TL автоматично перевантажується з TH в TL.
Режими роботи таймерів Таймер0 і Таймер1 задають два регістри спеціальних функцій (SFR - Special Function Register): регістр режиму - TMOD, розташований за адресою 89h в реєстрової пам'яті і регістр управління таймерами і зовнішніми перериваннями - TCON (88h ). Для управління роботою таймера Таймер2 служить регістр T2CON. p align="justify"> Регістр TMOD умовно розбитий на дві половини: перша його частина відповідає за Таймер0, а друга - за Таймер1.
Розподіл бітів регістра TMOD наступне:
Біт0 - (М0) - Молодший байт поля управління режимом;
Біт1 - (М1) - Старший байт поля управління режимом;
Біт2 - (С/Т0) - Вибір функції таймера або лічильника для Таймера0: 0 - таймер; 1 - лічильник;
Біт3 - (GATE0) - Прапор управління входом:
- робота каналу дозволяється (INT0 = 1, TR = 1)
- робота лічильника залежить тільки від TR0
Розподіл бітів регістра TCON наступне:
Біт0 - (IT0) - Управління типом входу INT0:
- вхід прог-ся як динамич по зад фронту імпльса,
- статичний стан входу.
Біт1 - (IE0) - Прапор запиту переривання INT0 при динамічному вході. Скидається, коли відбувається режим підтвердження переривання.;
Біт2, 3 - (IT1/IE1) - Теж, що і попередні біти, але для Таймера0;
Біт4 - (TR0) - Прапор програмного запуску Таймера0
Біт5 - (TF0) - Прапор переповнення Таймера0, який викликає запит переривання. При підтвердженні переривання прапор скидається;
Біт6, 7 - (TR1, TF1) - Для Таймра1;
Для роботи з таймером використовується механізм переривань, роботою якого можна керувати через регістр маски переривань IE (Interrupt Enable). Призначення бітів регістра IE наступне:
Біт0 - (EX0) - Біт дозволу зовнішнього пер...