好文档 - 专业文书写作范文服务资料分享网站

微机原理习题答案9章

天下 分享 时间: 加入收藏 我要投稿 点赞

第9章 定时/计数器8253应用设计

1. 下列地址哪些能够分配给8253/8254的计数器0?为什么?(23H、54H、97H、51H、

FCH、59H)

解:因为已经约定采用A2,A1作为8253的内部地址线,而且计数器0的地址为00,所以在题中所给的地址中只有51H,59H的A2和A1同时为0,即:A2A1=00.

2. 如果计数器0设定为方式0,GATE0=1,CLK0=1MHz,时常数为N=1000,请画出

OUT0的波形。如果计数器1设定为方式1,其它参数与计数器0相同,画出OUT1的波形。

3. 编程实现:将8253计数器0设置成方式4,并置时常数10000,然后处于等待状态,直

到CE的内容≤1000后再向下执行。 解:

MOV DX,COUNTD ;写入计数器0的方式控制字 MOV AL,00111000B OUT DX,AL

MOV DX,COUNTA ;设置计数器0的常数 MOV AX,10000 OUT DX,AL XCHG AL,AH OUT DX,AL

L1: MOV DX,COUNTD ;写入计数器0的方式控制字

- 73 -

MOV AL,0H OUT DX,AL

MOV DX,COUNTA ;读入CE IN AL,DX MOV AH,AL IN AL,DX XCHG AL,AH

CMP AX,1000 ;判别CE当前大小 JA L1

4. 利用8253可以实现确定时间的延迟,编程实现延时10秒的程序段(设可以使用的基准

时钟为1MHz)。

解:本题使用计数器0和计数器1,并且计数器0的输出OUT0作为计数器1的时钟输入CLK1. 程序如下: MOV MOV OUT MOV MOV OUT

DX,COUNTD AL,00110100B DX,AL DX,COUNTA AX,10000 DX,AL

;写计数器0时常数,分频得到100Hz时钟频率

;写计数器0方式控制字

XCHG AL,AH OUT MOV MOV OUT MOV MOV

DX,AL DX,COUNTD AL,01110000B DX,AL DX,COUNTB AX,999

;分频得到0.1Hz时钟频率。(在方式0下,时常数为N时,

;写计数器1方式控制字

;OUT输出的低电平宽度为N+1). OUT

DX,AL

- 74 -

XCHG AL,AH OUT L1: MOV MOV OUT MOV IN MOV IN

DX,AL

;延时

; 当前CE的内容锁存到OL

DX,COUNTD AL,01000000B DX,AL DX,COUNTB AL,DX AH,AL AL,DX

XCHG AL,AH CMP JNA ….

5. 比较8254方式0与方式4、方式1与方式5的区别?

方式0与方式4

方式0 OUT端计数过程中为低,计数值减为0时,输出变高

方式4 OUT端计数过程中为高,计数值减为0时输出宽度为1个CLK的负脉冲 方式1与方式5

方式1 OUT端输出宽度为n个CLK的低电平,计数值减为0时,输出为高 方式5 OUT端计数过程中为高,计数值减为0时输出宽度为1个CLK的负脉冲

6. 在8088最小系统中,8253的端口地址为284H~287H。系统提供的时钟为1MHz,要

求在OUT0输出周期为20微秒的方波,在OUT1输出周期为200微秒,其中每周期为负的时间是180微秒的信号。请编写8253的初始化程序。 解:

OUT0输出为20微妙方波,可用方式三直接产生,OUT1输出波形与书中例9.2类似,可用其中思想产生此信号。如果允许增加外部器件,也可在例9.1的基础上,将OUT端信号通过与非门取反,这样即可产生题目要求信号。本例利用例9.1思想解答

- 75 -

AX,999 L1

;延时结束,则继续执行,否则,跳到L1,继续延时

8ajku2pib00daes3y3831emx02sb1m00vrh
领取福利

微信扫码领取福利

微信扫码分享