Довідник по середньому сімейству мікроконтролерів PICmicro - Стор. 44

ТОВ "Мікро-Чіп" - постачання комплектуючих Microchip тел.: (095) 737-7545
26.6 Відповіді на питання, що часто ставляться
Запитання 1: Напруга живлення пристрою знижується нижче допустимого рівня, а потім відновлюється. При цьому WDT не скидає мікроконтролер, і пристрій працює неправильно.
WDT не призначений для скидання мікроконтролера щодо зниження напруги живлення. WDT використовується для запобігання "зависання" програми в робочому діапазоні напруги живлення. Якщо можливе зниження напруги живлення нижче робочого рівня, необхідно використовувати внутрішню чи зовнішню схему скидання зі зниження напруги живлення.
Питання 2: Мікроконтролер скидається навіть за регулярного виконання команди CLRWDT.
Переконайтеся, що період виконання команди CLRWDT менший за мінімальний час переповнення WDT (не номінальне значення).
Питання 3: Мікроконтролер не виходить із стану скидання.
При включенні живлення необхідно враховувати час запуску тактового генератора (TOST). Іноді цю проблему можна вирішити розмітивши на початку програми команду CLRWDT. Потім можна змінити час скидання WDT.
WWW.MICROCHIP.RU – постачання та техпідтримка українською мовою
Розділ 26. Сторожовий таймер WDT та режим енергозбереження SLEEP
26.7 Додаткова література
Додаткова література та приклади застосування, пов'язані з цим розділом документації. Приклади застосування не можуть використовуватися для всіх мікроконтролерів середньої родини (PIC16CXXX). Як правило, приклади застосування написані для конкретної групи мікроконтролерів, але принципи прикладів можуть використовуватися, зробивши незначні зміни (з урахуванняміснуючих обмежень).
Документи, пов'язані з WDT та SLEEP режимом у мікроконтролерах PICmicro MCU:
Power-up Trouble Shooting
Вирішення проблем, що виникають при включенні живлення
WWW.MICROCHIP.RU – постачання та техпідтримка українською мовою

ТОВ "Мікро-Чіп" - постачання комплектуючих Microchip тел.: (095) 737-7545
Розділ 27. Біти конфігурації
27.2.1 Директива CONFIG асемблера MPASM.
Захист коду програми.
27.3.1 Мікроконтролери з масковою пам'яттю (ROM).
Розміщення ідентифікатора ID.
27.5 Відповіді на питання, що часто ставляться.
WWW.MICROCHIP.RU – постачання та техпідтримка українською мовою

Розділ 27. Біти конфігурації
Біти конфігурації можуть бути запрограмовані (читаються як '0') або залишені без зміни (читаються як '1'), щоб вибрати режим роботи мікроконтролера. Можливість зміни бітів конфігурації після їхнього програмування залежить від технології виготовлення пам'яті програм і типу корпусу мікроконтролера.
Для мікроконтролерів з масковою пам'яттю (ROM) стан бітів конфігурації визначаються під час передачі коду програми, і вони можуть бути змінені (необхідний новий код маски пам'яті).
У мікроконтролерах з одноразово програмованою пам'яттю (OTP), якщо біт конфігурації був запрограмований ('0'), він може бути змінений.
Мікроконтролери з УФ стиранням пам'яті програм дозволяють повернути біти конфігурації в початковий стан. При стиранні бітів конфігурації також буде стерта пам'ять програм.
У мікроконтролерах з Flash пам'яттю програм ці біти можуть бути стерті та повторно запрограмовані.
Примітка. Не рекомендується програмувати біти захисту у мікроконтролерахз УФ стиранням пам'яті програм.
WWW.MICROCHIP.RU – постачання та техпідтримка українською мовою

ТОВ "Мікро-Чіп" - постачання комплектуючих Microchip тел.: (095) 737-7545
27.2 Слово конфігурації
У слові зміни розташовані біти, які керують деякими режимами роботи мікроконтролера. Вони можуть бути змінені за протоколом програмування ICSP у програматорі або пристрої користувача. Розміщення управляючих бітів у слові конфігурації автоматично визначається під час виборів програмованого микроконтроллера (це функцією якісних программаторов). Додаткову інформацію про програмування мікроконтролерів дивіться у відповідній специфікації програмування.
Примітка 1. Необхідно гарантувати, що в програматорі вказано тип мікроконтролера, який потрібно запрограмувати.
Примітка 2. Рекомендується вказувати стан бітів конфігурації у вихідному тексті програми. Це легко зробити в асемблері MPASM за допомогою директиви CONFIG (див. Розділ 27.2.1).
CP1:CP0: Біти захист пам'яті програм
11 = захист пам'яті програм вимкнено
10 = дивіться у технічній документації на мікроконтролер
01 = дивіться у технічній документації на мікроконтролер
00 = вся пам'ять програм захищена Примітка. Деякі мікроконтролери містять лише один біт, який керує захистом пам'яті програм.
1 = захист пам'яті програм вимкнено
0 = захищена вся пам'ять програм
DP: Біт захисту EEPROM пам'яті даних
1 = захист пам'яті даних вимкнено
0 = захист пам'яті даних увімкнено
Примітка. Цей біт використовується лише в мікроконтролерах з EEPROM пам'яттю даних.
BODEN: Біт дозволу скидання зі зниження напругиживлення 1 = дозволено скидання BOR
0 = заборонено скидання BOR
Примітка. При включенні схеми BOR таймер PWRT також увімкнений незалежно від стану біта PWRTE. Необхідно дозволяти роботу таймера PWRT, якщо Ви використовуєте скидання зі зниження напруги живлення.
-PWRTE: Біт дозволу роботи таймера живлення 1 = PWRT вимкнений
0 = PWRT включений
Примітка. У деяких мікроконтролерах біт PWRT має зворотну полярність.
MCLRE: Біт вибору режиму виведення -MCLR 1 = висновок працює як -MCLR
0 = висновок працює як цифровий порт введення/виводу, використовується внутрішній скидання -MCLR
WDTE: Біт дозволу роботи сторожового таймера 1 = WDT увімкнено
0 = WDT вимкнено
FOSC1:FOSC0: Біти вибору режиму тактового генератора 11 = RC генератор
10 = генератор HS
01 = XT генератор
00 = LP генератор
FOSC2:FOSC0: Біти вибору режиму тактового генератора 111 = EXTRC зовнішній RC генератор з CLKOUT 110 = EXTRC зовнішній RC генератор
101 = INTRC внутрішній RC генератор з CLKOUT 100 = INTRC внутрішній RC генератор
010 = генератор HS
001 = XT генератор
000 = LP генератор
Примітка. Розташування та склад бітів конфігурації дивіться у технічній документації на мікроконтролер. При використанні програматорів компанії Microchip не потрібно знання розміщення бітів у слові конфігурації.
WWW.MICROCHIP.RU – постачання та техпідтримка українською мовою

Розділ 27. Біти конфігурації
27.2.1 Директива CONFIG асемблера MPASM
У макроассемблері MPASM надається можливість визначити біти конфігурації у вихідному тексті програми з допомогою директиви CONFIG. Використання директиви CONFIG гарантуєзапис бітів конфігурації під час програмування мікроконтролера, що зменшує ризик запрограмувати неправильне слово конфігурації.
У прикладі 27-1 наведено варіант використання директиви CONFIG.
Приклад 27-1 Використання директиви CONFIG у шаблоні вихідного файлу
; Допоміжний файл від Microchip
; Файл зі стандартними макросами
; Файл з набором макросів для цієї програми
; Налаштування бітів конфігурації
__CONFIG _XT_OSC & _PWRTE_ON & _BODEN_OFF & _CP_OFF & _WDT_ON
; Початок пам'яті програм
; Перша команда після скидання
Символи, описані у додатковому файлі Microchip (.inc), дозволяють безпосередньо використовувати директиву CONFIG (див. таблицю 27-1). Набір символів, доступних для конкретного мікроконтролера, дивіться у відповідному .inc файлі.
Примітка. Правильний вибір мікроконтролера (у директивах LIST та INCLUDE) гарантує правильну полярність усіх бітів конфігурації.
WWW.MICROCHIP.RU – постачання та техпідтримка українською мовою

ТОВ "Мікро-Чіп" - постачання комплектуючих Microchip тел.: (095) 737-7545
Таблиця 27-1 Список стандартних символів для директиви __CONFIG
Сторожовий таймер WDT
Таймер живлення PWRT
Скидання зниження напруги живлення
Режим роботи виводу -MCLR
Захист коду програми
Захист EEPROM пам'яті даних
Захист калібрувальної інформації
Примітка. Не всі символи можуть бути доступні в окремому мікроконтролері. Склад символів Ви можете дізнатися із додаткового файлу .inc.
WWW.MICROCHIP.RU – постачання та техпідтримка українською мовою

Розділ 27. Біти конфігурації
27.3 Захист коду програми
Примітка. Не рекомендується програмувати біти захисту в мікроконтролерах з УФ стиранням пам'яті програм.
27.3.1 Мікроконтролери з масковою пам'яттю (ROM)
Коли в мікроконтроллері з ROM пам'яттю програм реалізована EEPROM пам'ять даних, слово конфігурації може бути додатковий біт захисту EEPROM пам'яті даних. Біт захисту пам'яті програм передається як частина програмного коду. Біт захисту EEPROM пам'яті даних виконаний за технологією EEPROM. Після виконання заключних випробувань біт захисту EEPROM пам'яті даних матиме також стан, як і біт захисту пам'яті програм. Захист EEPROM пам'яті даних вимкнено, коли вимкнено захист пам'яті програм.
Для програм, у яких потрібно запрограмувати EEPROM пам'ять даних перед випуском виробу, необхідно повністю стерти EEPROM пам'ять даних. Послідовність стирання EEPROM пам'яті даних дивіться у специфікації програмування мікроконтролера. Після запису даних EEPROM пам'ять біт захисту EEPROM пам'яті даних може бути запрограмований в потрібний стан.
27.4 Розміщення ID ID
WWW.MICROCHIP.RU – постачання та техпідтримка українською мовою

ТОВ "Мікро-Чіп" - постачання комплектуючих Microchip тел.: (095) 737-7545
27.5 Відповіді на питання, що часто ставляться
Запитання 1: Я використовую JW мікроконтролер для налагодження програми, але мікроконтролер більше не програмується (читання дає все '0'). Чи може несправний мікроконтролер?
Найшвидше Ви включили захист пам'яті програм. Якщо це так, то JW мікроконтролер більше не придатний для використання (див. Розділ 27.3).
Запитання 2: При переході з PIC16C74 на PIC16C74A моя програма більше не працює.
1. При повторній компіляціївихідного файлу Ви вказали мікроконтролер PIC16C74A? Рекомендується використовувати директиву CONFIG із стандартними символами.
2. У програматорі Ви вказали мікроконтролер PIC16C74A? Усі біти конфігурації правильно налаштовані?
Запитання 3: При стиранні пам'яті - пам'ять програм стерта, а слово конфігурації ще немає.
Це відповідає технічним характеристикам. Пам'ятайте, що не рекомендується включати захист пам'яті на мікроконтролерах з УФ стиранням пам'яті.