微型计算机原理及其接口技术部分习题答案

.STACK 100 .DATA Add8253C0 DB 200H Add8253C1 DB 201H Add8253CR DB 203H .CODE CLOCK PROC FAR PUSH DS MOV AX,0 PUSH AX

MOV AX,@DATA MOV DS,AX

MOV DX,Add8253CR ;定义定时器0工作在方式3 MOV AL,16H;00010110 OUT DX,AL

MOV DX,Add8253C0 ;给通道0送计数初值,只送低8位 MOV AL,2 OUT DX,AL

MOV DX,Add8253CR ;定义定时器1工作在方式2 MOV AL,74;01110100 OUT DX,AL

MOV DX,Add8253C1 ;给通道1送计数初值,先送低8位,再送高8位 MOV AX,60000 OUT DX,AL

MOV AL,AH

OUT DX,AL

9-7解: 将8253A通道0设置为方式1,计数初值为3000的初始化程序为: MOV AL,33H; ;设置控制字

OUT 43H,AL ;写入控制寄存器 MOV AL, 00 ;初值低8位送通道0 OUT 40H,AL

MOV AL, 30H ;初值高8位送通道0 OUT 40H,AL

将8253A通道1设置为方式2,计数初值为2010H的初始化程序为: MOV AL,74H ;设置控制字

OUT 43H,AL ;写入控制寄存器 MOV AX,10H ;初值低8位送通道1

OUT 41H,AL

MOV AL,20H ;初值高8位送通道1 OUT 41H,AL

将8253A通道2设置为方式4,计数初值为4032H的初始化程序为: MOV AL,B8H ;设置控制字

OUT 43H,AL ;写入控制寄存器 MOV AL,32H ;初值低8位送通道2 OUT 42H,AL

MOV AL,40H ;初值高8位送通道2 OUT 42H,AL

9-8解:通道2定义为工作方式2,计时器周期性地每隔10ms产生一个中断,周期为10ms。从CLK2输入2MHz的时钟脉冲,其周期为0.5us,因此,通道1的计数初值应为4E20H(10ms/0.5us=20000); 它的初始化程序为:

MOV AL,B4H ;设置控制字

OUT 43H,AL ;写入控制寄存器 MOV AL,20H ;初值低8位送通道2 OUT 42H,AL

MOV AL,4EH ;初值高8位送通道2 OUT 42H,AL

10-2解:8255A的工作方式有三种工作方式:

方式0:没有固定的用于应答式传送的联络信号线,CPU可以采用无条件传送方式与8255A交换数据。 方式1:有专用的中断请求和联络信号线,因此,方式1通常用于查询传送或中断传送方式。 方式2:PA口为双向选通输入/输出或叫双向应答式输入/输出。

8255A复位后,清除8255A中所有的控制字寄存器,并将各端口置成输入方式。 端口A工作于方式2及端口B工作于方式1的输入初始化程序为: MOV AL,D8H OUT 46H,AL

10-3解:8255A的端口C只能工作于方式0;C口的使用比较特殊,既可作数据口,又可作控制口,当工作方式1和方式2时,它的部分引脚被分配作专用联络信号;PC口的每一位均可以进行置位或复位。 PC4输出方波的程序:

MOV AL,80H ;设置控制字(PA口工作于方式0输出,PB口工作于方式0输出,PC口工作于方式0输出,设8255A端口地址范围为60H~63H) OUT 63H,AL ;写入控制寄存器

AA: MOV AL,09H ;设置控制字(PC4置位为1) OUT 63H,AL ;写入控制寄存器

CALL DELAY

MOV AL,08H ;设置控制字(PC4复位为0)

OUT 63H,AL ;写入控制寄存器 CALL DELAY JMP AA

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4