1.I/O接口的功能。
答:
对输入/输出数据进行缓冲和锁存、对信号的形式和数据的格式进行变换、对I/O端口进行寻址、提供联络信号等。
2.什么是端口,常用端口有哪几类,寻址方式有哪两种,8086采用哪种方式?
答:
每个I/O接口内部一般由3类寄存器组成,CPU与外设进行数据传输时,各类信息在接口中进入不同的寄存器,一般称这些寄存器为I/O端口。包括数据端口、状态端口、控制端口。端口寻址方式有存储器映像的I/O寻址、I/O映像的I/O寻址。80X86系统采用后者。
3.控制8个LED,用74LS373作为I/O接口与8086微处理器通信。要求所有二极管同时亮或同时灭,亮50ms,灭20ms。
答:
答:
CODE SEGMENT
ASSUME CS:CODE
MAIN PROC FAR
START: PUSH DS
MOV AX,0
PUSH AX
MOV DX,200H 设I/O端口为200H
AGAIN: MOV AH,1 ;读键盘缓冲区字符
INT 16H
CMP AL,1BH ; 若为“Esc”键,则退出
JZ EXIT
MOV AL,0FFH ; 灯全亮
OUT DX,AL ; 输出控制LED
MOV BX,5 ; 向子程序传递参数,实现50ms软延时
CALL DELAY ; 子程序DELAY实现10ms延时
NOT AL ; 灯全灭
MOV BX,2 ; 向子程序传递参数,实现20ms软延时
CALL DELAY
JMP AGAIN
EXIT: RET
MAIN ENDP
DELAY PROC NEAR
PUSH CX
WAIT0: MOV CX,2801
WAIT1: LOOP WAIT1
DEC BX
JNZ WAIT0
POP CX
RET
DELAY ENDP
CODE ENDS
END START
4.8255A有几种工作方式?简述各种工作方式的特点。
答:
8255A有方式0、方式1、方式2三种工作方式。8255A方式0是基本输入/输出方式。在方式0下,每一个端口都可作为基本的输入或输出口,端口C的高4位和低4位以及端口A、端口B都可独立地设置为输入口或输出口。方式1是单向选通输入/输出方式。8255A在工作方式1时,把3个数据端口分为A、B两组,分别称为A组控制和B组控制。此时,端口A和端口B仍作为数据的输入或输出口,而端口C作为联络控制信号,被分成两部分,一部分作为端口A和端口B的联络信号,另一部分仍可作为基本的输入/输出口。8255A方式2是双向选通输入/输出方式,只有端口A可以工作于方式2。8255A端口A工作于方式2时,可使8255A与外设进行双向通信,可采用查询方式或中断方式进行传输。
5.硬件电路如图所示,若8253的计数器0工作在方式1,计数初值为2050H;计数器1工作在方式2,计数初值为3000H;计数器2工作在方式3,计数初值为1000H。请画出OUT0、OUT1和OUT2的波形。
答:
计数器0工作在方式1,即可编程的单脉冲方式。在这种方式下,计数器的启动需要GATE的控制。而本题GATE0接至高电平,所以,计数器0初始化后,计数器并不启动,输出端OUT0保持高电平。
计数器1工作在方式2,即分频器方式。输出波形的频率是2MHz/3000=666.7Hz, 所以,输出波形的周期是1.5ms,输出负脉冲的宽度等于CLK的周期(0.5μs)。
计数器2工作在方式3,即方波方式。输出波形的频率是2MHz/1000=2000Hz,输出波形的周期是0.5ms(500μs)输出波形是对称方波。
波形图如下: