Регистр управления сторожевым таймером - WDTCR - (Watchdog Timer Control Register)
Биты
|
|
$21 ($41)
| -
| -
| -
| WDT0E
| WDE
| WDP2
| WDP1
| WDP0
|
| WDTCR
|
Чтение/Запись
| R
| R
| R
| R/W
| R/W
| R/W
| R/W
| R/W
|
|
|
Начальное состояние
|
|
|
- Bits 7..5 - Res: Reserved bits - Зарезервированные биты
Эти биты в микроконтроллерах ATmega603/103 зарезервированы и при считывании всегда будут 0. - Bit 4 - WDTOE: Watch Dog Turn Off Enable - Разрешение отключения сторожевого таймера
Данные биты должны быть установлены в состояние 1 при очистке бита WDE. В ином случае сторожевой таймер не будет запрещен. Установленный бит аппаратно очищается после четырех тактовых циклов. См. описание бита WDE в процедуре запрета сторожевого таймера. - Bit 3 - WDE: Watch Dog Enable - Разрешение сторожевого таймера
Если бит WDE установлен в состояние 1 (сторожевой таймер разрешен) и если бит WDE очищен, то функционирование сторожевого таймера запрещено. Бит WDE может быть очищен только если установлен бит WDTOE. Для запрещения разрешенного сторожевого таймера необходимо выполнить следующую процедуру: - В одной операции записать логическую 1 в WDTOE и WDE. Логическая 1 должна быть записана в WDE даже если этот бит был установлен перед началом операции запрета сторожевого таймера.
- За время последующих четырех тактовых циклов записать логический 0 в WDE. Сторожевой таймер будет запрещен.
- Bits 2..0 - WDP2, WDP1, WDP0: Watch Dog Timer Prescaler 2, 1 and 0 - биты установки коэффициента предварительного деления сторожевого таймера
Состояния битов WDP2, WDP1 и WDP0 определяют коэффициент предварительного деления тактовой частоты разрешенного сторожевого таймера. Коэффициенты и соответствующие им промежутки времени представлены в таблице 21.
Таблица 21. Выбор коэффициента предварительного деления тактовой частоты сторожевого таймера
WDP2
| WDP1
| WDP0
| Длительность цикла сторожевого таймера
|
|
|
| 16 тыс. циклов
|
|
|
| 32 тыс. циклов
|
|
|
| 64 тыс. циклов
|
|
|
| 128 тыс. циклов
|
|
|
| 256 тыс. циклов
|
|
|
| 512 тыс. циклов
|
|
|
| 1024 тыс. циклов
|
|
|
| 2048 тыс. циклов
|
Обращение к EEPROM при чтении/записи
Обращение к EEPROM ведется посредством регистров расположенных в пространстве I/O. Время обращения при записи составляет от 2,5 до 4 мс, в зависимости от напряжения VCC. Однако существует специальная функция, которая позволяет пользовательскому ПО обнаруживать момент, когда можно начинать запись следующего байта - для индикации момента готовности EEPROM к записи новых данных может быть установлено специальное прерывание по завершению записи EEPROM (EEPROM Write Complete). Случайная запись в EEPROM предотвращается выполнением специальной процедуры, показанной подробнее в описании регистра управления EEPROM.
После процедуры записи в EEPROM CPU, прежде чем начать выполнение следующей команды, останавливается на два тактовых цикла. При чтении EEPROM CPU останавливается на 4 тактовых цикла.