- •Міністерство транспорту та зв’язку україни львівський коледж державного університету інформаційно-комунікаційних технологій
- •Інструкція
- •До практичної роботи № 8
- •Спряження мікропроцесора з пристроями,
- •Які мають паралельний інтерфейс
- •2.Література:
- •3.Завдання:
- •4.Методичні вказівки.
- •5.Контрольні питання:
- •6.2. Завдання.
4.Методичні вказівки.
Для забезпечення обміну даними між мікропроцесором (МП) і периферійними пристроями необхідні відповідні засоби: відповідні команди в системі команд МП, керуючі сигнали і сигнали, які відображають дані, і відповідні засоби під’єднання. Всі ці засоби складають інтерфейс вводу-виводу.
В системі команд МП 8080/8086 передбачені дві команди роботи з пристроями вводу-виводу: IN – ввід та OUT – вивід. Це команди, в операндахі яких вказується адреса пристрою вводу або виводу.
Порти в ІBM PC використовуються для доступу до мікросхем. Звернутися до них можна в будь-який момент із програми на асемблері. Наприклад, можна використовуючи порт, звернеться до мікросхеми переривань або таймеру. Робота з портами - це робота на дуже низькому рівні й завжди є небезпека, що може щось змінитися. Але зате це дає дуже більші можливості для програміста. Для роботи з портами є спеціальні команди ІN й OUT:
іn регістр,ном_порту уведення значення з порту вводу-виводу
out ном_порту,регістр висновок значення в порт вводу-виводу
OUT |
im.byte, AL/im.byte, AX DX, AL/DX, AX |
Виводить дані з регістра AL або AX у порт. Перший операнд - номер порту. Якщо потрібен доступ до порту, номер якого перевищує 255, то повинен бути використаний регістр DX. |
IN |
AL, im.byte/AL, DX AX, im.byte/AX, DX |
Поміщає дані з порту в AL або AX. Другий операнд - це номер порту. Якщо потрібен доступ до порту з номером більше 255, то потрібно використати регістр DX. |
Приклад використання команд IN\OUT:
mov al, 215 ; Write byte value "215"
out 115, al ; into the port 115:
mov ax, 1234 ; Write word value "1234"
out 117, ax ; into the port 117:
mov ax, 0 ; Reset:
in al, 110 ; port 110 into AL: ; Read byte from
in ax, 112 ; Read word from ; port 112 into AX:
Під’єднання пристроїв вводу-виводу здійснюється через порти вводу-виводу. В ролі портів можуть бути використані регістри або спеціальні мікросхеми. Однією з таких мікросхем є мікросхема паралельного програмованого інтерфейсу (ППІ) КР580ВВ55 (рис.1).
Рис.1. Умовне графічне позначення мікросхеми КР580ВВ55.
Призначення виводів мікросхеми наступне:
BA0 – BA7 – входи/виходи порту А;
BC0 – BC7 – входи/виходи порту С;
BB0 – BB7 – входи/виходи порту В;
D0 – D7 – входи/виходи даних;
– читання; L-рівень дозволяє зчитування інформації з регістра, адресованого по входах А0, А1 на шину D (7 – 0);
– запис; L-рівень сигналу дозволяє запис інформації з шини D (7 – 0) в регістр ППІ, адресований по входах А0, А1;
– вибір мікросхеми; L- рівень сигналу під'єднує ППІ до системної шини;
SR – скидання; H- рівень сигналу обнуляє RWC і встановлює всі канали в на ввід в режимі 0;
А1, А0 – входи для адресації внутрішніх регістрів ППІ.
На вхід подається сигнал , а на вхід - сигнал з шини управління МПС.
Структура мікросхеми КР580ВВ55 приведена на рис.2.
Рис.2. Структурна схема ВІС КР580ВВ55.
До складу ВІС ППІ (рис.2) входять:
двонаправлений 8-розрядний буфер даних Buffer of Data (BD), що з’єднує лінії даних ВІС із системною шиною даних;
блок керування читання / записом Read / Write Control Unit (RWCU), що забезпечує керування зовнішнім і внутрішнім передаванням даних і керуючих слів;
три 8-розрядні порти введення-виведення (Port A, Port B, Port C) для обміну інформацією, причому порт С поділений на два 4-розрядні порти: С’(PC7 – PC4) і С’’ (PC3 – PC04). Порти А і С’ об’єднані у групу А, порти В і С’’ об’єднані у групу В;
блоки керування групою А Control Unit A (CUA) та групою В Control Unit В (CUВ), що формують сигнали керування для відповідних груп;
Блок RWCU містить регістр керуючого слова (RCW –Register Control Word), який зберігає керуючі слова, що надходять від МП.
Мікросхема ППІ КР580ВМ80 має три режими роботи: режим 0 – основний режим введення-виведення через будь-який з портів; режим 1 – режим введення-виведення за стробом готовності через порти А і В, порт С використовується для передачі керуючих сигналів; режим 2 – режим двонаправленої передачі через порт A (порт В може працювати в режимі 0 або 1), порт С використовується для передачі керуючих сигналів.
У режимі 0 будь-який з портів може встановлюватися на ввід або вивід інформації. Порт С може бути розбитий на дві чотирьохрозрядні частини, і кожна з них може встановлюватися на ввід або вивід окремо. При цьому, якщо відбувається ввід інформації, то регістр порту (в порті А – вхідний регістр) неперервно слідкує за всіми змінами інформації на вході порту; якщо відбувається вивід інформації, то вміст регістру порту (в порті А – вихідного регістру) неперервно передається на вихід порту. Сигнали управління в цьому режимі не формуються.
В режимі 1 передача даних відбувається через порти А і В. Порт С використовується для прийому і видачі керуючих сигналів. Якщо, наприклад, порт А настроєний на ввід інформації в режимі 1, то одночасно з подачею на вхід порту А даних периферійний пристрій подає у відповідний розряд порту С сигнал Строб прийому порту А , сигналізуючи про видачу інформації. ППІ видачею сигналу Підтвердження сигналізує про те, що в регістр порту прийняті дані з периферійного пристрою.
В режимах 0 і 1 напрям передачі між портами ППІ і під’єднаними до них периферійними пристроями задається керуючим словом. Таким чином у вказаних режимах будь-яка зміна напряму передачі між ППІ і периферійними пристроями вимагає занесення нового керуючого слова в ППІ.
Особливість режиму 2 полягає в тому, що сигналами на вході і вході , які поступають в ППІ, не лише встановлюється напрям передачі між МП і ППІ, але ці сигнали задають також напрям передачі між ППІ і під’єднаними до нього периферійними пристроями. Таким чином, забезпечується можливість швидкої зміни напряму передачі інформації в цілому між МП і периферійними пристроями без необхідності пересилання в ППІ нового керуючого слова при кожній зміні напряму передачі. Це дає можливість у вказаному режимі під’єднувати через ППІ до МП пристрої, які можуть служити як пристроями вводу, так і виводу. У режимі 2 може працювати лише порт А.
Один з трьох режимів роботи ППІ задається керуючим словом режиму, яке може задавати різні режими для кожного з портів а також напрям передачі через кожен порт. Керуюче слово – це кодова комбінація, яка вводиться з МП у регістр керуючого слова ППІ (RCW). Формат керуючого слова режиму показаний на рис. 3.
D7 |
D6 |
D5 |
D4 |
D3 |
D2 |
D1 |
D0 |
1 |
M1 |
M2 |
IOA |
IOC’ |
M |
IOB |
IOC” |
Рис. 3. Формат керуючого слова режиму.
Окремі біти керуючого слова мають наступне призначення:
біти М1, М2 задають режим групи А: 00 – режим 0, 01 – режим 1, 1х – режим 2;
біт ІОА задає режим введення або виведення порту А (1 – введення інформації, 0 – виведення);
біт ІОC’ задає режим введення або виведення порту C’ (1 – введення інформації, 0 – виведення);
біт М задає режим роботи групи В (0 – режим 0, 1 – режим 1);
біт ІОВ задає режим введення або виведення порту B (1 – введення інформації, 0 – виведення);
біт IOC” задає режим введення або виведення порту C” (1 – введення інформації, 0 – виведення).
Сигналом RESET всі порти ППІ настроюються на виведення в режимі 0.
На рис. 4 приведене керуюче слово, яке встановлює режим 0 для всіх портів, причому порт А програмується на введення інформації, а порти В і С – на виведення.
D7 |
D6 |
D5 |
D4 |
D3 |
D2 |
D1 |
D0 |
1 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
Рис. 4. Формат керуючого слова заданого режиму.
С игнал керування третім станом шини даних CS, сигнал читання RD, сигнал запису WR та сигнал скидання RESET подаються на блок RWCU і разом із адресними сигналами А1, А0 задають вид операції, що виконується (табл.2).
Комбінації сигналів на входах ВІС ППІ, які забезпечують різні операції вводу-виводу приведені в табл.2
Таблиця 2
Операція |
CS |
R D |
W R |
А1 |
А0 |
Запис керуючого слова із МП в RWCU Запис даних у порт А Запис даних у порт В Запис даних у порт С Зчитування даних із порту А Зчитування даних із порту В Зчитування даних із порту С Від’єднання ВІС від шини даних |
0
0 0 0 0 0 0 1 |
1
1 1 1 0 0 0 х |
0
0 0 0 1 1 1 х |
1
0 0 1 0 0 1 х |
1
0 1 0 0 1 0 х |
Примітка: х – будь-яке значення (0 або 1).
Комбінації керуючих сигналів (табл.3) і відповідних адресних сигналів поступають на входи ППІ під час виконання команд вводу-виводу через канали ППІ і забезпечують виконання відповідної операції.