Допомога у написанні освітніх робіт...
Допоможемо швидко та з гарантією якості!

Интерфейсы і периферійні устройства

РефератДопомога в написанніДізнатися вартістьмоєї роботи

Розглянемо послідовність бітов, зображених малюнку 4.1. починаючи з старшого. Перед першим битому даних стоїть біт синхронізації, у сигналі записи житиме лише біт даних. Перед другим битому даних немає біта синхронізації, але попередній біт даних був дорівнює одиниці, тому біт синхронізації також пишеться, біт даних дорівнює нулю, в такий спосіб, сигнал записи дорівнює нулю. У вихідному стані… Читати ще >

Интерфейсы і периферійні устройства (реферат, курсова, диплом, контрольна)

Завдання 1. По обраної елементної базі і адресами 8-разрядных регістрів введення та виведення і 2-разрядного регістру виводу-введення-висновку уявити принципову схему підключення портів до системної шині ISA.

Магістраль ISA розробили спеціально для персональних компьют6еров типу IBM PC AT і є фактично стандартом всім виготовлювачів цих компьютеров.

Магістраль ISA належить до демультиплексированным (тобто у яких роздільні шини адреси — й даних) 16-разрядными системними магістралями середнього швидкодії. Обмін здійснюється 8- чи 16-разрядными даними. Максимальний обсяг адресуемой пам’яті становить 16Мбайт (24 адресні лінії). Максимальної адресне простір для пристроїв вводу-виводу — 64Кбайта (16 адресних ліній), хоча практично всі випущені плати розширення використовують тільки 10 адресних ліній (1Кбайт). Магістраль підтримує регенерацію динамічної пам’яті, радіальні переривання і прямий доступом до памяти.

Структурна схема підключення пристроїв показано малюнку 1.1. (стр.2).

Основними сигналами управління у схемою є: IOR, IOW, AEN, IRQ N.

IOR — строб читання даних із пристроїв ввода-вывода.

IOW — строб записи даних в устрою ввода-вывода.

AEN (дозвіл адреси) — використовують у ПДП для повідомлення всім платам розширення, вироблене цикл ПДП.

IRQ N — сигнали запиту радіальних прерываний.

У магістралі ISA кожному за подключаемого устрою заброньовано конкретні адреси, наше пристрій перестав бути стандартним, для його адресації використовуємо резервні адреси: 360h — регістр введення, 361h — регістр виведення, 362h — регістр ввода-вывода.

Для адресації конкретного устрою використовуємо дешифратор адреси (ДшА). До нього підбито старші біти адреси (SA2-SA9). І управляючий сигнал AEN. Молодші біти адреси (SA0-SA1) включені у дешифратор управляючих сигналів (ДшУС). Для дешифрации управляючих сигналів використовуються сигнали IOR і IOW.

На виході ДшУС утворюються сигнали читання регістру введення (ЧтРВв), запис в регістр виведення (ЗпРВыв), читання регістру виводу-введення-висновку (ЧтРВ/В) і запис в регістр виводу-введення-висновку (ЗпРВ/В). У таблиці 1.1. показаний принцип освіти сигналів управления.

Таблица.

1.1. |Управляючі | | | | | |сигнали/ |ЧтРВв |ЗпРв |ЧтРВ/В |ЗпРВ/В | |Сигнали ISA | | | | | |SA0 |0 |1 |0 |0 | |SA1 |0 |0 |1 |1 | |IOR |0 |1 |0 |1 | |IOW |1 |0 |1 |0 |.

У приемопередатчик (ПП) надходять восьмиразрядные дані (SD0-SD7) і сигнал дозволу читання (IOR).

У регістри введення (РгВв) та виведення (РгВыв) восьмиразрядные, управляються сигналами ЧтРВв і ЗпРВыв відповідно. Регістр ввода/вывода (РВ/В) двухразрядный, управляється сигналами ЗпРВ/В і ЧтРВ/В.

З іншого боку, регістри введення і ввода/вывода управляються сигналом запис в регістр введення з периферійного устройства.

Принципова схема устрою показано малюнку 1.2.(стр.4).

Дешифратор адреси реалізований мікросхемами К1533ЛН1, К1533ЛА2 і К555ЛЛ1. У дешифраторе використовується проста логіка, тому описувати докладно принцип освіти сигналів немає смысла.

Дешифратор управляючих сигналів реалізований на мікросхемі К1533ИД3, що дає дешифратор — демультиплексор із чотирьох на 16.

Відповідно до таблиці істинності цієї мікросхеми і таблиці 1.1. були визначено висновки, із яким знімаємо управляючі сигналы.

Приемопередатчик реалізований на мікросхемі К1533АП6, що становить з себе двунаправленный восьмиразрядный шинний підсилювач із трьома станами выхода.

Регістри введення та виведення зібрані на мікросхемах К1533ИР22, а регістр ввода/вывода — на ІМС К1533ИР34.

Задание 2. Клавіатуру, що містить 16×6 клавіш, залучити до интерфейсу.

Multibus з допомогою відповідних портів, необхідні сканування клавіш контактного типу. Уявити докладну структурну схему із зазначенням всіх управляючих сигналов.

Схема підключення устрою показано малюнку 2.1 (стр.6). Пристрій працює за переривання, тобто. а то й натиснута жодна клавіша, то пристрій в роботу не включается.

Кілька вузлів структурної схеми вже було використано й описані в завданні 1. У разі використовується інтерфейс MULTIBUS, який має такі сигнали управління: IORC -читання порту; IOWCзапис до порту. Обмін ввозяться режимі квитирования з формуванням виконавцем відповідного сигналу XACK.

Управляючими сигналами для дешифратора адреси (ДшА) служать адреси А2- А9, формують сигнал SEL. Молодші біти адреси (A0-A1) включені у дешифратор управляючих сигналів (ДшУС). Для дешифрации управляючих сигналів використовуються сигнали IORС і IOWС.

На виході ДшУС утворюються сигнали ВклБуф, ВклР12, ЗпР1, ЗпР2, ВклАП5, які описані ниже.

На приемопередатчик (ПП) надходять вісім розрядів даних (Д0-Д7), управляється він сигналами SEL і IORC.

У структурної схемою ФСК — формирователь сигналу квитирования.

Регістри RG1 і RG2 — регістри сканирования.

У вихідному стані регістри сканування відключено від клавіатури сигналом ВклР12. До клавіатурі підключені буферні елементи (ІМС К555ЛП10), якими виходи К0-К15 клавіатури включені на грішну землю. Мікросхема КР1533АП5 відключена від шини даних ВД0-ВД5. Т.к. жодна клавіша не натиснута, то, на виході логічного елемента (ІМС К1533ЛА2) рівень логічного нуля.

Коли клавіатурі натиснута клавіша, то через діод вихід логічного елемента стає підключеним на грішну землю, не вдома елемента встановлюється високий рівень, тобто. формується сигнал запиту переривання INT N. Після цього запускається управляюча програма по вектору прерывания.

Від шини К0-К15 відключаються буферні елементи сигналом ВклБуф, і підключаються регістри сканування. Програмно реалізується режим «біжить нуля» на регістрах сканування і далі через КР1533АП5 дивимося стан шини КР0-КР5. Отже обчислюється код натиснутої клавиши.

Завдання 3. Розробити принципову схему адаптера принтера, содержащего.

8-разрядный регістр даних (записи) з адресою 378h, 5-разрядный регістр управління (записи) з адресою 37Ah і 5-разрядный порт стану (читання з ліній Д3-Д7), має адресу 379h. Підключити порти до системної шині розширення ISA.

Принципова схема показано на рис. 3.1.(стр.8).

Дешифратор адреси реалізований з такого самого принципу, що у завданні 1, але регістри мають адреси: 378hрегістр даних; 379h — регістр стану; 37Аhрегістр управления.

Дешифратор управляючих сигналів виконано як і, але з урахуванням таблиці 3.1.

Таблиця 3.1. |Управляючі | | | | |сигнали/ сигнали |ЗпРД |ЗпРУ |ЧтРС | |ISA | | | | |SA0 |0 |0 |1 | |SA1 |0 |1 |0 | |IOR |1 |1 |0 | |IOW |0 |0 |1 |.

Восьмиразрядный приемопередатчик виконано на мікросхемі К1533АП6.

Регістри даних, і управління виконані на мікросхемах К1533ИР22, в ролі регістру станів використовуються буферні елементи — ІМС К555ЛП10.

У вихідному стані не вдома дешифратора адреси постійно присутній рівень логічного одиниці, унаслідок чого ДшУС і ПП не беруть участь у работе.

Перед початком циклу передачі комп’ютер повинен переконатися, що зняті сигнали BUSY і ACK. І тому ми повинні вважати стан цих сигналів з регістру стану (РС). Це зробимо з допомогою команди IN, де зазначимо адресу РС -379h. ДшУС видасть сигнал читання РС (ЧтРС), і сигнали стану принтера по шині ВД0-ВД4 отобразятся на шині даних SD0-SD4 інтерфейсу ISA. Після цього виставляємо дані шляхом виконання команди OUT із зазначенням адреси регістру даних (378h). У результаті ДшУС сформує сигнал запис у регістр даних (ЗпРД). Потім формується строб. У команді OUT указуємо адресу регістру управління (РУ) 37Аh, після чого формується сигнал запис у регістр управління (ЗпРУ) ДшУСом.

Після цього строб знімається. З отриманням строба принтер формує сигнал BUSY, а по закінченні обробки даних виставляє сигнал ACK, знімає BUSY, знімає ACK, потім може початися вже новий цикл.

Задание 4. Показати тимчасову діаграму формування адресної мітки, що має біти синхронізації рівні C7hЮ, а біти даних — А1, метод кодування MFM.

Рис. 4.1. Запис адресної мітки методом MFM.

Якщо біт даних дорівнює одиниці, то стоїть проти нього біт синхронізації не записується. Якщо біт даних нульовий, але попередній біт даних дорівнює одиниці, то біт синхронізації теж записывается.

Розглянемо послідовність бітов, зображених малюнку 4.1. починаючи з старшого. Перед першим битому даних стоїть біт синхронізації, у сигналі записи житиме лише біт даних. Перед другим битому даних немає біта синхронізації, але попередній біт даних був дорівнює одиниці, тому біт синхронізації також пишеться, біт даних дорівнює нулю, в такий спосіб, сигнал записи дорівнює нулю.

Третій біт записується аналогічно першому, четвертий — аналогічно другому. П’ятий біт нульовий, попередній біт даних також нульовий, тому біт синхронізації і біт даних повинні записуватися в сигнал записи, але де вони рівні нулях, тобто. записується нуль.

Шостий біт нульовий, попередній біт даних теж нульовий, тобто. записуються і біт даних, і біт синхронізації. Биток синхронізації дорівнює одиниці, біт даних нульовий тобто. сигнал записи дорівнює одиниці. Сьомий біт записується аналогічно шостому, а восьмий — первому.

Задание 5. Розробити докладну структурну схему поєднання ПК з шиной.

ISA (приймач) і шиною Multibus (передавач) із зображенням всіх управляючих сигналів. Обмін інформацією ввозяться режимі прерывания.

Структурна схема показано малюнку 5.1. (стр.11).

У попередніх завданнях навчити розробили схеми підключення і до шині Isa і до шині Multibus, сигнали управління і принцип формування, тому описувати це знову немає сенсу. Скажемо тільки, що адреси А0-А9 інтерфейсу Multibus і SA0-SA9 інтерфейсу ISA для ДшА беремо в галузі резервних адрес (360…36F).

Для передачі з ПК з інтерфейсом Multibus використовуємо регістр виведення даних (РВывД). Другий ПК з інтерфейсом ISA включиться в роботу з прерываниюIRQ N в останній момент передачі за сигналом ЗпРВвД.

З допомогою керуючої програми вважає дані з регістру введення (РВвД) за сигналом читання з регістру введення даних (ЧтВвД), який у часи чергу скине сигнал IRQ N і підготує ПК з шиною ISA задля її подальшого прийому данных.

Задание 6. Вивчити принцип роботи що друкує устрою. Написати програму на ассемблері, яка здійснює висновок на печатку з допомогою портів адаптера і опитуванням прапора готовності принтера.

.model tiny ;модель пам’яті, ісп. для СОМ.

.code ;початок сегмента коду org 100h ;поч. знач. лічильника — 100Н ;Початок програми————————————————————————— - start: call clear ;яскраво-білі симв. на синьому; mov cx, len1; mov dh, 10; mov dl, 27; mov bp, offset mes1; call symv ;висновок на екран рядки симв.; call nklav ;идентиф. натиснутій клавіші call clsym ;стирання з буфера символу; call clear ;яскраво-білі симв. на синьому; mov cx, len2; mov dh, 10; mov dl, 23; mov bp, offset mes2; call symv ;висновок на екран рядки симв.; mov cx, len3; mov dh, 12; mov dl, 23; mov bp, offset mes3; call symv ;висновок на екран рядки симв.; nrv2: call nklav ;идентиф. натиснутій клавіші; cmp ah, 02h; je nrv3; cmp ah, 03h; je nrv10; call clsym; jmp nrv2; nrv10: jmp nrv6;; nrv3: call clear ;яскраво-білі симв. на синьому call clsym ;стирання з буфера символу; mov cx, len4; mov dh, 0; mov dl, 10; mov bp, offset mes4; call symv ;висновок на екран рядки симв.; mov ah, 06h ;функція завдання вікна mov al, 0 ;режим створення mov bh, 2Fh ;атрибут символів — з/яркоб mov ch, 1 ;верхня Y-координата mov cl, 0 ;ліва Х-координата mov dh, 24 ;нижня Y-координата mov dl, 79 ;права Х-координата int 10h ;переривання BIOS; mov ah, 02; mov bh, 0; mov dh, 1; mov dl, 0; int 10h; ;Запис символів в буфер (buf1) mov ah, 3Fh; mov bx, 0; mov cx, 100; mov dx, offset buf1; int 21h;; mov lensym, ax; inc lensym ;

call nrv11 ;Стан ACK, BUSY.

mov si, 0; dlsh: dec lensym; mov al, offset buf1[si]; mov dx, 378h; out dx, al ;Виставляння даних mov dx, 1000; call delay mov dx, 37Ah mov al, 1001b out dx, al ;Виставляємо строб mov dx, 1000 call delay mov dx, 37Ah mov al, 1000b out dx, al ;Знімаємо строб cmp lensym, 0 jz kon inc si call nrv11 jmp dlsh ;Передача в принтер символу кінця рядки kon: call nrv11 mov al, 10 mov dx, 1000 call delay mov dx, 378h out dx, al mov dx, 1000 call delay mov dx, 37Ah mov al, 1000b out dx, al mov dx, 1000 call delay mov dx, 37Ah mov al, 1001b out dx, al mov dx, 10 000 call delay mov al, 13 mov dx, 378h out dx, al mov dx, 10 000 call delay mov dx, 37Ah mov al, 1000b out dx, al mov dx, 10 000 call delay mov dx, 37Ah mov al, 1001b out dx, al jmp nrv6; nrv6: mov ax, 0003h int 10h; call clsym ret; ;ПП Екран: яскраво-білі символи на синьому тлі.———————————————— - clear: mov ah, 06h ;функція завдання вікна mov al, 0 ;режим створення mov bh, 1Fh ;атрибут символів — c/яркоб mov ch, 0 ;верхня Y-координата mov cl, 0 ;ліва Х-координата mov dh, 24 ;нижня Y-координата mov dl, 79 ;права Х-координата int 10h ;переривання BIOS ret ;ПП. Висновок на екран рядки символів.———————————————————— - symv: mov ah, 13h mov al, 0 mov bh, 0 mov bl, 1Fh push ds pop es int 10h ret ;ПП. Ідентифікація натиснутій клавіші.————————————————————- - nklav: lahf or ah, 100 0000b sahf nrv1: mov ah, 11h int 16h jz nrv1 ret ;ПП. Стирання з буфера символу.—————————————————————— - clsym: mov ax, 0C00h int 21h ret ;ПП. Затримка———————————————————————————————- - delay: mov ah, 86h mov cx, 0 int 15h ret ;ПП. Перевірка регістру стану—————————————————————— - nrv11: mov cx, 1000 nrv112: push cx mov dx, 379h in al, dx mov ack, al mov busy, al and ack, 40h cmp ack, 40h jne nrv111 and busy, 80h cmp busy, 80h jne nrv111 nrv111: pop cx loop nrv112 ret ;ДАНІ.—————————————————————————————————— - mes1 db «ПРОГРАМА — «PRINT «» len1=$-mes1 mes2 db «1. Висновок на печатку даних із буфера. «len2=$-mes2 mes3 db «2. Вихід із програми. «len3=$-mes3 mes4 db «Наберіть виведений на печатку текст з допомогою клавіатури. «len4=$-mes4 buf1 db 100 dup («* ») lensym dw 0 ack db? busy db? ;—————————————————————————————————————- - end start.

Задание 7. Досліджувати режим тестування СОМ. Написати програму на ассемблере.

.model tiny ;модель пам’яті, ісп. для СОМ.

.code ;початок сегмента коду org 100h ;поч. знач. лічильника — 100Н ;Початок програми————————————————————————— - start: call clear ;яскраво-білі симв. на синьому; mov cx, len1; mov dh, 10; mov dl, 27; mov bp, offset mes1; call symv ;висновок на екран рядки симв.; call nklav ;идентиф. натиснутою клавіші call clsym ;стирання з буфера символу; call clear ;яскраво-білі симв. на синьому; mov cx, len2; mov dh, 10; mov dl, 23; mov bp, offset mes2; call symv ;висновок на екран рядки симв.; mov cx, len3; mov dh, 12; mov dl, 23; mov bp, offset mes3; call symv ;висновок на екран рядки симв.; nrv2: call nklav ;идентиф. натиснутій клавіші; cmp ah, 02h; je nrv3; cmp ah, 03h; je nrv10; call clsym; jmp nrv2; nrv10: jmp nrv6;; nrv3: call clear ;яскраво-білі симв. на синьому call clsym ;стирання з буфера символу; mov cx, len4; mov dh, 0; mov dl, 10; mov bp, offset mes4; call symv ;висновок на екран рядки симв.; mov ah, 06h ;функція завдання вікна mov al, 0 ;режим створення mov bh, 2Fh ;атрибут символів — з/яркоб mov ch, 1 ;верхня Y-координата mov cl, 0 ;ліва Х-координата mov dh, 24 ;нижня Y-координата mov dl, 79 ;права Х-координата int 10h ;переривання BIOS; mov ah, 02 mov bh, 0 mov dh, 1 mov dl, 0 int 10h; mov ah, 3Fh mov bx, 0 mov cx, 100 mov dx, offset buf1 int 21h ;Инициалицация СОМ1 initcom1 proc mov ax, 40h mov es, ax mov dx, es:[0] add dx, 3 mov al, 1 000 0000b out dx, al dec dx dec dx mov al, 0 out dx, al dec dx mov al, 0C0h out dx, al ret initcom1 endp ;Ініціалізація регістру контролю лінії initrg proc add dx, 3 mov al, 00b or al, 11b or al, 00b or al, 00b out dx, al inc dx mov al, 10h out dx, al sub dx, 3 mov al, 0 out dx, al ret initrg endp ;Готовність СОМ1 check proc try: mov dx, es:[0] add dx, 5 in al, dx test al, 1Eh jz m0 lea dx, error mov cx, len5 mov dh, 10 mov dl, 23 mov bp, offset mes5 call symv ;висновок на екран рядки симв. jmp exit m03: test al, 01h jnz m4 test al, 20h jz try ret check endp ;Фундаментальна обізнаність із портом work proc m4: mov ah, 0 int 16h push ax push ax mov dx, es:[0] add dx, 5 mov cx, 10 m1: in al, dx test al, 20h jz m2 loop m1 m2: sub dx, 5 pop ax out dx, al add dx, 5 m3: in al, dx test al, 1 jz m3 sub dx, 5 in al, dx mov ah, 0Eh int 10h pop ax cmp al, 1Bh jne m4 ret work endp ;Вихід із програми exit: mov ax, 4C00h int 21h nrv6: call clsym ret ;ПП Екран: яскраво-білі символи на синьому тлі.———————————————— - clear: mov ah, 06h ;функція завдання вікна mov al, 0 ;режим створення mov bh, 1Fh ;атрибут символів — c/яркоб mov ch, 0 ;верхня Y-координата mov cl, 0 ;ліва Х-координата mov dh, 24 ;нижня Y-координата mov dl, 79 ;права Х-координата int 10h ;переривання BIOS ret ;ПП. Висновок на екран рядки символів.———————————————————— - symv: mov ah, 13h mov al, 0 mov bh, 0 mov bl, 1Fh push ds pop es int 10h ret ;ПП. Ідентифікація натиснутою клавіші.————————————————————- - nklav: lahf or ah, 100 0000b sahf nrv1: mov ah, 11h int 16h jz nrv1 ret ;ПП. Стирання з буфера символу.—————————————————————— - clsym: mov ax, 0C00h int 21h ret ;ПП. Затримка———————————————————————————————- - delay: mov ah, 86h mov cx, 0 int 15h ret; ;ДАНІ.—————————————————————————————————— - mes1 db «ПРОГРАМА — «COM «» len1=$-mes1 mes2 db «1. Передача даних в СОМ-порт. «len2=$-mes2 mes3 db «2. Вихід із програми. «len3=$-mes3 mes4 db «Наберіть виведений в СОМ-порт текст з допомогою клавіатури. «len4=$-mes4 buf1 db 100 dup («* ») mes5 db «Помилка порту СОМ 1 », 7,0Dh, 0Ah, S len5=$-mes5 ;—————————————————————————————————————- - end start.

———————————;

Метод MFM є методом які з подвійною щільністю записи з допомогою винятку частини бітов синхронізації і збільшення тактовою частоти записи.

Показати весь текст
Заповнити форму поточною роботою