- •Конспект лекцій з дисципліни “Мікропроцесорні пристрої”
- •1 Основи теорії мікропроцесорних пристроїв
- •Класифікація мікропроцесорів. Варіанти архітектури
- •Базова структура мікропроцесорної системи
- •Основні характеристики мп
- •Типова структура мікропроцесора
- •Система команд мп і режими адресації
- •Організація передачі інформації в мпс. Інтерфейс
- •1.6.1 Способи передачі інформації
- •Методи обміну інформацією в мікропроцесорній системі
- •2 Мікроконтролери
- •Структура мк
- •Процесорне ядро мк
- •Резидентна пам'ять мк
- •Порти уведення/виводу
- •Таймери і процесори подій
- •Аналогово-цифрові й цифро-аналогові перетворювачі
- •Мінімізація споживання енергії в мп-системах
- •Моніторинг напруги живлення мк
- •Апаратні і програмні рішення по підвищенню надійності роботи мк
- •Контролери Intel mcs-51
- •3.1 Структурна організація Intel 8051
- •3.1.1 Арифметично-логічний пристрій
- •Зовнішня пам'ять
- •Пристрій керування і синхронізації
- •Програмна модель омк
- •Система команд Intel 8051
- •Арифметичні операції:
- •Логічні команди:
- •Бітові команди:
- •Периферійні присторої омк
- •Порти введення/виводу
- •Звертання до портів можливе тільки за прямою адресою.
- •Лічильники/таймери
- •Послідовний порт
- •Примітка
- •Мікроконтролер pic16f877
- •Характеристика мікроконтролера
- •Cтруктурна схема мікроконтролера pic16f877
- •Організація пам'яті
- •Пам’ять програм
- •Організація пам'яті даних
- •Регістр стану status
- •Лічильник команд
- •Порти введення/виводу
- •Регістри portа і trisa
- •Регістри portb і trisb
- •Регістри portc і trisc
- •Регістри portd і trisd
- •Регістри porte і trise
- •Таймери
- •Модуль таймера tmr0
- •Модуль таймера tmr1
- •Модуль таймера tmr2
- •Модуль 10-розрядного ацп
- •Adcon0 (адреса 1Fh)
- •Adcon1 (адреса 9Fh)
- •Переривання
- •Сторожовий таймер wdt
- •Біти конфігурації
- •Слово конфігурації (адреса 2007h)
- •Система команд
- •Література
Апаратні і програмні рішення по підвищенню надійності роботи мк
На відміну від персональних комп'ютерів, які при збігу певних обставин можуть виконати позаштатні операції й «зависнути», вбудовані МП-системи керування позбавлені цього недоліку. Прикладна програма керування, записана в пам’ять МК, повинна забезпечувати формування адекватних вихідних впливів при будь-яких комбінаціях вхідних сигналів. Однак у результаті електромагнітних перешкод передбачений
розроблювачем хід виконання прикладної програми може бути порушений. Саме в цьому випадку неможливо гарантувати правильну роботу МП- системи. Усі сучасні МК передбачають можливість відновлення правильного ходу обчислювального процесу при подібного роду відмовах. Для цього використається модуль сторожового таймера (СОР або Watchdog). Основним елементом модуля сторожового таймера є багаторозрядний лічильник. При скиданні МК лічильник обнуляется. Після переходу МК в активний режим роботи лічильник починає збільшувати код незалежно від виконуваної програми. Якщо код лічильника досягає максимального зазначеного в технічному описі МК значення, то генерується сигнал внутрішнього скидання й МК починає виконання програми керування спочатку. Для виключення події скидання з переповнення сторожового таймера прикладна програма керування повинна періодично скидати лічильник. Операція скидання лічильника сторожового таймера звичайно виконується за допомогою запису зазначеного коду в один з регістрів спеціальних функцій. Тоді при нормальному, передбаченому розроблювачем порядку виконання прикладної програми переповнення лічильника сторожового таймера не настає й він не впливає на роботу МП-системи. Однак якщо хід виконання прикладної програми був порушений, то велика ймовірність, що лічильник не буде скинутий вчасно. Тоді відбудеться скидання з переповнення сторожового таймера, й нормальний хід обчислювального процесу буде відновлений.
Модулі сторожових таймерів різних МК мають наступні особливості роботи:
У деяких МК вектори зовнішнього скидання й скидання з переповнення сторожового таймера об'єднані. Це не дозволяє розрізняти причину скидання на програмному рівні й утрудняє написання прикладних програм. Більше досконалі МК мають або різні вектори скидання, або відзначають подію скидання з переповнення сторожового таймера установкою спеціального біта.
Частина МК автоматично припиняє роботу сторожового таймера при переході МК в один з режимів зниженого енергоспоживання, коли прикладна програма не виконується. Однак у деяких МК сторожовий таймер не припиняє роботу в режимі очікування. Тоді необхідно передбачати періодичний вихід МК із режиму очікування для скидання лічильника сторожового таймера. Це, з одного боку, не дуже зручно, тому що вимагає додаткової уваги програміста. Однак, з іншого боку, надає додаткову можливість відновлення працездатності МП-системи, якщо сигнал виходу МК із режиму очікування порушений.
Крім апаратно-програмних засобів сторожового таймера деякі МК оснащені апаратними засобами генерації сигналу внутрішнього скидання у випадку, якщо через електромагнітні перешкоди в лічильнику адpecи була
сформована адреса фізично не існуючої комірки пам'яті або з пам'яті прочитаний код неіснуючої операції.
