Микропроцессоры и микроконтроллеры

 
 
 
«Как видно, совершенство достигается не тогда, когда уже нечего прибавить, но когда уже ничего нельзя отнять.»
Antoine de Saint-Exupery
Русский | Українська


Микропроцессоры и микроконтроллеры :: Принципи програмування MSC-51 :: Структура та функціональні можливості МК51

Структура та функціональні можливості МК51

Предметом розгляду в даному матеріалі є базовий Однокристальний мікроконтроллер К1816ВЕ51 (далі - МК51). До складу серії К1816/1830 входять декілька ВІС, які істотно відрізняються за своїм ресурсів та характеристик, однак мають загальний перелік функціонально-логічних блоків.

rn

Всі ВІС серії К1816/1830 визначаються літерним індексом ВЕ і номерами 31, 35, 48, 49, 51, 751.

rn

До складу всіх БІС входять:

rn

процесор розрядність 8 біт; генератор тактовим імпульсів (ГТВ); схеми керування і синхронізації; ПЗУ - так звана резидентні пам'ять програм (РПП); ОЗУ - резидентні пам'ять даних (РПД); таймери-лічильники; схеми вводу-виводу (паралельний і послідовний інтерфейси); блок обробки переривань.

rn

Будь-яка з ВІС вимагає живлення напругою +5 В 10% від джерела потужністю P = 1,5 Вт, може використовуватися в діапазоні температур від 0 до 70 ° С.

rn

МК51 характеризується тактовою частотою 12 МГц, має об'єм ОЗУ 128 байт, обсяг ППЗУ 4 Кбайт (в моделі КМ1816ВЕ751 - РППЗУ) і є найбільш просунутим у даній серії МК. БІС ВЕ48 і ВЕ51 (ВЕ751) можна використовувати під час дослідно-конструкторських робіт, у системах налагодження програмного забезпечення, в одиничних і дрібносерійним виробництві, оскільки вони мають ПЗУ з можливістю перепрограмування. БІС ВЕ49 містить масочное ПЗУ і використовується у великих партіях виробів. МК без ПЗУ (модель 31) призначені для застосування в налагоджуємо системах, які мають зовнішнє ПЗУ та засоби завантаження програм з магнітних носіїв інформації (будуть використані в лабораторних роботах).

rn

Додаткові характеристики МК51:

rn

- 16-розрядний лічильник команд РС (адресація до 64К пам'яті);

rn

- 16-розрядний регістр-покажчик даних DPTR;

rn

- 32 двонаправлений лінії вводу-виводу, об'єднані в чотири порту вводу-виводу;

rn

- два 16-розрядних таймера-лічильника;

rn

- синхронно-асинхронний приймач-передавач послідовної зв'язку з програмно регульованою швидкістю передачі;

rn

- система обслуговування переривань від п'яти джерел з дворівневої апаратно-програмної шкалою пріоритетів;

rn

- внутрішній ГТВ.

rn

- рівень вхідних та вихідних сигналів збігається з ТТЛ-рівнями.

rn

Система команд складається з 111 базових команд. Допустимі пряма, непряма, Реєстрова і бітів форми адресації. У системі команд МК51 44% - однобайтових команди, 41% - двухбайтовие, решта - трехбайтовие. Половина команд виконується за один машинний цикл (МЦ), який за тривалістю дорівнює 1 мкс при тактовою частотою 12 МГц.

rn

Система команд МК51 орієнтована, насамперед, на реалізацію алгоритмів аналізу бітової інформації та управління технологічним обладнанням, хоча це не заважає використовувати МК у складі ієрархічних комп'ютерних систем управління складними об'єктами.

rn

Існує можливість значно підвищити обчислювальні ресурси МК-системи завдяки підключенню до контролеру зовнішніх БІС ПЗУ і ОЗУ загальним обсягом до 128К. Так реалізується зовнішня пам'ять програм (ВПП) і зовнішня пам'ять даних (ВПД).

rn

До МК також можна підключити практично необмежену кількість зовнішніх периферійних ВІС для забезпечення зв'язку з широкою номенклатурою джерел інформації і об'єктів управління.

rn

Електричний інтерфейс МК51

rn

Умовне позначення корпусу МК51 (DIP-40) представлено на мал. 2.1. в посібнику "Одне кристальною мікроконтролер МК51: структура, програмування, використання". Висновки мікросхеми можуть бути об'єднані в такі групи:

rn

- чотири порту вводу-виводу P0 ... P3 по вісім ліній в кожному;

rn

- чотири виводу для сигналів, які керують роботою МК-системи;

rn

- два виводу для підключення кварцового резонатора;

rn

- два виводу для підключення джерела живлення (5 В, "загальний ").

rn

Призначення висновків наведено в табл. 11.1.

rn

Таблиця 11.1

rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn rn
rn

Позначення

rn
rn

Тип

rn
rn

Функція виведення або групи висновків

rn
rn

P0.0 ... P0.7

rn

P1.0 ... P1.7

rn

P2.0 ... P2.7

rn

Р3.0 ... Р3.7

rn

Р3.0

rn

Р3.1

rn

Р3.2

rn

Р3.3

rn

Р3.4

rn

Р3.5

rn

Р3.6

rn

Р3.7

rn
rn

вхід - вихід

rn

вхід - вихід

rn

вхід - вихід

rn

вхід-

rn

вихід

rn

вхід

rn

вихід

rn

вхід

rn

вхід

rn

вхід

rn

вхід

rn

вихід

rn

вихід

rn
rn

портів вводу-виводу

rn

Порт 0 (P0) - восьміразрядний двонаправлений порт вводу-виводу. Здійснює передачу коду адреси (молодший байт) або коду даних в мультиплексного режимі під час звернення до зовнішньої пам'яті, а також введення-виведення при програмуванні і під час перевірки РПП МК

rn

Порт 1 (P1) - восьміразрядний квазідвунаправленний порт вводу-виводу для обміну інформацією з зовнішніми пристроями. Також використовується для введення молодших розрядів коду адреси під час програмування та перевірки РПП МК

rn

Порт 2 (P2) - восьміразрядний квазідвунаправленний порт вводу-виводу. Використовується для передачі старших розрядів коду адреси під час звернення до зовнішньої пам'яті, а також для введення старших розрядів коду адреси та сигналів управління під час програмування та перевірки РПП МК

rn

Порт 3 (P3) - восьміразрядний квазідвунаправленний порт вводу-виводу. Може бути застосований до вводу-висновку даних, звичайно використовується для реалізації периферійних функцій, а саме:

rn

RxD - вхід приймача послідовного порту в асинхронним режимі або вхід-вихід даних в синхронний режимі;

rn

TxD - вихід передавача послідовного порту в асинхронним режимі або видача сінхроімпульсов в синхронний режимі;

rn

INT0 - вхід запиту від зовнішнього джерела переривання з умовним номером 0;

rn

Активний рівень сигналу - лог. "0";

rn

INT1 - вхід запиту від зовнішнього джерела переривання з умовним номером 1;

rn

Активний рівень сигналу - лог. "0";

rn

T0 - вхід таймера-лічильника з номером 0;

rn

T1 - вхід таймера-лічильника з номером 1;

rn

WR - "Запис" - строб запису байтів в зовнішню пам'ять даних (ВПД). Активний рівень сигналу - лог. "0";

rn

RD - "Читання" - строб прийому байтів із зовнішньої пам'яті даних (ВПД). Активний рівень сигналу - лог. "0;

rn
rn

ALE /

rn

rn

/VPP

rn

RST /VRD

rn

XTAL1

rn

XTAL2

rn

Ucc

rn

Vss

rn
rn

вихід

rn

(вхід)

rn

вихід

rn

вхід

rn

вхід

rn

вхід

rn

вихід

rn

-

rn

-

rn
rn

СИГНАЛИ УПРАВЛІННЯ МК

rn

Строб адреси зовнішньої пам'яті. Використовується для керування режимом мультиплексування (розділення часу) адреси та даних, які передаються через порт P0 при зверненні до ВПП або ВПД. Якщо ALE = 1, на висновках порту P0 знаходиться адресу. Під час програмування МК на цей висновок подається імпульс напругою 0 В

rn

Дозвіл зовнішньої пам'яті програм. Виконує роль строба прийому байтів команди в МК під час вибірки команд з ВПП. Активний рівень сигналу - лог. "0"

rn

Сигнал відключення резидентних пам'яті програм (РПП). Якщо подано EA = 1, будуть виконуватися команди, які були розміщені в РПП, якщо (PC) = 0000 ... 0FFFH. Якщо подано EA = 0, будуть виконуватися команди, розміщені тільки в ВПП (РПП повністю недоступний). Під час програмування МК на цей висновок подається імпульс напругою 21 В

rn

Сигнал скидання МК (тобто переведення в початковий стан). Рівень сигналу 3,5 В повинен утримуватися не менше ніж 2 мкс. Також використовується для підключення аварійного джерела живлення.

rn

СИГНАЛИ Синхронізація МК

rn

Вхід підсилювача-генератора сінхросігналов. Підключається до зовнішнього джерела синхронізації (кварцового резонатора, включеного за схемою з "середньої точкою") (ріс.10.2).

rn

Вихід підсилювача-генератора сінхросігналов. Підключення аналогічно підключенню XTAL1

rn

Підключення до джерела живлення напругою Uсс = +5 В 10%

rn

"Загальний" висновок

rn
rn

Фізичне адресний простір

rn

Складається з чотирьох фізично різних областей:

rn

- внутрішнє ПЗУ (РППЗУ) для програм і констант обсягом 4К; (позначення по тексту - РПП - "резидентні пам'ять програм ");

rn

- внутрішня пам'ять даних - 128 байтів ОЗУ і 20 регістрів спеціальних функцій (РСФ); позначення по тексту - "РПД" ( "резидентні пам'ять даних ");

rn

- зовнішнє ПЗУ для розміщення великих програм і масивів констант - реалізується на БІС ПЗУ, зовнішніх щодо МК, може мати обсяг до 64К; позначення по тексту - "ВПП" ( "зовнішня пам'ять програм ");

rn

- зовнішнє ОЗУ для розміщення масивів даних - реалізується на БІС ОЗУ, зовнішніх щодо МК, може мати обсяг 64К; позначення по тексту - "ВПД" ( "зовнішня пам'ять даних ").

rn

Сигнал PSEN використовують для визначення області зовнішньої пам'яті (ВП), до якої МК звертається в даний момент: PSEN = 0 (активний рівень) під час читання чергового байтів команди з ВПП.

rn

За допомогою сигналу EA виконується вибір джерела кодів команд, то є перемикання між РПП і ВПП.

rn

Сигнал ALE (активний рівень "1") визначає моменти часу, в які на лініях порту Р0 присутній молодший байт адреси комірки ВП.

rn

Окремий доступ до РПД і ВПД забезпечується різною формою адресації даних в командах МК51. Наведена схема (мал. 2.2 в посібнику) ілюструє способи розподілу доступу до різних фізичним областях пам'яті.

rn

Внутрішня структура МК51

rn

Основні функціональні вузли та інформаційні зв'язки на кристалі МК51 показано на мал. 11.1.

rn

Основним каналом передачі інформації всередині кристала є двонаправлений восьмібітовая магістраль, яка зв'язує практично всі вузли МК51: АЛУ, резидентні пам'ять, блок регістрів спеціальних функцій, пристрій керування і порти вводу-виводу. Виняток становлять лінії передачі адреси зовнішньої пам'яті безпосередньо від РС і DPTR на порти Р0 і Р2 і сигнали управління.

rn

Всі операції, у тому числі обчислення адреси пам'яті, виконуються в АЛУ, яке є восьмібітовим пристроєм паралельного типу і виконує такі групи операцій: арифметичні (+, -, *,:), логічні (AND, OR, NOT, XOR) , зсув, скидання, встановлення. Програмно-недоступні регістри використовуються для тимчасового збереження операндів.

rn

Найважливіша особливість АЛУ - можливість оперування з окремими програмно-доступними битами в ОЗУ і блоці РСФ. Це дії скидання і встановлення біту, інверсії і логічних операцій.

rn

АЛУ оперує з чотирма типами інформації:

rn

- булевих - 1 біт; - цифровим - 4 біта - байт - 8 біт; - адресним - 16 біт.

rn
Оскільки мікроконтроллер МК51 є функціонально завершеним і самодостатнім обчислювальним пристроєм, для реалізації мінімальної працездатною схеми потрібно подача напруги живлення +5 В на висновки (40,20) і підключення зовнішньої времязадающей ланцюга на основі кварцового резонатора, включеного за схемою з середньою точкою (см . рис 11.4-а).
rn

Схема забезпечення, крім подачі напруги живлення, автоматичне формування сигналу скидання RST при включенні харчування

rn

Схема на мал. 11.4-б забезпечує, крім подачі напруги живлення, автоматичне формування сигналу скидання RST при включенні харчування.




Следующая статья >>
«Логічна організація пам'яті в МК51»