Page 303 - 4503
P. 303
6. Встановити біт WR (1–ий біт регістра EECON1) для
початку режиму записування.
Операція записування, це як правило не часто вживана
операція, а для того, щоб випадково не порушити дані
EEPROM, вона зроблена настільки заплутаною. Насправді
жодного регістра з іменем EECON2 немає, однак послідовний
запис адрес h’55’, h’АА’ це свого роду ключ, він є
необхідний для розблокування EEPROM. Переривання здатні
порушити цю послідовність тому їх слід заборонити коли
відбувається прорамний запис у EEPROM. Тривалість операції
складає близько 50 мс, а по її завершенню встановлюється біт
4 реґістра EECON1 (ознака EEIF) корий може застосовуватися
для переривання процесора. Біт 3 реґістра EECON1 — це
ознака WRERR, котра встановлюється, якщо цикл записування
був перерваний, наприклад через зовнішнє скидання.
9.7 Переривання від кількох джерел одночасно
У прикладі 9.1, передбачається, що є дозвіл тільки на
один вид переривання — зовнішнє. У більшості ж випадків
можуть бути дозволені переривання від багатьох джерел. А
оскільки у мікроконтролерах РІС є тільки один вектор
переривання (h’004’), то однією з першочергових задач буде
виявлення, котрий із периферійних пристроїв викликав
переривання. Всі ознаки переривання є доступні для
зчитування, а отже їм можна почергово перевіряти до тих пір
поки не виявиться ознака, котра є встановленою. У
найскладнішому випадку, коли виявляються, що активними є
всі 4 джерела переривання мікроконтролера PIC16F84 і
враховуючи, що регістр EECON1 перебуває в банку 1, код
перевірки ознак виглядатиме так (приклад 9.1):
303