首页 理论教育中断系统和定时器/计数器-对口升学信息技术二类专业总复习

中断系统和定时器/计数器-对口升学信息技术二类专业总复习

【摘要】:中断源 入口地址外部中断 0 0003H定时器/计数器 T0 000BH外部中断 1 0013H定时器/计数器 T1 001BH串行口中断 0023H执行相应的中断服务程序。在单一中断系统中,外部中断响应时间总是在3~8个机器周期。

1.MCS—51单片机定时器/计数器结构及工作原理。(A)

2.内部定时器/计数器方式寄存器(TMOD)控制原理。(C)

3.内部定时器/计数器控制寄存器(TCON)控制原理。(B)

4.单片机定时器工作方式控制字的编写。(C)

5.定时器方式0、1、2使用及初始化程序读识及编写。(D)

6.状态查询方式工作程序编写。(B)

7.MCS—51单片机中断的基本概念、中断入口地址及中断服务程序跳转。(B)

8.中断优先级与自然优先级。(A)

9.中断控制寄存器(CTON、SCON、IE、IP)控制原理。(C)

10.中断响应过程、定时器/计数器T0、T1中断的应用编程。(B)

11.中断请求的清除与复位。(B)

12.串行通信的基本概念。(A)

13.串行通信接口工作方式。(B)

14.串行通信的控制寄存器SCON和串行通信简单应用编程。(B)

近三年四川省对口升学本章考点内容及考题分析

续表

在本章的学习中应重点掌握中断、定时器、串行通信的概念及基础知识,掌握定时器/计数器的启动、工作方式、计数值及定时时间的计算,理解中断的相关寄存器的各标志位及用法,理解中断、定时器/计数器的编程应用。

一、中断的概念

中断是CPU在执行现行程序的过程中,发生随机事件和特殊请求时,使CPU中止现行程序的执行,而转去执行随机事件或特殊请求的处理程序,待处理完毕后,再返回被中止的程序继续执行的过程。

中断源:所谓中断源就是引起中断的原因或发出中断请求的中断来源。在MCS—51系列中有5个中断源,如下所述。

——外部中断0请求,低电平或脉冲下降沿有效。由P3.2引脚输入。

——外部中断1请求,低电平或脉冲下降沿有效。由P3.3引脚输入。

T0——定时器/计数器T0溢出中断请求。外部计数脉冲由P3.4引脚输入。

T1——定时器/计数器T1溢出中断请求。外部计数脉冲由P3.5引脚输入。

TX/RX——串行口中断请求。当串行口完成一帧发送或接收时,请求中断。

中断响应:

单片机一旦工作,并由用户进行初始化编程后,单片机的CPU在每个机器周期的最后一个状态周期采样并按优先权设置的结果处理所有被开放中断源的中断请求。

1.中断响应条件

一个中断源的请求要得到响应,必须满足以下的条件。

(1)CPU正在处理相同的或更高优先权的中断请求。这种情况下只有当前中断响应结束后才可能响应另一个中断请求。

(2)现行的机器周期不是当前所执行指令的最后一个机器周期。此时只有在当前指令执行结束周期的下一个机器周期才可能响应中断请求。

(3)正在执行的指令是中断返回指令(RETI)或者是对IE、IP的写操作指令。在这种情况下,只有在这些指令执行结束并至少再执行一条其他指令后才可能响应中断请求。

如果上述条件中有一个存在,CPU将自动丢弃对中断查询的结果 ;若一个条件也不存在,则将在紧接着的下一个机器周期执行中断查询的结果,响应相应的中断请求。

2.中断响应过程

如果某一个中断被开放,且中断请求符合响应条件,CPU会及时响应该中断请求,并按下列过程进行处理。

(1)置相应的优先级触发器状态为1,指明了CPU正在响应的中断优先权的级别,并通过它屏蔽所有同级或更低级的中断请求,允许更高级的中断请求。

(2)硬件执行一条子程序调用,清相应的中断请求标志位为0(RI、TI和电平触发的外部中断除外)。

(3)保护断点。即将被中断程序的断点位置(PC的值)压入堆栈保存起来。

(4)将被响应的中断源的中断服务程序入口地址送程序计数器PC。各中断源的中断服务程序入口地址的分配情况如下所示。

中断源 入口地址

外部中断 0 0003H

定时器/计数器 T0 000BH

外部中断 1 0013H

定时器/计数器 T1 001BH

串行口中断 0023H

(5)执行相应的中断服务程序。中断服务程序的最后一条指令必须是中断返回指令RETI,当CPU执行完中断服务程序中的中断返回指令后,清相应的优先级触发器为0,然后恢复断点,即将保存在堆栈中PC的值弹出,使CPU再继续执行原来被中断的程序。

3.中断请求的撤除

CPU响应中断的同时,该中断请求标志应被清除,否则将会引起另一次中断。中断标志的清除分为三种情况:

(1)对于定时器溢出的中断标志TF0(或TF1)及负跳变触发的外部中断标志IE0(或IE1),中断响应后,中断标志由硬件自动清除 ;

(2)对于电平触发的外部中断请求,中断请求标志不由CPU控制,在中断结束前必须由中断源撤销中断请求信号 ;

(3)串行口中断标志TI和RI在中断响应后不能由硬件自动清除,这就需要在中断服务程序中,由软件清除中断请求标志。

4.中断响应的时间

在MCS—51系列单片机中的外部中断请求信号在每一个机器周期的第5个状态周期的第2个时钟脉冲被采样并锁存到相应的中断请求标志中,这个状态等到下一个机器周期才被查询。在单一中断系统中,外部中断响应时间总是在3~8个机器周期。

二、MCS—51系列单片机的中断系统

在单片机中,为了实现中断功能而配置的软件和硬件,称为中断系统。一个完整的中断系统的处理过程包括中断请求、中断响应、中断处理和中断返回。MCS—51中断系统的总体结构如图3-4-1所示。

图3-4-1 中断系统的总体结构

三、MCS—51系列单片机的中断的相关寄存器(TCON、SCON、IE、IP)

1.中断标志寄存器TCON

TCON为中断标志寄存器TCON,其字节地址为88 H,可采用位寻址,它除了控制着两个外部中断源的触发方式和锁存两个外部中断源的中断请求标志外,还控制定时器/计数器T0、Tl的溢出中断。其格式见表3-4-1。

表3-4-1

IT0:外部中断的中断触发方式选择位。

当IT0位清为0时,外部中断为电平触发方式。在这种触发方式中,CPU在每一个机器周期的S5P2采样(P3.2)引脚的输入电平。当采样到低电平时,置的中断请求标志位IE0置1 ;当采样到高电平,IE0位为0。在采用电平触发方式时,外部中断源(输入到,即P3.2引脚)上的必须保持低电平有效,直到该中断被CPU响应,同时在该中断服务程序执行结束之前,外部中断源的有效信号必须被清除,否则将产生另一次中断。为了保证CPU能正确采样电平状态,要求外部中断源有效的低电平信号至少要维持一个机器周期以上。

当IT0位置为1时,外部中断为边沿触发方式。在这种触发方式中,CPU在每个机器周期的S5P2采样(P3.2)引脚上的输入电平。如果在相继的两个机器周期,一个周期采样到为高电平,而接着的下一个周期采样到低电平,则置的中断请求标志位IE0为1,即当IE0位为l时,表示外部中断正在向CPU请求中断,直到该中断被CPU响应时,才由硬件自动将IE0位清为0。因为CPU在每一个机器周期采样一次外部中断源输入引脚的电平状态,因此采用边沿触发方式时,外部中断源输入的高电平信号和低电平信号时间必须保持在一个机器周期以上,才能保证CPU检测到此信号由高到低的负跳变。

IE0:外部中断的中断请求标志位。当IE0位为0时,表示外部中断没有向CPU请求中断 ;当IE0位为l时,表示外部中断正在向CPU请求中断,且当CPU响应中断时由硬件自动对IE0进行清0。

IT1:外部中断的触发方式选择位。功能与IT0相同。

IE1:外部中断的中断请求标志位。功能与IE0相同。

TR0:定时器/计数器T0的启动标志位。当TR0位为0时,不允许T0计数工作 ;当TR0位为1时,允许T0定时或计数工作。

TF0:定时器/计数器T0的溢出中断请求标志位。在定时器/计数器T0被允许计数后,从初值开始加1计数,当产生计数溢出时由硬件自动将TF0位置为1,通过TF0位向CPU申请中断,一直保持到CPU响应该中断后才由硬件自动将TF0位清为0。当TF0位为0时,表示T0未计数或计数未产生溢出。当T0工作在不允许中断时,TF0标志可供程序查询。

TR1:定时器/计数器T1的启动标志位。功能与TR0相同。

TF1:定时器/计数器T1的溢出中断请求标志位。功能与TF0相同。

2.串行口控制寄存器SCON

SCON为串行口控制寄存器,其字节地址为98H,也可以进行位寻址。串行口接收和发送数据中断请求标志位(RI、TI)被锁存在串行口控制寄存器SCON中,其格式见表3-4-2。

表3-4-2

RI:串行口接收中断请求标志位。当串行口以一定方式接收数据时,每接收完一帧数据,由硬件自动将RI位置为1。而RI位的清0必须由软件完成。

TI:串行口发送中断请求标志位。当串行口以一定方式发送数据时,每发送完一帧数据,由硬件自动将TI位置为1。而TI位的清0也必须由软件完成。

注意:在中断系统中,将串行口的接收中断RI和发送中断TI经逻辑或运算后作为内部的一个中断源。当CPU响应串行口的中断请求时,CPU并不清楚是由接收中断产生的中断请求还是由发送中断产生的中断请求,所以用户在编写串行口的中断服务程序时,在程序中必须识别是RI还是TI产生的中断请求,从而执行相应的中断服务程序。

3.中断允许控制IE

在计算机中断系统中有两种不同类型的中断:一类为非屏蔽中断,另一类为可屏蔽中断。对于非屏蔽中断,用户不能用软件方法加以禁止,一旦有中断请求,CPU就必须予以响应。而对于可屏蔽中断,用户则可以通过软件方法来控制它们是否允许CPU去响应。允许CPU响应某一个中断请求称为中断开放(或中断允许),不允许CPU响应某一个中断请求称为中断屏蔽(或中断禁止)。

MCS—51系列单片机的5个中断源都是可屏蔽中断,CPU对中断源的中断开放或中断屏蔽的控制是通过中断允许控制寄存器IE来实现的。IE的字节地址为A8 H,既可以按字节寻址,也可以按位寻址。当单片机复位时,IE被清零。

通过对IE各位的置1或清0操作,实现开放或屏蔽某个中断,也可以通过对EA位的清0来屏蔽所有的中断源。IE的格式见表3-4-3。

表3-4-3

IE寄存器各位的含义如下。

EA:中断允许总控制位。当EA位为0时,屏蔽所有的中断 ;当EA位为1时,开放所有的中断。

ES:串行口中断允许控制位。当ES位为0时,屏蔽串行口中断 ;当ES位为1且EA位也为1时,开放串行口中断。

ET1:定时器/计数器T1的中断允许控制位。当ET1位为0时,屏蔽T1的溢出中断 ;当ET1位为1且_EA位也为1时,开放T1的溢出中断。

EX1:的中断允许控制位。当EX1位为0时,屏蔽 ;当EX1位为1且EA位也为1时,开放中断。

ET0:定时器/计数器T0的中断允许控制位。功能与ET1相同。

EX0:的中断允许控制位。功能与EX1相同。排列到下一行开头另成一段,比如要开放和T1的溢出中断,屏蔽其他中断,则对应的中断允许控制字为10001100B,即8CH。只要将这个结果送入IE中,中断系统就按所设置的结果来管理这些中断源。形成这个控制结果的方法可以对IE按字节操作,也可以按位操作。

按字节操作形式 按位操作形式

SETB EX1

MOV IE,#8CH SETB ET1

SETB EA

4.中断优先级控制寄存器IP

在中断系统中,要使某一个中断被优先响应的话,就要依靠中断优先级控制寄存器IP来控制。MCS—51系列单片机对所有中断设置了两个优先级,每一个中断请求源都可以编程设置为高优先级中断或低优先级中断,从而实现二级中断嵌套。为了实现对中断优先级的管理,在MCS—51内部提供了一个中断优先级寄存器IP,其字节地址为D8 H,既可以按字节形式访问,又可以按位的形式访问。其格式见表3-4-4。

表3-4-4

PX0、PT0、PX1、PT1和PS分别为、T0、、T1和串行口中断优先级控制位。当相应的位为0时,所对应的中断源定义为低优先级,为1时则所对应的中断源定义为高优先级。

比如要将T0定义为高优先级,使CPU优先响应其中断,其他中断均定义为低优先级,对应的优先级控制字为00000010B,即02 H。只要将这个控制字送入IP中,CPU就优先响应T0产生的溢出中断,并将其他中断按低优先级中断处理。

在同一个优先级中,各中断源的优先级别由一个内部的硬件查询序列来决定,所以在同级的中断中按硬件查询序列也确定了一个自然优先级,其从高到低的优先级排列如下:

按中断优先权设置后,响应中断的基本原则如下。

(1)若多个中断请求同时有效,CPU优先响应优先权最高的中断请求。

(2)同级的中断或更低级的中断不能中断CPU正在响应的中断过程。

(3)低优先权的中断响应过程可以被高优先权的中断请求所中断,CPU会暂时中止当前低优先权的中断过程,而优先响应高优先权中断。等到高优先权中断响应结束后再继续响应原低优先权的中断过程,形成中断的嵌套。

MCS—51系列单片机复位后,特殊功能寄存器IE、IP的内容均为0,由用户的初始化程序对IE、IP进行初始化,开放或屏蔽某些中断并设置它们的优先权。

四、MCS—51系列单片机的定时器/计数器

8051单片机内部有两个16位定时器/计数器:定时器/计数器T0和定时器/计数器T1。它们都具有定时和计数功能,定时器/计数器T0、T1用作定时器时,对机器周期进行计数,每经过一个机器周期计数器加1,直到计数器计满溢出。由于一个机器周期由12个时钟周期组成,所以计数频率为时钟频率的1/12。所以定时器的定时时间不仅与计数器的初值即计数长度有关,而且还与系统的时钟频率大小有关。定时器/计数器T0、T1用作计数时,计数器对来自输入引脚T0(P3.4)和T1(P3.5)的外部信号计数,但必须保证输入的高电平和低电平信号至少应维持一个完整的机器周期。

1.定时器/计数器的方式寄存器TMOD

TMOD用于控制T0和T1的工作方式,其各位定义见表3-4-5。

表3-4-5

M1、M0工作方式控制位,可构成4种工作方式,见表3-4-6。

表3-4-6

C/:计数工作方式/定时工作方式选择位。C/=0,设置为定时工作方式 ;C/=1,设置为计数工作方式。

GATE:门控位,用以决定是由软件还是硬件启动/停止计数。GATE=0,/被封锁,只要用软件对TR0(或TR1)置1就启动了定时器。GATE=1,定时器/计数器的计数受外部引脚输入电平的控制。在TR0(或TR1)置1时,若/引脚为高电平,启动定时器计数 ;为低电平时停止计数。

TMOD的所有位在复位后清0。TMOD不能位寻址,只能按字节操作设置工作方式。

2.定时器/计数器的控制寄存器TCON

定时器/计数器的控制寄存器TCON的高4位存放定时器/计数器T0、T1的运行控制位和计数溢出标志位,低4位存放外部中断的触发方式控制位和锁存外部中断的请求标志位。其格式见表3-4-7。

表3-4-7

各位的功能和作用已在前面介绍了,在此不再重复。

五、定时器/计数器T0、Tl的工作方式

定时器/计数器T0有4种工作方式,而定时器/计数器T1只有3种工作方式。不同的工作方式其内部的结构有所不同,功能上也有差别。

1.工作方式0——13位计数器

T0在工作方式0的逻辑结构如图3-4-2所示。在这种工作方式下,16位的计数器(TH0和TL0)只用了13位构成13位定时/计数器(为与MCS—48兼容)。TL0的高3位未用,当TL0的低5位计满时,向TH0进位,而TH0溢出后对中断标志位TF0置1,并申请中断。T0是否溢出可用软件查询TF0是否为1。

图3-4-2 工作方式0的逻辑结构图

当C/=0时,多路开关打到上位,定时器/计数器的输入端接内部振荡器的12分频,即工作在定时方式,每个计数脉冲的周期等于1机器周期,当定时器/计数器溢出时,其定时时间为

T=计数次数×机器周期=(213-T0初值)×机器周期

C/=1时,多路开关打到下位,定时器/计数器接外部T0引脚输入信号,即工作在计数方式,当外部输入信号电平发生从1到0跳变时,加1计数器加1。

计数初值N=213-M (M为需要计数次数)

2.工作方式1——16位计数器

T0在工作方式1的逻辑结构如图3-4-3所示,它与工作方式0的差别仅在于工作方式1是以16位计数器参加计数,且定时时间为

T=计数次数×机器周期=(216-T0初值)×机器周期

3.工作方式2——8位自动重装初值计数器

T0在工作方式2的逻辑结构如图3-4-4所示。TL0用作8位计数器,TH0用来保存初值,每当TL0计满溢出时,硬件自动将TH0中的值装入TL0中。工作方式2的定时时间为

T=计数次数×机器周期=(28-T0初值)×机器周期

图3-4-4 工作方式2的逻辑结构图(www.chuimin.cn)

4.工作方式3——T0分成两个8位定时器/计数器

工作方式3的逻辑结构如图3-4-5所示。该工作方式只适用于定时器/计数器T0。T0在工作_方式3被拆成两个相互独立的计数器,其中TL0使用原T0的各控制位、引脚和中断源:C/、GATE、TR0、和TF0。而TH0则只能作为定时器使用,但它占用了T1的TR1和TF1,即占用了T1的中断标志和运行控制位。

一般在系统需增加一个额外的8位定时器时,T0可设置为工作方式3,此时T1仍可定义为工作方式0、工作方式1和工作方式2,但只能用在不需中断控制的场合。

图3-4-5 工作方式3的逻辑结构

六、MCS—51单片机串行通信

1.串行通信的基本概念

MCS—51单片机内部有一个全双工的串行通信口,即串行接收和发送缓冲器(SBUF),这两个在物理上独立的接收发送器,既可以接收数据也可以发送数据。但接收缓冲器只能读出不能写入,而发送缓冲器则只能写入不能读出,它们的地址为99H。(发送数据可用指令MOV SBUF,A ;接收数据用指令MOV A,SBUF完成)这个通信口既可以用于网络通信,亦可实现串行异步通信,还可以构成同步移位寄存器使用。

(1)通信方式

按照数字信号排列顺序分为并行通信和串行通信。

按信息传递方向与时间关系分为单工通信、半双工通信、全双工通信。

单工通信:数据仅按一个固定方向传送。

半双工通信:数据可实现双向传送,但不能同时进行。

全双工通信:允许双方同时进行数据双向传送。

(2)串行通信方式

串行通信方式分为异步通信方式和同步通信方式。

同步通信是指建立发送方时钟对接收方时钟的直接控制,使数据传送完全同步。

异步通信(如图3-4-6所示)以一个字符为传输单位,通信中两个字符间的时间间隔是不固定的,然而在同一个字符中的两个相邻位代码间的时间间隔是固定的。收发双方各自采用自己的时钟信号,但为了收发协调,应尽量保持一致。传送一个字符的信息格式:规定有起始位、数据位、奇偶校验位、停止位等,其中各位的意义如下。

①起始位:先发出一个逻辑“0”信号,表示传输字符的开始。

②数据位:紧接在起始位之后,指传送的数据位数,常见的为8位,从最低位开始传送。

③奇偶校验位:数据位加上这一位后,使得“1”的位数应为偶数(偶校验)或奇数(奇校验),以此来校验数据传送的正确性。

④停止位:它是一个字符数据的结束标志,高电平有效。

⑤空闲位:处于逻辑“1”状态,表示当前线路上没有数据传送。

图3-4-6

波特率:是衡量数据传送速率的指标。表示每秒钟传送的二进制位数。例如数据传送速率为120字符/秒,而每一个字符为10位,则其传送的波特率为10×120=1200字符/秒=1200 bps。

单片机串行口有4种工作方式,其中方式0和方式2的波特率是固定的 ;方式1和方式3波特率可由定时器T1的溢出率来确定。

(1)在方式0时波特率=fosc/12,不受SMOD位的值影响。若fosc=12 MHz,波特率为fosc/12,即1Mb/s。方式2的波特率=。SMOD=1,波特率= ;SMOD=0,波特率=

(2)在方式1或方式3时,波特率为

波特率=

SMOD为电源控制寄存器PCON的最高位,N为计数位数,X为计数器的计数初值。

实际设定波特率时,T1常设置为方式2定时(自动装初值),这种方式不仅操作方便,也可避免因软件重装初值而带来的定时误差。

2.串行口控制寄存器(SCON)

SCON是MCS—51的一个可位寻址的专用寄存器,用于串行数据通信的控制。单元地址98 H,位地址9FH~98 H。SCON各位的定义见表3-4-8、图3-4-7。

表3-4-8

图3-4-7

(1)串行口工作方式选择位SM0、SM1

SM0、SM1由软件置1或清0,用于选择串行口的4种工作方式。

(2)多机通信控制位SM2

SM2=1时,如果接收到的第9位数据为1,硬件将RI置1,申请中断 ;如果第9位数据为0,则RI不置1,且所接收的数据无效。

SM2=0时,不管第9位数据是0还是1,硬件都置RI=1,并申请中断。RI由软件清0,SM2由软件置1或清0。

多机通信时,各从机先将SM2置l。接收并识别主机发来的地址,当地址与本机相同时,将SM2清0,与主机进行数据传递。各机所发送的数据第9位必须为0。

(3)允许接收控制位REN。REN=1时允许并启动接收,REN=0时禁止接收。REN由软件置1或清0。

(4)发送数据D8位TB8。TB8是方式2、方式3中要发送的第9位数据,事先用软件写入1或0。方式0、方式1不用。

(5)接收数据D8位RB8。方式2、方式3中,由硬件将接收到的第9位数据存入RB8。方式1中,停止位存入RB8。

(6)发送中断标志位TI。发送完一帧信息,由硬件使TI置1,TI必须由软件清0。

(7)接收中断标志位RI。接收完一帧有效信息,由硬件使RI置1,RI必须由软件清0。

【例1】 设T0为工作方式1,设置为定时时间为2 ms,即在P1.0引脚产生250 Hz的方波(假设晶振为6 MHz,试分别用中断方式和状态查询方式编程)。

【答案】 根据题意fosc=6×106 MHz,t=2 ms

则机器周期

计数次数

对应的计数初值为216-1000=64536D=FC18 H

1.中断方式编程如下:

ORG 0000H

AJMP MAIN

ORG 000BH

AJMP INT

MAIN:MOV SP,#63 H ;置堆栈指针

MOV TMOD,#01 ;T0初始化

MOV TL0,#18 H

MOV TH0,#0FCH

SETB TR0 ;启动T0计数

SETB ET0 ;允许T0中断

SETB EA ;CPU开中断

SJMP $ ;等待

INT:MOV TL0,#18 H ;T0中断服务程序

MOV TH0,#0FCH ;送2ms计数初值

CPL P1.0 ;输出取反

RETI

2.状态查询方式编程如下:

ORG 0000H

MOV TMOD,#01 ;T0初始化

MOV TL0,#18H

MOV TH0,#0FCH

SETB TR0 ;启动T0计数

LOOP1:JBC TF0,LOOP2

SJMP LOOP1

LOOP2:MOV TL0,#18 H

MOV TH0,#0FCH

CPL P1.0 ;输出取反

AJMP LOOP1

【例2】 有晶振频率为6 MHz的MCS—51单片机,其P1口控制8只发光二极管(高电平点亮),要求使用定时器1用中断方式定时,控制8只发光二极管由高位向低位时间间隔1秒依次轮流点亮,试编程实现之。

【答案】 6 MHz的主频,机器周期为2μs,定时100ms可使用定时器1工作于方式0,其初值为65536-100000μs/2μs=3CB0H,同时采用R2做软件计数器,初值为10,从而实现1秒钟的定时。

ORG 0000H

LJMP MAIN

ORG 001BH

LJMP BRT1

ORG 0100H

MAIN:MOV TMOD,#10H

MOV IE,#88 H

MOV TH1,#3CH

MOV TL1,#0B0 H

MOV R2,#0AH

MOV A,#80 H

MOV P1,A

SETB TR1

HERE:AJMP HERE

BRT1:DJNZ R2,LP

MOV R2,#0AH

RR A

MOV P2,A

LP:MOV TH1,#3CH

MOV TL1,#0B0H

RETI

END

【例3】 要求以方式2从串行口上发送RAM中从50 H开始的16个单元的内容,奇偶校验位P作为第8位输出。设晶振荡频率为11.0592 MHz,波特率为fosc/32,试编程实现之。

【答案】 根据题意其参考程序如下:

MOV SCON,#80H

MOV PCON,#80 H

MOV R0,#50H

MOV R7,#16

LOOP:MOV A,@R0

MOV C,P

MOV TB8,C

MOV SBUF,A

JNB TI,$

CLR TI

INC R0

DJNZ R7,LOOP

END

一、单项选择题

1.MCS—51响应中断时,下列哪种操作不会发生?( )

A.保护现场 B.保护PC

C.找到中断入口 D.保护PC转入中断入口

2.MCS—51的中断允许触发器内容为83H,CPU将响应的中断请求是( )

3.若MCS—51中断源都编程为同级,当它们同时申请中断时,CPU首先响应( )

4.当CPU响应串行接口中断时,程序应转到( )

A.0003H B.0013H C.0023H D.0033H

5.启动定时器1开始定时的指令是( )

A.CLR TR0 B.CLR TR1 C.SETB TR0 D.SETB TR1

二、判断题(正确的选“A”,错误的选“B”)

1.MCS—51的5个中断源优先级相同。( )

2.各中断发出的中断请求信号,都会标记在MCS—51系统的IE寄存器中。( )

3.当TMOD=99H时,只需要执行指令SETB TR0,就可以启动定时器T0。( )

4.当IT0=0时,外部中断0的触发方式为边沿触发。( )5.定时器/计数器T1的工作方式3是分成两个独立的8位定时器/计数器用,通常用于串行口的波特率发生器。( )

三、填空题

1.MCS—51有_________个中断源,2个中断优先级。

2.优先级由软件填写特殊功能寄存器________加以选择。

3.外部中断1的中断请求标志位是_________。

4.在工作方式0下,计数器是由TH的全部8位和TL的5位组成,因此其最大计数次数为_________。

5.各中断源发出的中断请求信号,都会标记在MCS—51系统中的________寄存器中。