第5章 中断系统、定时器与计数器

合集下载

MCS-51系列单片机的中断系统

MCS-51系列单片机的中断系统
单片机原理与接口技术
大连理工大学出版社
第5章 中断
当断不断必受其乱
第5章 中断系统
5.1 概述 MCS-51系列单片机的中断系统 5.2 MCS-51系列单片机的中断系统 5.3 中断程序设计方法
第5 章
中断系统
中断控制是单片机最重要的技术之一, 实时控制及人机交互等应用都是通过中 断实现的。 本章主要介绍中断的基本概念、MCS-51 系列单片机单片机的中断机制及其简单 应用。
5.2.2中断控制 5.2.2中断控制
1.中断允许 MCS-51系列单片机中断系统通过中断允许控制 寄存器IE实现开中断和关中断的功能。 (1)IE寄存器 IE寄存器由一个中断允许总控制位和各中断源 的中断允许控制位构成,从而进行两级中断允 许控制。IE寄存器的各位定义如下:
5.2.2中断控制 IE寄存器
5.2.2中断控制 IE寄存器
EX1(IE.2)——外中断1的中断允许控 制位。中断总允许时,EX1=0,禁止外中 断1中断;EX1=1,允许外中断1中断。 ET1(IE.3)——定时器T1的中断允许控 制位。中断总允许时,EX1=0,禁止T1中 断;ET1=1,允许T1中断。
5.2.2中断控制 5.2.2中断控制 IE寄存器
5.2.1中断源和中断标志
当MCS-51系列单片机的外中断源以脉冲方式触 发时,负脉冲有效。CPU在一个机器周期采样到 INT0(或者 INT1 )引脚上为高电平,在接下 来的一个机器周期采样到INT0(或者INT1)引 脚上是低电平,即出现了下降沿的跳变(负脉 冲)时,就认为是外中断0(或者外中断1)的 一个有效的中断请求信号。因为两次检测的间 隔时间为一个机器周期,负脉冲对应的高低电 平持续时间都应至少维持一个机器周期,从而 保证CPU能够检测到电平的跳变。

单片机原理及应用教程(C语言版)-第5章 MCS-51单片机的中断系统

单片机原理及应用教程(C语言版)-第5章 MCS-51单片机的中断系统

5.2.5 中断允许控制
例5-1 假设允许INT0、INT1、T0、T1中断,试 设置IE的值。 (2)汇编语言程序 按字节操作: MOV IE,#8FH 按位操作: SETB EX0 ;允许外部中断0中断 SETB ET0 ;允许定时器/计数器0中断 SETB EX1 ;允许外部中断1中断 SETB ET1 ;开定时器/计数器1中断 SETB EA ;开总中断控制位
IP (B8H)
D7 —
D6 D5 D4 D3 D2 D1 D0 — PT2 PS PT1 PX1 PT0 PX0
PT2:定时器/计数器T2的中断优先级控制位 PT2设置1则T2为高优先级,PT2设置0则T2为 低优先级。 后面各位均是如此,设置1为高优先级,设置0 为低优先级,不再一一赘述。 PS:串行口的中断优先级控制位。 PT1:定时器/计数器1的中断优先级控制位。 PX1:外部中断1的中断优先级控制位。 PT0:定时器/计数器0的中断优先级控制位。 PX0:外部中断0的中断优先级控制位。
5.2.4 中断请求标志
4.定时器/计数器T2中断请求标志
T2CON D7 D6 D5 (C8H) TF2 EXF2 D4 D3 D2 D1 D0
EXF2:定时器/计数器2的外部触发中断请求标志 位。T2以自动重装或外部捕获方式定时、计数,当 T2EX(P1.1)引脚出现负跳变时,TF2由硬件置1, 向CPU请求中断,CPU响应中断后,EXF2不会被硬 件清0,需要在程序中以软件方式清0。
5.2.3 外中断触发方式
TCON格式如下:
D7 D6 D5 D4 D3 D2 D1 D0
TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0
IT0=1,外中断0为下降沿触发 CPU在每一个机器周期的S5P2期间对P3.2引 脚采样,若上一个机器周期检测为高电平,紧挨着 的下一个机器周期为低电平,则使IE0置1。 IT1:外中断1触发方式控制位。功能同IT0

第05章 MCS-51单片机的中断与定时(1-4)

第05章 MCS-51单片机的中断与定时(1-4)

2
1
TH0
;P1.0输出“0” ;P1.0输出“1”
5.2 MCS-51单片机的中断系统
五、外中断应用举例
1. 中断初始化程序
设置外中断源的触发方式 设置中断允许寄存器IE 设置中断优先级寄存器IP
2. 中断服务程序
保护现场 中断处理 恢复现场
23/65
5.2 MCS-51单片机的中断系统
【例5-3】 设外部中断0为下降沿触发方 式,高优先级,试编写中断初始化程序
5.2 MCS-51单片机的中断系统
【例5-4】 将单脉冲接到外中断0(INT0)引脚,利 用P1.0作为输出,经反相器接发光二极管。编写程 序,每按动一次按钮,产生一个外中断信号,使发 光二极管的状态发生变化,由亮变暗,或反之
P1.0 单脉冲 发生器 INT0
1
+5V
8031
26/65
5.2 MCS-51单片机的中断系统
串口:0023H
20/65
5.2 MCS-51单片机的中断系统
四、中断请求的撤除
1.定时/计数器中断请求标志TF0/TF1会自动撤除 2.串行口中断请求标志TI/RI要用指令撤除
CLR TI ;清TI标志位 CLR RI ;清RI标志位
3.负脉冲触发的外中断请求标志IE0/IE1会自动撤除 4.低电平触发的外中断请求信号需要外加电路撤除
下次课前请预习5.3节
30/65
5.3 51单片机的定时器/计数器
MCS-51单片机内部有两个16位定时/计数器 T0和T1,简称定时器0和定时器1
在特殊功能寄存器TMOD和TCON的控制下, 它们既可以设定成定时器使用,也可以设定 成计数器使用
定时/计数器有4种工作方式,具有中断功能, 可以完成定时、计数、脉冲输出等任务

第五章 MCS-51的中断系统

第五章 MCS-51的中断系统

第5章MCS-51单片机的中断系统【例5-1】设允许外部中断0和串行口中断,禁止其它中断源的中断申请。

试根据假设条件设置IE的相应值。

解:⑴用位操作指令来编写如下程序段:SETB EX0 ;允许外部中断0中断SETB ES ;允许串行口中断CLR EX1 ;禁止外部中断1中断CLR ET0 ;禁止定时器/计数器T0中断CLR ET1 ;禁止定时器/计数器T1中断SETB EA ;CPU开中断⑵用字节操作指令来编写:MOV IE, #91H【例5-2】设置中断优先级控制寄存器IP的初始值,使得8031的2个外中断请求为高优先级,其它中断请求为低优先级。

解:⑴用位操作指令SETB PX0;2个外中断为高优先级SETB PX1CLR PS ;串行口、2个定时器为低优先级中断CLR PT0CLR PT1⑵用字节操作指令MOV IP,#05H【例5-3】假设允许外部中断0中断,并设定它为高级中断,其它中断源为低级中断,采用跳沿触发方式。

在主程序中可编写如下程序段:SETB E A ;EA位置“1”,CPU开中断SETB E X0 ;EX0位置“1”,允许外部中断0产生中断SETB P X0 ;PX0位置“1”,外部中断0为高级中断SETB I T0 ;IT0位置“1”,外部中断0为跳沿触发方式【例5-4】根据图5-9的中断服务程序流程,编写出中断服务程序。

假设现场保护只需要将PSW寄存器和累加器A的内容压人堆栈中保护起来。

解一个典型的中断服务程序如下:INT: CLR E A ;CPU关中断PUSH PSW ;现场保护PUSH ASETB E A ;CPU开中断中断处理程序段CLR E A ;CPU关中断POP A ;现场恢复POP PSWSETB E A ; CPU开中断RETI ;中断返回,恢复断点上述程序有几点需要说明的是:⑴本例的现场保护假设仅仅涉及到PSW和A的内容,如果还有其它的需要保护的内容,只需要在相应的位置再加几条PUSH和POP指令即可。

第5章 中断系统

第5章 中断系统
5.1 中断的概念 5.2 8051的中断源和中断控制寄存器 5.3 中断处理的过程 5.4 中断响应等待时间 5.5 C51中断服务函数 5.6 中断系统的应用 5.7 实践训练—键控彩灯 5.8 习题
计算机与外设交换信息时,慢速工作的外设与快速工作的CPU之间形成一个很大的矛盾。 例如:计算机与打印机相连接,CPU处理和传送字符的速度是微秒级的,而打印机打印字符 的速度远比CPU慢。CPU不得不花大量时间等待和查询打印机打印字符。中断就是为解决这 类问题而提出的。
02
02
Hale Waihona Puke 023.中断允许控制寄存器IE CPU对中断系统的所有中断以及某个中断源的开放和屏蔽是由中断允许控制寄存器IE控制 的。IE的状态可通过程序由软件设定。某位设定为1,相应的中断源中断允许;某位设定为0, 相应的中断源中断屏蔽。CPU复位时,IE各位清0,禁止所有中断。IE的结构、位名称和位地址 见表5-3。
03
4.中断返回 中断服务程序的最后一条指令必须是中断返回指令RETI。RETI指令能使CPU结束中断服务程序的执 行,返回到曾经被中断过的程序处,继续执行主程序。RETI指令的具体功能如下。 (1)恢复断点地址 将中断响应时压入堆栈保存的断点地址从栈顶弹出送回PC,CPU从原来中断的地方继续执行程序。 注意,不能用RET指令代替RETI指令,因为用RET指令虽然也能控制PC返回到原来中断的地方,但 RET指令没有清0中断优先级状态触发器的功能,中断控制系统会认为中断仍在进行,其后果是与此同级 的中断请求将不被响应。 若用户在中断服务程序中进行了入栈操作,则在RETI指令执行前应进行相应的出栈操作,使栈顶指 针SP与保护断点后的值相同,即在中断服务程序中PUSH指令与POP指令必须成对使用,否则不能正确 返回断点。 (2)开放同级和低级中断 上述中断响应过程大部分操作是CPU自动完成的,用户只需要了解来龙去脉。而用户需要做的事情是 编制中断服务程序,并在此之前完成中断初始化,即设置堆栈,定义外中断触发方式,定义中断优先级, 开放中断等。

单片机应用技术项目式第5章

单片机应用技术项目式第5章

中断入口 地址
中断入口 地址区
0003H 0003H~000AH
0013H 0013H~001AH
000BH 000BH~0012H
001BH 001BH~0022H
0023H 0023H~002AH
5.2 单片机中断系统
5.2.1 中断的组成
(TCON.0)
IT0=0 INT0
IT0=1
T0
(TCON.2)
ES=1,允许串行口中断 ES=0,禁止串行口中断
1)若总中断允许EA=1,且某中断的中断允许控制位置位,则该中断才能被允许。
2)若总中断允许EA=0,则不管中断允许位是否置位,该中断都不能被允许,即
所有的中断都是被禁止的。
3)若总中断允许EA=1,则要关断某个中断时,只要将该中断对应的中断允许位
清零即可。
3、与中断有关的技术名词
(1)中断系统:能够实现中断处理功能的部件。 (2)中断源:引起中断原因的设备部件,或引起程序中断的事件。 (3)主程序:在中断之前CPU正在执行的程序。 (4)中断请求(又称中断申请):中断源要求服务的请求。 (5)中断响应:CPU对中断源提出的中断请求的接受。 (6)中断处理(又称中断服务):对引起中断的临时事件处理的整个过程。 (7)中断返回:事件处理完后CPU再回到原程序被中止的位置,继续执行主程序。 (8)中断服务程序(中断处理子程序):CPU对中断响应后所执行的处理程序。 (9)断点:主程序被断开的位置(地址)。
EX1=1,允许外部中断1中断
EX1
EX1=0,禁止外部中断1中断
定时/计数器0中断允许位 ET0=1,允许定时/计数器0中断 ET0
ET0=0,禁止定时/计数器0中断
定时/计数器1中断允许位 ET1=1,允许定时/计数器1中断 ET1

第五章 中断系统

第五章  中断系统

四、中断系统的功能 一般来说,一个中断系统具有以下功能: (一)实现中断及返回 当某中断源发出中断请求后,CPU应决定是否响应这个中断请求,如当前正 在执行更重要的工作可暂时不响应中断,若响应这个中断请求,CPU在当前指令 执行完后,就要保护断点地址和现场(即下条指令地址和相关寄存器内容),以便 执行完中断服务程序后能正确返回原处执行,然后转到需要处理的中断服务程序 的人口地址,去执行中断服务程序,当中断服务程序执行完毕再恢复现场和断点 ,去继续执行主程序。 (二)实现优先级排队 当计算机带有多个中断源时,可能会出现两个或两个以上中断源同时向CPU提 出中断请求的情况。这时CPU应能够根据事先确定的中断源的优先级别来先响应 高优先级的中断 并为它服务,然后再响应较低优先级的中断请求。 (三)实现中断嵌套 当CPU正在响应某一中断源的中断请求时,又有新的中断源发出请求,如果 新的请求的优先级别高于正在执行的中断源的优先级,则CPU暂停现行的服务程 序,转去执行更高级别的中断源的服务程序,执行完毕后再回到被中断的较低中 断源的服务程序继续执行,即实现了中断嵌套。若新的中断源的优先级别低于或 是等于正执行的中断源,则CPU不响应这个请求,直到正在处理的中断服务程序 执行完毕后,才去处理新的中断请求。
三、中断的分类 按中断产生的位置,中断可分为: (1)外部中断,或称外部硬件实时中断,它是由外部送到CPU的某一特定引脚 上产生的。 (2)内部中断,或称软件指令中断,是为了处理程序运行过程中发生的一些意 外情况或调试程序方便而提供的中断。 按接受中断的方式,中断可分为: (1)可屏蔽中断,可以通过指令使CPU根据具体情况决定是否接受中断请求。 (2)非屏蔽中断,只要中断源提出请求,CPU就必须响应,主要用于一些紧急 情况的处理,如掉电等。 以上从不同的角度对中断进行了分类,对于某一种类型的计算机可能只具备 其中的某几种方式,例如MCS—51就不具备非屏蔽中断方式。

单片机原理及接口技术课后习题答案 李朝青五

单片机原理及接口技术课后习题答案 李朝青五

单片机原理及接口技术课后习题答案课后习题答案 2009-11-22 15:13 阅读696 评论9字号:大中小第五章1、什么是中断和中断系统?其主要功能是什么?答:当CPU正在处理某件事情的时候,外部发生的某一件事件请求CPU迅速去处理,于是,CPU暂时中止当前的工作,转去处理所发生的事件,中断服务处理完该事件以后,再回到原来被终止的地方,继续原来的工作。

这种过程称为中断,实现这种功能的部件称为中断系统。

功能:(1)使计算机具有实时处理能力,能对外界异步发生的事件作出及时的处理(2)完全消除了CPU在查询方式中的等待现象,大大提高了CPU 的工作效率(3)实现实时控制2、试编写一段对中断系统初始化的程序,使之允许INT0,INT1,TO,串行口中断,且使T0中断为高优先级中断。

解:MOV IE,#097HMOV IP,#02H3、在单片机中,中断能实现哪些功能?答:有三种功能:分时操作,实时处理,故障处理4、89C51共有哪些中断源?对其中端请求如何进行控制?答:(1)89C51有如下中断源①:外部中断0请求,低电平有效②:外部中断1请求,低电平有效③T0:定时器、计数器0溢出中断请求④T1:定时器、计数器1溢出中断请求⑤TX/RX:串行接口中断请求(2)通过对特殊功能寄存器TCON、SCON、IE、IP的各位进行置位或复位等操作,可实现各种中断控制功能5、什么是中断优先级?中断优先处理的原则是什么?答:中断优先级是CPU相应中断的先后顺序。

原则:(1)先响应优先级高的中断请求,再响应优先级低的(2)如果一个中断请求已经被响应,同级的其它中断请求将被禁止(3)如果同级的多个请求同时出现,则CPU通过内部硬件查询电路,按查询顺序确定应该响应哪个中断请求查询顺序:外部中断0→定时器0中断→外部中断1→定时器1中断→串行接口中断6、说明外部中断请求的查询和响应过程。

答:当CPU执行主程序第K条指令,外设向CPU发出中断请求,CPU 接到中断请求信号并在本条指令执行完后,中断主程序的执行并保存断点地址,然后转去响应中断。

单片机原理第5章定时、计数器

单片机原理第5章定时、计数器

5.2.2 控制寄存器 控制寄存器TCON
5,控制寄存器TCON初始化设置 ,控制寄存器 初始化设置
0
0 1
0
1 0 1
0
0
0
0
复位时, 的所有位被清0. 复位时,TCON的所有位被清 的所有位被清 要启动,关闭 , 要启动,关闭TI, T0,需对 ,需对TR1,TR0用 , 用 软件设置: 软件设置: SETB TRx;启动 ; CRL TRx;关闭 ; 也可以用传送指令 MOV TCON,#50H , 同时启动T0, 同时 同时启动 ,T1同时 使用电平触发方式. 使用电平触发方式.
时钟 振荡 ÷12
2,脉冲计数 , 每来1个脉冲,计 每来 个脉冲, 个脉冲 数器加1. 数器加 .
C P U
T0 TL0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0
溢 出 启动 TH0 工作 方式
TCON
TMOD
中断
5.1 定时器的结构及工作原理
1,计数脉冲来源 ,
(P3.4)
INT0(INTI)=1 指令 SETB TR0(TR1) 启动定时/计数器 启动定时 计数器T0(T1) 计数器
1
5.2.2 控制寄存器 控制寄存器TCON
1,溢出标志位 TFx
0 1
TFl(TCON.7):T1溢出标志位.当T1溢出时由硬 : 溢出标志位 溢出标志位. 溢出时由硬 件自动使中断触发器TFl置1,并向 申请中断. 件自动使中断触发器 置 ,并向CPU申请中断. 申请中断 响应进入中断服务程序后, 当CPU响应进入中断服务程序后,TFl又被硬件 响应进入中断服务程序后 又被硬件 自动清0. TFl也可以用软件清 . 自动清 . 也可以用软件清0. 也可以用软件清 TF0(TCON.5):T0溢出标志位.其功能和操作同 : 溢出标志位 其功能和操作同TFl 溢出标志位.

第5章MCS-51的中断系统

第5章MCS-51的中断系统

例:写出INT1为低电平触发的中断系统初始化程序
SETB EA; SETB EX1 SETB PX1 CLR IT1
二、 中断服务程序
1、编写中断程序应注意以下几点: ① 为了要跳到用户设计的中断服务程序,在相应入口 地址安排一条跳转指令; ② 在中断服务程序的末尾,安排一条返回指令RETI; ③ 由于在响应中断时,CPU只自动保护断点,所以 CPU的其他现场的保护和恢复也必须由用户在中断服 务程序中安排。
1、T0/T1中断撤除:自动清除TF0 TF1
2、TX/RX中断撤除:不能自动撤除,必须软件清“0” CLR RI CLR TI ANL SCON ,#0FCH
3、外部中断请求的撤除
对于负边沿触发的外部中断,CPU在响应中断后是 用硬件自动清除中断请求标志IE0或IE1。
电平触发时,虽然自动清除中断请求标志IE0或IE1。但 不及时撤除低电平的话会重复响应中断,必须采取措施。
中断允许寄存器IE的单元地址是A8H,各控制位也可 位寻址,故既可以用字节传送指令也可以用位操作指 令来对各个中断请求加以控制。 例:开放T/C1的溢出中断
MOV IE,#88H;
SETB EA SETB ET1
二、 对中断优先级的控制
MCS-51具有两个中断优先级,可由软件设置每个中断 源为高优先级中断或低优先级中断,可实现二级中断 嵌套。
可在中断服务程序开 头安排如下程序: INSVR:ANL P1 ,#0FEHORL Fra bibliotek1,#01H …
RETI END
§4 中断系统的初始化及应用
一、中断系统的初始化 中断初始化是指用户对TCON、SCON、IE等特殊功能 寄存器中的各控制位进行赋值。
中断系统的初始化步骤: 1、 CPU开中断或关中断 2、 某中断源中断请求的允许或禁止(屏蔽) 3、 设定所用中断的中断优先级 4、若为外部中断,则应规定低电平还是负边沿的中断 触发方式

第五章 定时器计数器8253

第五章  定时器计数器8253

1方式----低电平输出(GATE信号上升沿重新计数) 可重复触发的单稳态触发器 1方式为可编程的单稳态工作方式。(平时gate无效) 情况一: (1)写入计数初值后,计数器并不立即开始工作; (2)门控信号GATE有效,才开始工作,使输出OUT变成低电平; (3)直到计数器值减到零后,输出才变高电平。见图6.5中①。 情况二: 21组16 在计数器工作期间,当GATE又出现一个上升沿时,计数器 重新装入原计数初值并重新开始计数,见图见图6.5中②。 21组17 如果工作期间对计数器写入新的计数初值,则要等到当前的 计数值计满回零且门控信号再次出现上升沿后,才按新写入的 计数初值开始工作,见图6.5所示③。21组1 2.
CLK WR
n=6
5 4 3 2 1 0

OUT
② ห้องสมุดไป่ตู้ATE
OUT
5
4
4
4
4
3
2
1
0
图6.8:8253的4方式时序波形
6. 5方式------单次负脉冲输出(硬件触发)
加1,计数脉冲是频率恒定的时钟脉冲
一次计数过程是指计数器从初值开始计数到0。
一段定时是指计数器从初值开始计数到0所经
历的时间段。
定时举例:
①计算机及电子系统中需要定时信号,如系统 的日历时钟,一天24小时的计时。动态存储器 的刷新,应用系统的定时中断、定时查询与检 测等称为日时钟。
②在监测系统中,对被测点的定时取样。 ③在读键盘时,为去抖,一般延迟10ms再读。
个字节),采用二进制计数。其初始化程序段为

MOV DX,43H
;命令口 ;2号计数器的初始化命令字 ;写入命令寄存器 ;2号计数器数据口

第5章 定时器计数器

第5章 定时器计数器
时软件清0 ) ✓ 使用中断方式时,此位作为中断请求标志位,进入中断服务程序
后由硬件自动清0
(2)TR1、TR0——计数运行控制位
✓ TR1(或TR0)=1,启动定时器/计数器工作 ✓ TR1(或TR0)=0,停止定时器/计数器工作。 ✓ 该位可由软件置1或清0(位操作)
7
定时器/计数器T1、T0工作方式
22
✓ 当T2MOD的DCEN=0时,T2为增1型重新装载方式
EXEN2=0时,T2计满回0溢出,TF2置1;陷阱寄存器RCAP2L、 RCAP2H中预置的16位计数初值重新再装入TL2、TH2中,自动进 行下一轮计数。
EXEN2=1时,T2操作方式照旧,但当T2EX(P1.1)产生负跳变时 触发三态门将RCAP2L、RCAP2H陷阱寄存器中的计数初值自动装 载到TL2和TH2中重新开始计数,EXF2置1并发出中断请求。
9
✓ 方式2(M1 M0=10B) 方式2为自动恢复初值(初值自动装入)的8位定时器/计数器。
TLx(x = 0,1)作为常数缓冲器,当TLx计数溢出时,TFx置1且
自动将THx中的初值送至TLx,开始重新计数。
【注】方式2可省去用户软件中重装初值的指令执行时间,可以
相当精确地确定定时时间。
10
✓ 方式3(M1 M0=11B) 相当于增加了一个8位定时器/计数器。
(2)T1工作在方式1( M1 M0 =01B )
12
(3)T1工作在方式2( M1 M0 =10B )
(4)T1设置在方式3( M1 M0 =11B )
当T0设置在方式3,再把T1也设成方式3,此时T1停止计数。
13
定时/计数器初始化步骤
(1)方式控制字送TMOD MOV TMOD,#——

单片机讲义(第五章MCS-51的中断系统)

单片机讲义(第五章MCS-51的中断系统)


5.6.2 跳沿触发方式(下降沿触发方式)
如果相继连续两次采样,一个机器周期采样到外部中断输入为高, 下一个机器周期采样为低,则置1中断申请触发器,直到CPU响应此 中断时,该标志才清0。这样不会丢失中断,输入的负脉冲宽度至少保
持12个时钟周期(若晶振频率为6 MHZ,则为2μs),才能被CPU采样到。
(2)用字节操作指令
MOV IP,#05H ;000 00101 或者用: MOV 0B8H,#05H ;B8H为IP寄存器的字节地址
5.5 外部中断的响应时间


从外部中断请求有效(外部中断请求标志置1)到转 向中断入口地址所需要的响应时间。 外部中断的最短响应时间为3个机器周期。其中中断
请求标志位查询占1个机器周期,而这个机器周期恰好是处于指令 的最后一个机器周期,在这个机器周期结束后,中断即被响应, CPU接着执行1条硬件子程序调用指令 LCALL以转到相应的中断服 务程序入口,则需要2个机器周期。

外部中断响应的最长时间为8个机器周期。执行RETI或
是访问IE或IP的指令,最长需要2个机器周期。而接着再执行的1条 指令,按最长的指令(乘法指令MUL和除法指令DIV)来算,需4 个机器周期。再加上硬件子程序调用指令LCALL的执行,需要2个 机器周期,所以,外部中断响应最长时间为8个机器周期。
5.3.3中断允许寄存器IE

IE中各位的功能如下:
(l)EA——中断允许总控制位 EA=0,CPU屏蔽所有的中断请求(CPU关中 断); EA=1,CPU开放所有中断(CPU开中断)。 (2)ES——串行口中断允许位 ES=0,禁止串行口发送/接收中断; ES=1,允许串行口发送/接收中断。 (3) ET1——定时器/计数器T1的溢出中断允许 位 ET1= 0,禁止T1计数溢出中断; ET1= 1,允许T1计数溢出中断。

第五章MCS-51单片机的硬件资源

第五章MCS-51单片机的硬件资源

单片机原理及应用

大 第五章MCS-51单片机的硬件资源

单 片
5.1 MCS-51的并行接口及其应用
机 原
5.2 MCS-51的中断系统
理 及
5.3 MCS-51的定时器/计数器
应 用
5.4 MCS-51的串行接口及串行通信



第五章MCS-51单片机的硬件资源
湘 5.1 MCS-51的并行接口及其应用
著 组
MOS输入电路,且能驱动四个LSTTL输入。P2口常用
作外部存储器的高八位地址口。当不用作地址口时,
P2口亦可作通用I/O口,这时它也是一个准双向I/O口。
第五章MCS-51单片机的硬件资源


大 读锁存器



机 原
内部总线

DQ

应 写入

锁存器 CP Q


组 读引脚
地址
控制
MUX
(b)p2口电路逻辑
理 处于截止状态。引脚上的外部信号即加在下面一个
及 三态缓冲器的输入端,又加在下拉FET的漏极,假
应 用
定在此之前曾输出锁存过数据0 ,则FET是导通的,
编 这样引脚上的电位就始终被钳位在0 电平,使输入
著 组
高电平无法读入。因此作为一般I/O口使用时,P0口
是一个准双向口,即输入数据时,应先向口写“1”,
原 理
P3·1 TxD (串行输出通道)

P3·2
INT0 (外中断0)
应 用
P3·3
INT1 (外中断1)
编 著
P3·4
T0 (定时器0外部输入)

MCS51单片机中断系统

MCS51单片机中断系统

中断程序入口地址
五个中断程序的入口地址为: 五个中断程序的入口地址为: 外中断0 INT0) 外中断0(INT0) :0003H 定时器0 T0) 定时器0(T0) :000BH 外中断1 INT1) 外中断1(INT1) :0013H 定时器1 T1) 定时器1(T1) :001BH 串行口(RI/TI) 串行口(RI/TI) :0023H
可归纳为下面两条基本规则: 可归纳为下面两条基本规则: (1)低优先级可被高优先级中断,反之则不能。 低优先级可被高优先级中断,反之则不能。 (2)同级中断不会被它的同级中断源所中断。 )同级中断不会被它的同级中断源所中断。
CPU正在执行高优先级的中断 正在执行高优先级的中断, 若 CPU 正在执行高优先级的中断 , 则不能被任何中断 源所中断。 源所中断。 中断优先级寄存器IP 其字节地址为B IP, 中断优先级寄存器IP,其字节地址为B8H。
寄存器名称 D7 定时器控制 TCON(88H TF1 寄存器 ) 位地址 8FH 串行口控制 SCON(98H) 寄存器 位地址 9FH 中断允许 IE(A8H) EA 寄存器 位地址 AFH 中断优先级 IP(B8H) 寄存器 位地址 D6 D5 TF0 8DH 9DH D4 D3 IE1 8BH D2 IT1 8AH D1 IE0 89H TI 99H ET0 A9H PT0 B9H D0 IT0 88H RI 98H EX0 A8H PX0 B8H
MCS-51复位后,IE清 MCS-51复位后,IE清0,所有中断请求被禁止。 复位后 所有中断请求被禁止。 若使某一个中断源被允许中断,除了IE IE相应的位的被 若使某一个中断源被允许中断,除了IE相应的位的被 还必须使EA =1。 EA位 置“1” ,还必须使EA位=1。 改变IE的内容,可由位操作指令来实现, IE的内容 改变IE的内容,可由位操作指令来实现,即: bit; SETB bit; bit。 CLR bit。 若允许片内2个定时器/计数器中断, 例5-1 若允许片内2个定时器/计数器中断,禁止其它 中断源的中断请求。编写设置IE IE的相应程序段 中断源的中断请求。编写设置IE的相应程序段 用位操作指令来编写如下程序段: (1)用位操作指令来编写如下程序段: CLR ES ;禁止串行口中断 EX1 禁止外部中断1 CLR EX1 ;禁止外部中断1中断 EX0 禁止外部中断0 CLR EX0 ;禁止外部中断0中断

51单片机中断系统

51单片机中断系统
计数初值由 C = (213-T0初值) 。
《测量与机电控制》核心课程
§5.5 中断系统
1、T0方式0 — 13位方式
振荡器 1/12
T0 TR0 GATE
INT0
+
计数脉冲输 入
定时 器
C/T=0
TL0 TH0 TF0
C/T=1 控制端 低5位 8

&
13位计数器
计数 器
《测量与机电控制》核心课程
在TMOD中,各有一个控制位(C/T),分别用于 控制定时/计数器T0和T1是工作在定时器方式还是计数器 方式。
《测量与机电控制》核心课程
§5. 0
TH TL
TH TL0
1

溢出
1
0
溢出

启动 / 停
理器μP
止 内部总线
工作方式 工作方式
TCON
TMOD
微处理器与T/C的关系
计数输入端P3.4/P3.5作为边沿触发的外部中断的输入, 这时C/T工作于计数方式,计数的初始值为FFH。 (2)利用逻辑电路实现外部中断:
5V
INT0
A
ORG
0003H
B
AJMP INT0
OC门
P1.0 P1.1 P1.2
C INT0:PUSH PSW PUSH A JB P1.2, EI1 JB P1.1, EI2 JB P1.0, EI3 《。测。量与。机电。控制》核心课程
单片机的中断为固定入口式中断,即一响应中断就转入固定入
口地址执行中断服务程序。这些单元中往往是一些跳转指令。
中断优先级(2个)
每个中断源都可由程序指定为高优先级或底优先《级测。量与机电控制》核心课程

单片机应用技术(第四版)杨宏丽章 (5)

单片机应用技术(第四版)杨宏丽章 (5)
(2) 本实训步骤1)和步骤2)相比,硬件电路一样,效果也 一样,都采用定时器定时,但二者实现方法不同。前者采用查 询工作方式,在1 s定时程序期间一直占用CPU;后者采用中断 工作方式,在1 s定时程序期间CPU可处理其它指令,从而可充 分发挥定时/计数器的功能,大大提高CPU的效率。
第5章 定时与中断系统
;设置灯右循环次 ;设置灯右
;设置右循环标志
;设置灯左循环次
第5章 定时与中断系统
DELAY: MOV MOV MOV MOV SETB
LP1: JBC SJMP
LP2: MOV MOV DJNZ RET
R5,#14H TMOD,#10H TH1,#3CH TL1,#0B0H TR1 TF1,LP2 LP1 TH1,#3CH TL1,#0B0H R5,LP1
;重新置定时器初
值Leabharlann MOV TL1,#0B0H
DJNZ R3,LP1
;未到1 s继续循环
第5章 定时与中断系统
2) 定时器中断方式
(1) 要求:信号灯循环显示,时间间隔为1 s。
(2) 方法:用定时器中断方式编制1 s的延时程序,实现信
号灯的控制。
采用定时器1,中断定时50 ms,用R3作50 ms计数单元,在
第5章 定时与中断系统
当定时/计数器设置为计数工作方式时,计数器对来自输 入引脚T0(P3.4)和T1(P3.5)的外部信号进行计数,外部脉冲 的下降沿将触发计数。在每个机器周期的S5P2期间采样引脚 输入电平,若前一个机器周期采样值为1,后一个机器周期采 样值为0,则计数器加1。新的计数值是在检测到输入引脚电 平发生1到0的负跳变后,于下一个机器周期的S3P1期间装入 计数器中的,可见,检测一个由1到0的负跳变需要两个机器 周期。所以,最高检测频率为振荡频率的1/24。计数器对外 部输入信号的占空比没有特别的限制,但必须保证输入信号 的高电平与低电平的持续时间大于一个机器周期。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
OP2:
LOOP:
MOV P1,A RL A LCALL DELAY AJMP LOOP
DELAY:
5. 2定时器/计数器系统
5. 1中断系统 5. 2 定时器/计数器系统 5. 2. 1 定时器/计数器概述 5. 2. 2 定时器/计数器结构及工作原理 5. 2. 3 定时器/计数器的控制 5. 2. 4 定时器/计数器的工作方式及其应用实例
5. 2. 1 定时器/计数器概述
定时器/计数器: 是指为了让单片机使用方便并增加一些的功能, 把定时电路集成在芯片中,这样就形成了定时器/计 数器。且片内集成两个可编程的定时器/计数器: TO和T1。它们既可以工作于定时模式,也可以工作 于外部事件计数模式。此外,T1还可以作为串行接 口的波特率发生器。 在单片机的控制应用,要实现定时或延时功能, 有3种主要方法:软件定时、硬件定时、可编程定时 器。
中断服务程序:
ORG 0100H PUSH ACC CLR A MOV R0,#00H SETB C RLC A MOV P1,A LCALL DELAY JNB ACC.7,LOOP1 CLR C RLC A MOV LCALL P1,A JB DELAY INC ACC.7,LOOP2 CJNE R0 POP R0,#03H,LOOP1 RET ACC …………;1秒延时
5. 2. 4定时器/计数器的工作方式 及其应用实例
二进制数表示为1111110000011。十六进制表示,高8位 为0FCH,放入TH1,即TH1=0FCH;低5位为03H。放入 TL1,即TL1=03H。 ⑵TMOD寄存器初始化 为把定时器/计数器1设定为方式0,则M1M0=00;为实 现定时功能,应使C/T=0;为实现定时器/计数器1的运行控 制,则GATE=0。定时器/计数器0不用,有关位设定为0。 因此TMOD寄存器应初始化为00H。 ⑶由定时器控制寄存器TCON中的TR1位控制定时的启动和 停止 TR1=1启动;TR1=0停止。
第5章 中断系统与定时器
5. 1中断系统 5. 2 定时器/计数器系统
5. 1中断系统
5. 1中断系统 5. 1. 1 中断的概念 5. 1. 2 中断源 5. 1. 3 中断控制 5. 1. 4 中断过程 5. 1. 5 中断应用实例 5. 2 定时器/计数器系统
5. 1. 1 中断的概念
1. 中断的定义 中断是指打断正在进行的工作,转而去处理另外 一件更紧急的事,处理完毕后转回来继续进行原来 的工作。
5. 1. 3 中断控制
中断控制: 中断控制是指提供给用户使用的中断控制手段, 实际上就是一些寄存器的位设置。在80C51单片机 中,用于此目的的控制寄存器共有4 个,即中断允 许控制寄存器(IE)、中断优先级控制寄存器(IP)、定 时器控制寄存器(TCON)以及串行口控制寄存器 (SCON)。
5. 1. 3 中断控制
5. 1. 3 中断控制
2.串行口控制寄存器SCON
SCON的字节地址为98H,位地址为9FH~98H。SCON中各 位的位符号和对应的位地址如下:
TI:串口发送中断标志位,一帧内部数据被送入发送缓冲器后 由硬件自动置1→发送中断请求 中断响应后,标志位需要用软件方式撤销 RI:串口接收中断标志位,一帧外部数据被送入接收缓冲器后 由硬件自动置1 →接收中断请求
5. 2. 4定时器/计数器的工作方式 及其应用实例
例题5.3:设某单片机系统的外接晶振频率为6MHz,使用定 时器1以方式0产生周期为500µ s的等宽正方波连续脉冲,并 由P1.0输出。以查询方式完成。 ⑴计算计数初值 欲产生500µ s的等宽正方波脉冲,只需在P1.0端以250µ s为周 期交替输出高低电平即可实现,为此定时间应为250µ s。使 用6MHz晶振,根据上例的计算,可知一个机器周期为2µ s。 方式0为13位计数结构。设待求的计数初值为X,则: (213-X)×2×10-6=250×10-6 求解得: X=213-(250÷2)=8067
5. 1. 1 中断的概念
3. 中断嵌套
5. 1. 2 中断源
80C51是一个多中断源的单片机,有3类共5个中 断源,分别是外部中断2个,定时中断2个和串行中 断1个。 1. 外部中断/INTO、/INT1 2. 定时中断TF0、TF1 3. 串行中断TI/RI
5. 1. 2 中断源
5个中断源的优先级别各不相同,它们的优先级排列 顺序如表5-1所示。

ES:串口中断允许位,1→允许,0→禁止 ET1和ET0:定时器中断允许位,1→允许,0→禁止 EX1和EX0:外部中断允许位,1→允许, 0→禁止
5. 1. 3 中断控制
4. 中断优先级控制寄存器IP 80C51的中断系统具有两个中断优先级,可实现 两级中断服务嵌套。各中断源的优先级由软件设定 中断优先级寄存器IP中的相应位的状态来决定。某 位设定为“1”,则相应的中断源为高优先级中断; 否则,相应的中断源为低优先级中断。单片机复位 时,IP各位清“0”, IP=00H,各中断源同为低优 先级中断。IP寄存器地址为0B8H,位地址为 0BFH~0B8H。IP中各位的位符号和对应的位地址 如下:
5. 1. 1 中断的概念
中断源、中断请求、中断服务等概念:
引起突发事件的来源称为中断源 中断源要求服务的请求称为中断请求 对中断请求提供的服务称为中断服务 中断管理系统处理事件的过程称为中断响应过程
5. 1. 1 中断的概念
2. 中断优先级 多个中断源发出中断申请时,CPU进行先后处理 的顺序为: (1)先处理优先等级高的中断,再处理优先等级低 的中断; (2)处理同一级别中断源的中断时,则按中断硬件 查询顺序进行排队,依次处理。
5. 2. 4定时器/计数器的工作方式 及其应用实例
1. 工作方式0 M1M0=00 工作方式0:13位计数、TH的8位和TL的低5位
5. 2. 4定时器/计数器的工作方式 及其应用实例
在工作方式0下,计数器的计数值由下式确定: N=213-X=8192-X 计数值范围是: 1~8192(213) 定时器的定时值由下式确定: T=N*Tcy=(8192-X)*Tcy 式中,Tcy为机器周期(Tcy=晶振周期×12)。
中断响应后,标志位需要用软件方式撤销
5. 1. 3 中断控制
3.中断允许控制寄存器IE CPU对中断系统所有中断以及某个中断源的开 放和屏蔽是由中断允许寄存器IE控制的。IE的字节 地址为0A8H,位地址为0AFH~0A8H。IE中各位的 位符号和对应的位地址如下:
5. 1. 3 中断控制
EA:中断总允许位,1→开放全部中断,0→禁止全部中
5. 2. 2 定时器/计数器结构及工作原理
1. 定时器/计数器的结构
主要由工作方式寄存器TMOD、控制寄存器TCON和初 值寄存器TLX、THX等工作部件组成。 80C51单片机定时器/ 计数器的结构图如图5-7所示。
5. 2. 3 定时器/计数器的控制
80C51单片机定时器/计数器的工作由两个特殊 功能寄存器控制,即工作方式控制寄存器TMOD和 定时控制寄存器TCON。TMOD用于设置其工作方 式;TCON用于控制其启动和中断申请。
5. 1. 3 中断控制
1. 定时器控制寄存器TCON 在中断系统中,采用何种中断,用何种方式触 发,可通过特殊功能寄存器TCON来进行控制。 TCON的字节地址为88H,位地址8FH~88H , TCON中各位的位符号和对应的位地址如下:
5. 1. 3 中断控制
IT0:外部中断0触发方式选择位 0:低电平触发 1: 负跳变触发 IE0:外部中断0中断请求标志 IT1、IE1 类似 IT0、IE0,分别是外部中断1触发方式选 择位和外部中断1中断请求标志 TR0:定时/计数器0运行控制位 0:停止 1:运行 TR1:定时/计数器1运行控制位 0:停止 1:运行 TF0:定时/计数器0中断请求标志位 TF1:定时/计数器1中断请求标志位 TR1、TF1 类似 TR0、TF0,用作定时/计数器1的启停控 制位和中断请求标志位
5. 1. 4 中断过程
80C51的中断过程包括中断请求、中断响应、中 断处理和中断返回。 1. 中断请求 (1)外中断采样 外中断请求的方式有如下2种: ①电平方式的外中断请求 ②脉冲方式的外中断请求 (2)中断查询
5. 1. 4 中断过程
2. 中断响应
中断响应是指CPU检测到中断请求信号后,在 满足条件下对其进行响应。中断响应是对中断源提 出的中断请求的接受,在中断查询之后进行的。 (1)中断响应条件 (2)中断响应时间 (3)中断请求的撤消
5. 2. 3 定时器/计数器的控制
2. 定时控制寄存器(TCON)
TF0(TCON.5)—定时器0溢出标志 当定时器0计满溢出时,由硬件使TF0置“1”,并且申请中断。进入中 断服务程序后,由硬件自动清“0”,在查询方式下用软件清“0”。 TR0(TCON.4)—定时器0运行控制位 当TR0=0时,停止T0定时器/计数器的工作;当TR0=1时,启动T0定 时器/ 计数器的工作。此位由软件置“1”或清“0”,所以,用软件控 制定时器/计数器的启动与停止。
5. 2. 3 定时器/计数器的控制
1. 定时工作方式寄存器(TMOD)
TMOD的格式如下:
(1)GATE ─门控位 当GATE=O时,只要用软件使TCON中的TRO或TR1为“1”,就可 以启动定时器/计数器工作;当GATA=1时,用软件使TRO或TR1为 “1”,同时外部中断引脚的TO或的H1也为高电平时,才能启动定 时器/计数器工作。即启动加上了INTO或INT1引脚为高电平这一条 件。 (2)C/(/T) ─定时器/计数器选择位 当C/(/T)=0为定时器工作方式;当C/(/T)=1 为计数器工作方式。
5. 1. 3 中断控制
PS:串口优先级设定位,1→高优先级,0→低优先级
PT1和PT0:T1和T0的优先级设定位,1→高优先级, 0→ 低优先级
相关文档
最新文档