Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
КЛ_Мікропроцесорні пристрої.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
1.02 Mб
Скачать
    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.