Обращение к eeprom при чтении/записи

Регистр управления сторожевым таймером - 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. В одной операции записать логическую 1 в WDTOE и WDE. Логическая 1 должна быть записана в WDE даже если этот бит был установлен перед началом операции запрета сторожевого таймера.
    2. За время последующих четырех тактовых циклов записать логический 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 тактовых цикла.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: