Интерфейсы и периферийные устройства
| Категория реферата: Рефераты по информатике, программированию
| Теги реферата: оформление доклада, рассказы
| Добавил(а) на сайт: Стиплин.
Предыдущая страница реферата | 1 2 3
Третий бит записывается аналогично первому, четвёртый – аналогично второму. Пятый бит равен нулю, предыдущий бит данных также равен нулю, поэтому бит синхронизации и бит данных должны записываться в сигнал записи, но они равны нулям, т.е. записывается нуль.
Шестой бит равен нулю, предыдущий бит данных тоже равен нулю, т.е. записываются и бит данных и бит синхронизации. Бит синхронизации равен единице, бит данных равен нулю т.е. сигнал записи равен единице. Седьмой бит записывается аналогично шестому, а восьмой – первому.
Задание 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,00001001b out dx,al ;Выставляем строб mov dx,1000 call delay mov dx,37Ah mov al,00001000b 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,00001000b out dx,al mov dx,1000 call delay mov dx,37Ah mov al,00001001b out dx,al mov dx,10000 call delay mov al,13 mov dx,378h out dx,al mov dx,10000 call delay mov dx,37Ah mov al,00001000b out dx,al mov dx,10000 call delay mov dx,37Ah mov al,00001001b 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,01000000b 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,10000000b 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,00000000b or al,00000011b or al,00000000b or al,00000000b 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,01000000b 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 является методом с удвоенной плотностью записи за счет исключения части битов синхронизации и увеличения тактовой частоты записи.
Скачали данный реферат: Шуйский, Sopov, Jarmolinskij, Kuratnik, Kolesov, Evnomija, Набалкин.
Последние просмотренные рефераты на тему: банки рефератов бесплатно, реферат электрические, реферат вода, инновационный менеджмент.
Категории:
Предыдущая страница реферата | 1 2 3