Таймеры – счетчики
Т/С 0 – 8-разрядный таймер-счетчик. Тактируется асинхронно от внешнего генератора
Т/С 1 – 16-разрядный таймер-счетчик
Т/С 2 – 8-разрядный таймер-счетчик
Работают в режиме
Таймера
Счетчика событий
Широтно-импульсного модулятора
Широтно-импульсный модулятор реализуется в пределах 00Н ÷ FFН для Т/С 0 и Т/С 2
Т/С 0 может использоваться как счетчик реального времени, если на его вход повесить кварц с частотой fТ = 32,768 кГц.
Все счетчики имеют предварительные предделители, где делится частота кратно следующим числам:
Т/С 1 и Т/С 2 – системная частота делится на 8, 64, 256, 1024 (эта частота уже используется в контроллере)
Т/С 0 – системная частота делится на 8, 32, 64, 256, 1024, 2048
Сторожевой таймер
Сторожевой таймер тактируется отдельным встроенным генератором, работающим с частотой 1 МГц Установкой коэффициента предварительного деления можно изменять длительность интервала до сброса по сторожевому таймеру от 16 тыс. до 2048 тыс. циклов (от 16 до 2048 мс). Команда WDR сбрасывает сторожевой таймер.
С момента сброса сторожевого таймера можно установить восемь периодов длительности тактового сигнала, устанавливая, таким образом длительность периода сброса. Если период сброса завершается (в течение этого периода не поступил сигнал сброса сторожевого таймера), то МК сбрасывается и его работа продолжается по вектору сброса
Частота генератора fГ делится на 16, 32, 64, 2048
СТ предназначен для исключения эффекта зависания МП техники: время, за которое прогоняется программа, должно быть меньше, чем время появления сигнала сброса.
CLS – сигнал начального сброса СТ. Установка счетчика в 0
Необходимо настроить время с помощью выходов счетчика СТ. Максимальное время сброса 2,048 сек. Если программа зависла, сброс СТ выведет команду в 0-е состояние, если команда работает, она успевает пройти до системного сброса СТ.
Регистр управления wdtcr
D7 |
D6 |
D5 |
D4 |
D3 |
D2 |
D1 |
D0 |
x |
x |
x |
WDP0E |
WDE |
WDP2 |
WDP1 |
WDP0 |
D4 |
WDP0E |
разрешение отключения сторожевого таймера. Данные биты должны быть установлены в состояние 1 при очистке бита WDE. В ином случае сторожевой таймер не будет запрещен. Установленный бит аппаратно очищается после четырех тактовых циклов |
D3 |
WDE |
разрешение строржевого таймера. Если бит WDE установлен в состояние 1 (сторожевой таймер разрешен) и если бит WDE очищен, то функционирование сторожевого таймера запрещено |
D2 – D0 |
WDP2-WDP0 |
биты установки коэффициента предварительного деления сторожевого таймера. Определяют коэффициент предварительного деления тактовой частоты разрешенного сторожевого таймера. |
-
WDP2
WDP1
WDP0
Длительность цикла сторожевого таймера
0
0
0
-16 тыс. циклов
0
0
1
- 32
..
..
..
1
1
1
- 2048
Это делается для запрещения сбоя по СТ
Сигнал появления сброса MCU должен быть больше, чем время выполнения программы.