Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
КЛ_Мікропроцесорні пристрої.docx
Скачиваний:
4
Добавлен:
01.07.2025
Размер:
1 Мб
Скачать
☆
    1. Сторожовий таймер wdt

Убудований сторожовий таймер WDT працює від окремого генератора RC, що не вимагає зовнішніх компонентів. Це дозволяє працювати сторожовому таймеру WDT при вимкненому тактовому генераторі (виводи OSC1, OSC2) в режимі SLEEP мікроконтролера. У нормальному режимі роботи при переповнюванні WDT відбувається скидання мікроконтролера. Якщо мікроконтролер знаходиться в режимі SLEEP, переповнювання WDT виводить його з режиму SLEEP з продовженням нормальної роботи. WDT вимкнений, якщо WDTE = 0 в слові конфігурації.

Час переповнювання залежить від температури, напруги живлення VDD і розкиду технологічних параметрів мікроконтролера. Якщо потрібний більший час переповнювання WDT, необхідно програмно підключити переддільник в регістрі OPTION_REG з максимальним коефіцієнтом ділення 1:128.

Примітки:

  1. Команди CLRWDT і SLEEP скидають сторожовий таймер і переддільника, якщо він підключений до WDT, відкладаючи скидання пристрою.

  2. Команда CLRWDT скидає сторожовий таймер і переддільник, якщо він підключений до WDT, але не змінює коефіцієнт ділення переддільника.

Структурна схема сторожового таймера WDT показана на рисунку 4.15.

Рисунок 4.15 – Структурна схема сторожового таймера WDT

    1. Біти конфігурації

Біти конфігурації розташовані в пам'яті програм за адресою 2007h, вони можуть бути запрограмовані в «0» або залишеними в «1». Зверніть увагу, що адреса 2007h розташована за межами призначеної для користувача пам'яті програм. Фактично, до конфігураційного регістра (область пам'яті 2000…SFFFh) можна звернутися тільки в режимі програмування мікроконтролера.

Слово конфігурації (адреса 2007h)

Біт 13 Біт 0

Біти 13-12: СР1:СРО: Біти захисту пам'яті програм 11 = захист пам'яті програм вимкнений

10 = захищена пам'ять програм з адресами 1F00…1FFFh

01 = захищена пам'ять програм з адресами 1000…1FFFh 00 = захищена пам'ять програм з адресами 0000…1FFFh

біт 11: DEBUG: Біт включення режиму внутрішньосхемного налагодження

1 = внутрішньосхемне налагодження вимкнене, виводи RB6 і RB7 працюють як канали введення/виводу

0 = внутрішньосхемне налагодження включене, виводи RB6 і RB7 використовуються наладником

біт 10: Не реалізований: читається як «1»

біт 9: WRT: Біт дозволу запису в FLASH пам'ять програм

1 = дозволений запис в FLASH пам'ять програм через регістри управління EECON

0 = заборонений запис в FLASH пам'ять програм через регістри управління EECON

біт 8: CPD: Біт захисту EEPROM пам'яті даних

1 = захист пам'яті даних вимкнений

0 = захист пам'яті даних включений

біт 7: LVP: Біт дозволу низьковольтного програмування

1 = виведення RB3/PGM працює як PGM, режим низьковольтного програмування включений

0 = виведення RB3/PGM працює як цифровий порт введення/виводу, виведення HV використовується для програмування мікроконтролера

біт 6: BODEN: Біт дозволу скидання по зниженні напруги живлення 1= дозволено скидання BOR

0 = заборонено скидання BOR

біт 3: -PWRTE: Біт дозволу роботи таймера включення живлення

1 = PWRT вимкнений

0 = PWRT включений

біт 2: WDTE: Біт дозволу роботи сторожового таймера

1 = WDT включений

0 = WDT вимкнений

биті 1-0: FOSC1:FOSCO: Біти вибору режиму тактового генератора

11 = RC генератор 10 = HS генератор

01 = XT генератор 00 = LP генератор

Примітки:

  1. При стиранні всієї пам'яті мікроконтролера в слово конфігурації записується значення SFFFh.

  2. Щоб встановити захист пам'яті програм, усі пари СР1:СРО повинні мати однакове значення.

  3. При виникненні скидання по зниженні напруги живлення (BOR) автоматично запускається таймер PWRT, незалежно від стану біта - PWRTE.