第八章“定时计数控制接口”习题答案

第八章定时计数控制接口

〔习题8.2〕

8253每个计数通道与外设接口有哪些信号线,每个信号的用途是什么?

〔解答〕

CLK时钟输入信号——在计数过程中,此引脚上每输入一个时钟信号(下降沿),计数器的计数值减1

GATE门控输入信号——控制计数器工作,可分成电平控制和上升沿控制两种类型OUT计数器输出信号——当一次计数过程结束(计数值减为0),OUT引脚上将产生一个输出信号

〔习题8.3〕

8253每个通道有___种工作方式可供选择。若设定某通道为方式0后,其输出引脚为___电平;当___后通道开始计数,___信号端每来一个脉冲___就减1;当___,则输出引脚输出___电平,表示计数结束。8253的CLK0接1.5MHz的时钟,欲使OUT0产生频率为300KHz 的方波信号,则8253的计数值应为___,应选用的工作方式是___。

〔解答〕

8253每个通道有6 种工作方式可供选择。若设定某通道为方式0后,其输出引脚为低电平;当写入计数初值(并进入减1计数器)后通道开始计数,CLK 信号端每来一个脉冲减1计数器就减1;当计数器减为0 ,则输出引脚输出高电平,表示计数结束。8253的CLK0接1.5MHz的时钟,欲使OUT0产生频率为300KHz的方波信号,则8253的计数值应为5(=1.5MHz÷300KHz),应选用的工作方式是 3 。

〔习题8.4〕

试按如下要求分别编写8253的初始化程序,已知8253的计数器0~2和控制字I/O地址依次为204H~207H。

⑴使计数器1工作在方式0,仅用8位二进制计数,计数初值为128。

⑵使计数器0工作在方式1,按BCD码计数,计数值为3000。

⑶使计数器2工作在方式2,计数值为02F0H。

〔解答〕(1)

mov al,50h

mov dx,207h

out dx,al

mov al,128 ;80h

mov dx,205h

out dx,al

(2)

mov al,33h

mov dx,207h

out dx,al

mov ax,3000h ;不是3000

mov dx,204h

out dx,al

mov al,ah

out dx,al

(3)

mov al,0b4h

mov dx,207h

out dx,al

mov al,02f0h

mov dx,206h

out dx,al

mov al,ah

out dx,al

〔习题8.5〕

设8253计数器0~2和控制字的I/O地址依次为F8H~FBH,说明如下程序的作用。

mov al,33h

out 0fbh,al

mov al,80h

out 0f8h,al

mov al,50h

out 0f8h,al

〔解答〕

;设置计数器0采用工作方式1,先低后高写入计数值

;BCD码十进制计数

mov al,33h

out 0fbh,al

;计数值为5080

mov al,80h

out 0f8h,al

mov al,50h

out 0f8h,al

总结:计数器0采用工作方式1,计数初值为5080

习题8.6

问题:

?PC机是如何应用8253每个通道的?

解答:

?计数器0——

每隔55ms产生一个IRQ0中断请求

?计数器1——

每隔15μs产生一个DRAM刷新请求

?计数器2——

控制扬声器音调

习题8.7解答

?101个下降沿,还可以采用方式4

?GATE0接外部启动计数器的控制信号,可以选用方式1或方式5

mov dx,203h

mov al,12h ;方式5为1ah

out dx,al

mov dx,200h

mov al,64h

out dx,al

相关推荐
相关主题
热门推荐