单片机原理及接口技术(C51编程)(第2版)-习题答案汇总 下载本文

A.当前正在进行高优先级中断处理 B.当前正在执行RETI指令 C.当前指令是MOV A,R3

D.当前指令是DIV指令,且正处于取指令的机器周期 4.下列说法正确的是( )。

A. 各中断源发出的中断请求信号,都会标记在AT89S51的IE寄存器中 B. 各中断源发出的中断请求信号,都会标记在AT89S51的TMOD寄存器中 C. 各中断源发出的中断请求信号,都会标记在AT89S51的IP寄存器中 D. 各中断源发出的中断请求信号,都会标记在AT89S51的TCON、SCON寄存器中

三、判断对错

1.定时器T0中断可以被外部中断0中断。错

2. 必须有中断源发出中断请求,并且CPU开中断,CPU才可能响应中断。错 3.AT89S51单片机中的同级中断不能嵌套。对

4.同为高中断优先级,外部中断0能打断正在执行的外部中断1的中断服务程序。错

5.中断服务子程序可以直接调用。错

6.在开中断的前提下,只要中断源发出中断请求,CPU就会立刻响应中断。错

四、简答

3.中断响应需要满足哪些条件?

答:一个中断源的中断请求被响应,必须满足以下条件: (1)总中断允许开关接通,即IE寄存器中的中断总允许位EA=1。 (2)该中断源发出中断请求,即该中断源对应的中断请求标志为“1”。 (3)该中断源的中断允许位=1,即该中断被允许。 (4)无同级或更高级中断正在被服务。

第7章 思考题及习题7参考答案

一、填空

1.如果采用晶振的频率为3MHz,定时器/计数器Tx(x=0,1)工作在方式0、1、2下,其方式0的最大定时时间为 32.768ms ,方式1的最大定时时间为 262.144ms ,方式2的最大定时时间为 1024μs 。

2.定时器/计数器用作计数器模式时,外部输入的计数脉冲的最高频率为系统时钟频率的 1/24 。

3.定时器/计数器用作定时器模式时,其计数脉冲由 系统时钟信号12分频后 提供,定时时间与 定时器初值 有关。

4.定时器/计数器T1测量某正单脉冲的宽度,采用 方式1定时方式可得到最大量程?若时钟频率为6MHz,求允许测量的最大脉冲宽度为 131.072ms 。

5. 定时器T2 有3种工作方式: 、 和 ,可通过对寄存器 中的相关位进行软件设置来选择。

答:捕捉,重新装载(增计数或减计数),波特率发生器,T2CON

6. AT89S52单片机的晶振为6MHz,若利用定时器T1的方式1定时2ms,则(TH1)= FCH ,(TL1)= 18H 。

二、单选

1.定时器T0工作在方式3时,定时器T1有 种工作方式。 A.1种 B.2种 C.3种 D.4种

2. 定时器T0、T1工作于方式1时,其计数器为 位。

A.8位 B.16位 C.14位 D.13位

3. 定时器T0、T1的GATEx=1时,其计数器是否计数的条件 。

A. 仅取决于TRx状态 B. 仅取决于GATE位状态 C. 是由TRx和INTx两个条件来共同控制 D. 仅取决于INTx的状态

4. 定时器T2工作在自动重装载方式时,其计数器为 位。

A.8位 B. 13位 C.14位 D. 16位

5. 要想测量INT0引脚上的正单脉冲的宽度,特殊功能寄存器TMOD的内容应为 。

A.87H B. 09H C.80H D. 00H

三、判断对错

1.下列关于T0、T1的哪些说法是正确的。

A.特殊功能寄存器SCON,与定时器/计数器的控制无关。对 B.特殊功能寄存器TCON,与定时器/计数器的控制无关。错 C.特殊功能寄存器IE,与定时器/计数器的控制无关。错 D.特殊功能寄存器TMOD,与定时器/计数器的控制无关。错

2.定时器T0、T1对外部脉冲进行计数时,要求输入的计数脉冲的高电平或低电平的持续时间不小于1个机器周期。特殊功能寄存器SCON与定时器/计数器的控制无关。错

3.定时器T0、T1对外部引脚上的脉冲进行计数时,要求输入的计数脉冲的高电平和低电平的持续时间均不小于2个机器周期。对

四、简答

1.定时器/计数器T1、T0的工作方式2有什么特点?适用于哪些应用场合?

答:方式2为初值自动装入的8位定时器/计数器,克服了在循环定时或循环计数应用时就存在用指令反复装入计数初值影响定时精度的问题。

3.如果系统的晶振的频率为24MHz,定时器/计数器工作在方式0、1、2下,其最大定时时间各为多少?

答:晶振的频率为24MHz, 机器周期为0.5μs。 方式0最大定时时间=0.5μs×2=0.5μs×8192=4096μs 方式1最大定时时间=0.5μs×2=0.5μs×65536=327686μs 方式2最大定时时间=0.5μs×2=0.5μs×256=128μs

81613

五、编程

2.编写程序,要求使用T0,采用方式2定时,在P1.0输出周期为400μs,占空比为10:1的矩形脉冲。

答:据题意,从P1.0输出的矩形脉冲的高低电平的时间为10:1,则高低电平的时间分别为363.63μs和36.37μs。如果系统采用6MHz晶振的话,Tcy=2μs,因此高低电平输出取整,则约为364μs和36μs。参考程序如下:

MAIN: WAIT: IT0P: DLY:

ORG 0000H LJMP MAIN ORG LJMP IT0P MOV MOV SETB TR0 SETB ET0 SETB EA SETB P1.0 AJMP WAIT CLR

CLR MOV

DJNZ R0,DLY MOV SETB P1.0 SETB EA RETI

000BH TMOD,#02H TL0,#4AH

;定时器/计数器T0为定时方式2 ;定时364μs初值赋值 ;启动T0,开始计数 ;允许T0中断 ;CPU开中断

EA

P1.0 R0,#9 TL0,#4AH

;关中断

;延时36μs ;定时364μs初值赋值

第8章 思考题及习题8参考答案

一、填空

1、AT89S51的串行异步通信口为(单工/半双工/全双工)。

2. 串行通信波特率的单位是 bit/s 。

3. AT89S51的串行通信口若传送速率为每秒120帧,每帧10位,则波特率为 1200 4.串行口的方式0的波特率为 fosc/12。

5.AT89S51单片机的通讯接口有 并行 和 串行 两种型式。在串行通讯中,发送时要把 并行 数据转换成 串行 数据。接收时又需把 串行 数据转换成 并行 数据。