文档库

最新最全的文档下载
当前位置:文档库 > 单片机 考前复习习题4

单片机 考前复习习题4

习题4

4.1单项选择题

(1) MCS-5l系列单片机的定时器Tl用做定时方式时是。

A.对内部时钟频率计数,一个时钟周期加l

B.对内部时钟频率计数,一个机器周期加l

C.对外部时钟频率计数,一个时钟周期加l

D.对外部时钟频率计数,一个机器周期加1

(2) MCS-51系列单片机的定时器T1用做计数方式时计数脉冲是。

A.外部计数脉冲由T1(P3.5)输入 B.外部计数脉冲由内部时钟频率提供 C.外部计数脉冲由T0(P3.4)输入 D.由外部计数脉冲计数

(3) MCS-5l系列单片机的定时器Tl用做定时方式时,采用工作方式1,则工作方式控制字(TMOD)为。

A.01H B.05H C.10H D.50H

(4) MCS-51系列单片机的定时器T1用做计数方式时,采用工作方式2,则工作方式控制字(TMOD)为。

A.60H B.02H C.06H D.20H

(5) MCS-51系列单片机的定时器T0用做定时方式时,采用工作方式1,则初始化编程为。

A.TMOD=0x01 B.TMOD=0x50

C.TMOD=0xl0 D.TCON=0x02

(6) 启动T0开始计数是使TCON的。

A.TF0位置1 B.TR0位置1 C.TR0位置0 D.TR1位置O (7) 使MCS-51系列单片机的定时器T0停止计数的语句是。

A.TR0=0; B.TRl=0; C. TR0=1; D.TRl=1;

(8) MCS-51系列单片机串行口发送/接收中断源的工作过程是:当串行口接收或发送完一帧数据时,将SCON中的,向CPU申请中断。

A.RI或TI置1 B.RI或TI置0

C.RJ置1或TI置0 D.RI置0或TI置l

(9) 当CPU响应定时器T1的中断请求后,程序计数器PC的内容是。

A.0003H B.000BH C.00013H D.001BH

(10) 当CPU响应外部中断0的中断请求后,程序计数器PC的内容是。

A.0003H B.000BH C.00013H D.001BH

(11) MCS-51单片机在同一级别里除串行口外,级别最低的中断源是。

A.外部中断1 B.定时器TO C.定时器T1 D.串行口

(12) 当外部中断0发出中断请求后,中断响应的条件是。

A.ET0=1 B.EX0=1 C.IE=0x81 D. IE=0x61

1 定时器中断请求的撤除

定时中断响应后,硬件自动把标志位TF0(或TF1)清0,因此定时中断的中断请求是自动撤除的,不需要用户干预。

2 串行中断软件撤除

对于串行中断,CPU响应中断后,没有用硬件清除它们的中断标志RI、TI,必须在中断服务程序中用软件清除,以撤除其中断请求。

3外部中断的撤除包括中断标志位IE0(或IE1)的清0和外中断请求信号的撤除。其中IE0(或IE1)清“0”是在中断响应后由硬件电路自动完成的。剩下的只是外中断引脚请求信号的撤除了

外中断请求标志撤除电路

从图可以看出,外部中断0请求信号在D触发器(可选用74LS74)的时钟输入端。当外部设备有中断请求信号(为低电平)出现时,Q端输出为低电平,/INT0有效,向CPU发出中断请求信号。CPU响应中断后,在中断服务程序中由软件安排1个低电平中断应答信号,从P1.0送至D触发器的/SD(置位端,低电平有效),使D触发器的Q端输出为高电平,从而撤除了低电平的外中断0请求信号。/SD端所需的低电平可通过在中断服务程序中增加一下指令的得到:ANL P1,#0FEH ;使P1.0输出为低电平,D触发器置位

在中断服务程序中还要加上撤除外中断0标志指令,即

CLR IE0 ;清外中断标志,以便下次可再次中断

(13) MCS-51系列单片机CPU关中断语句是。

A. EA=1: B. ES=1:C. EA=0; D. EX0=1;

(14) 在定时计数器的计数初值计算中,若设最大计数值为M,对于工作方式1下的M值为。

A.M=213=8192 B.M=28=256

C.M=24=16 D.M=216=65536

4.2填空题

(1) MCS-51系列单片机定时器的内部结构由以下四部分组成:

①定时器T0 ,②定时器T1 ,③定时器方式寄存器TMOD ,

④定时器控制寄存器TCON 。

(2) MCS-51系列单片机的定时/计数器,若只用软件启动,与外部中断无关,应使TMOD中的 GATE=0 。

(3) MCS-51系列单片机的T0用做计数方式时,用工作方式1(16位),则工作方式控制字为TMOD=0x05 。

(4) 定时器方式寄存器TMOD的作用是选择定时器T0/T1的工作方式。

(5) 定时器控制寄存器TCON的作用是控制定时器的启动、停止,标志定时器的溢出和中断情况。

(6) MCS-51的中断系统由定时控制寄存器TCON、串行口控制寄存器SCON、中断允许寄存器IE、中断优先权寄存器IP 等寄存器组成。

(7) MCS-51的中断源有外部中断0、定时器0、外部中断1、定时器1、串行口。

(8) 如果定时器控制寄存器TCON中的ITl和IT0位为O,则外部中断请求信号方式为电平触发方式。

(9)中断源中断请求撤销包括硬件自动清除、软件清除、硬件配合软件共同清除等三种形式。

(10) 外部中断0的中断类型号为 0 。

4.3问答题

(1) MCS-51系列单片机定时/计数器的定时功能和计数功能有什么不同?分别应用在什么场合?

答:

当定时/计数器设置为定时工作方式时,计数器对内部机器周期计数,每过一个机器周期,计数器增1,直至计满溢出。定时器的定时时间与系统的振荡频率紧密相关,如果单片机系统采用12M 晶振,则计数周期为:s 112/110121

T 6μ=??=,

这是最短的定时周期,适当选择定时器的初值可获取各种定时时间。

当定时/计数器设置为计数工作方式时,计数器对来自输入引脚T0(P3.4)和T1(P3.5)的外部信号计数,外部脉冲的下降沿将触发计数,检测一个由1到0的负跳变需要两个机器周期,所以,最高检测频率为振荡频率的1/24。计数器对外部输入信号的占空比没有特别的限制,但必须保证输入信号的高电平与低电平的持续时间在一个机器周期以上。

当需要准确计算时间时往往采用定时器的定时方式,而当要对一些外部事件计数时则采用定时器的计数方式。

(2) 软件定时与硬件定时的原理有何异同?

答:

软件定时是通过编写一段延时程序来实现定时,这段延时程序不完成任何操作,只是通过一些空操作浪费掉一段时间。这样的软件定时往往浪费CPU 的工作效率,并且定时不够准确。

硬件定时是通过单片机的定时器来实现时间的计算,用户只需要对定时器的工作方式、初始值赋予合适的数值,启动定时器后,定时器将自动按照机器周期定时。这种由定时器实现的定时方式,定时时间准确、CPU 的工作效率高。

(3) MCS-51单片机的定时/计数器是增1计数器还是减1计数器?增1和减1计数器在计数和计算计数初值时有什么不同?

答:

MCS-51系列单片机的定时/计数器是增1计数器。

对于增1计数器,计数初值应等于最大计数值减去所需要的计数值。 而减1计数器,计数初值就等于所需要的计数值。

例如:假设需要计数50000次。对于增1计数器的单片机,若采用方式1的定时器,最大计数值为65536,则初值应为:65536-50000=15536。

而对于减1计数器,则计数初值将为50000。

(4) 当定时/计数器在工作方式1下,晶振频率为6 MHz ,请计算最短定时时间

和最长定时时间各是多少?

答:

在定时/计数器工作于方式1下,最大计数值为65536。

若晶振频率为6MHz,则一个机器周期为2μS,所以最短定时时间为2μS(计数初值为65535),最长定时时间为2μS×65536=131072μS(计数初值为0)(5) MCS-51系列单片机定时/计数器四种工作方式的特点有哪些?如何进行选择和设定?

答:

定时/计数器的4种工作方式由方式寄存器TMOD中的M1、M0来进行选择,具体如下:

功能说明

M1 M0 工作方

0 0 方式 0 13位计数器

0 1 方式 1 16位计数器

1 0 方式

2 自动再装入8位计数器

1 1 方式 3 定时器0:分成两个8位计

数器

定时器1:停止计数

(6) 什么叫中断?中断有什么特点?

答:

中断是通过硬件来改变CPU的运行方向。计算机在执行程序的过程中,当出现CPU以外的某种情况,由服务对象向CPU发出中断请求信号,要求CPU暂时中断当前程序的执行而转去执行相应的处理程序,待处理程序执行完毕后,再继续执行原来被中断的程序。这种程序在执行过程中由于外界的原因而被中间打断的情况称为“中断”。

调用中断服务程序的过程类似于调用子程序,其区别在于调用子程序在程序中是事先安排好的;而何时调用中断服务程序事先却无法确定,因为“中断”的发生是由外部因素决定的,程序中无法事先安排调用指令,因此,调用中断服务程序的过程是由硬件自动完成的。

中断的特点:分时操作、实时处理、故障处理

(7) MCS-5l系列单片机有哪几个中断源?如何设定它们的优先级?

答:

MCS-51系列单片机有5个中断源,分别是外部中断0、定时器0、外部中断1、定时器1、串行口。它们的优先级别通过寄存器IP实现。

(8) 外部中断有哪两种触发方式?如何选择和设定?

答:

外部中断有低电平触发和下降沿触发两种方式。通过定时器控制寄存器TCON中的IT0、IT1来选择和设定。

IT1为1

INT中断触发方式控制位,当IT1 = 0,外部中断1控制为电平触发方式。当IT1 = 1,外部中断1控制为下降沿触发方式。

(9)中断函数的定义形式是怎样的?

答:

常用的中断函数定义语法如下:

void 函数名() interrupt n

其中n为中断类型号,C51编译器允许0~31个中断,n取值范围0~31。