本章练习答案



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)输出波形是对称方波。

波形图如下: