- •Конспект лекцій з дисципліни “Мікропроцесорні пристрої”
- •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)
- •Система команд
- •Література
Регістри portc і trisc
PORTC – 8-розрядний двонаправлений порт уведення/виводу. Біти регістра TRISC визначають напрям каналів порту. Установка біта в «1» регістра TRISC переводить вихідний буфер у 3-й стан. Запис «0» в регістр TRISC настроює відповідний канал як вихід, уміст защіпки PORTC передається на виведення мікроконтролера (якщо вихідна защіпка підключена до виведення мікроконтролера).
Виводи PORTC мультипліковані з декількома периферійними модулями. На каналах PORTC присутній вхідний буфер з трігером Шмідта. Коли модуль MSSP включений в режимі I2C, виводи PORTC<4:3> можуть підтримувати рівні вихідних сигналів за специфікацією I2C або
SMBus залежно від стану біта CKE(SSPSTAT<6>).
При використанні периферійних модулів необхідно відповідним чином настроювати біти регістра TRISC для кожного виведення PORTC. Деякі периферійні модулі відміняють дію бітів TRISC, примусово настроюючи вивід на вхід або вихід. У зв'язку з чим не рекомендується використовувати команди «читання – модифікація – запис» з регістром TRISC. Структурна схема виводів порта PORTС показана на рисунку 4.8.
а б
а – виводи RС7-RС5, RС2-RС0; б – виводи RС4-RС3
Рисунок 4.8 – Структурна схема виводів порта PORTC Примітки:
Виводи портів мають захисні діоди, підключені до VDD і Vss.
Сигнал режиму каналу – вивід – використовується периферійним модулем або цифровим портом введення/виводу.
Сигнал дозволу (ОЕ) від периферійного модуля, настроює канал як вихід.
Регістри portd і trisd
PORTD – 8-розрядний двонаправлений порт введення/виводу.
Біти регістра TRISD визначають напрям каналів порту.
PORTD може працювати як 8-розрядний мікропроцесорний порт (ведений паралельний порт), якщо біт PSPMODE (TRISE<4>) встановлений в «1». У режимі веденого паралельного порту до входів підключені буфери TTL. Структурна схема виводів порта PORTD показана на рисунку 4.9.
Рисунок 4.9 – Структурна схема виводів порта PORTD
Регістри porte і trise
PORTE має три виводи (REO/-RD/AN5, RE1/-WR/AN6, RE2/- CS/AN7), що індивідуально настроюються на вхід або вихід. Виводи PORTE мають вхідний буфер Шмідта.
Канали PORTE стануть керуючими виводами веденого паралельного порту, коли біт PSPMODE(TRISE<4>) встановлений в «1». У цьому режимі біти TRISE<2:0> повинні бути встановлені в «1». У регістрі ADCON1 необхідно також настроїти виводи PORTE як цифрові канали введення/виводу. У режимі веденого паралельного порту до виводів PORTE підключені вхідні буфери TTL.
Виводи PORTE мультипліковані з аналоговими входами. Коли канали PORTE настроєні як аналогові входи, біти регістра TRISE керують напрямом даних PORTE (читання даватиме результат «0»). Структурна схема виводів порта PORTЕ аналогічна схемі порта PORTD.
Таймери
Контролер PIC16F877 має три багатофункціональні таймери. Кожен модуль таймера/лічільника може працювати окремо або входити складовою частиною до складу модулів спеціального призначення.
