51单片机中断系统

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
计数初值由 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 中断系统
中断控制的寄存器
与中断控制有关的控制寄存器有4个:
TCON----定时控制寄存器, IE----中断允许控制寄存器, IP----中断优先级控制寄存器, SCON----及串行口控制寄存器。
中断响应基本规则 (1)低优先级中断可被高优先级中断所中断; (2)一种中断一旦被响应,与它同级的中断 不能再 响应; (3)同一级别的各种中断源同时请求中断时,CPU 响应中断的顺序为: INT0 、T0、INT1、T1、串行口; (4)几个中断同时发生,CPU响应优先级最高的中 断。
《测量与机电控制》核心课程
§5.5 中断系统
中断响应过程
中断处理过程一般分为3阶段:中断响应、中断处理、中断返回。
中断申请
中断响应条件: EA=1并且中断源的中断允许
N 响应条件 是否满足
Y Y 中断是否
受阻
N
断点地址压栈
中断受阻的情况 1、同级或高级的中断已在进行中; 2、当前的机器周期不是正在执行的 指令的最后一个周期; 3、正在执行的指令是返回指令或是 对专用寄存器IE、IP进行读写的指令 ,只有在执行这些指令之后,至少在
GATE 1
INT0
C/T=1
& ≥1
TL0 TF0 TH0
《测量与机电控制》核心课程
§5.5 中断系统
4、T0方式3 — 2个8位方式 (T1无)
振荡器
T0 TR0 GATE INT0
1/12 C/T=0
C/T=1
TL0 TF0
控制端 8位
& +
振荡器 1/12 TR1
TH0 TF1
8位
《测量与机电控制》核心课程
§5.5 中断系统
T0被设置为方式3时,占用了T1的中断源,故此时T1只能用于不需要 中断的场合。
一般情况下,当T0定义为工作方式3时,T1作为串行口的波特率发生 器使用。
振荡器 T1
1/12
C/T=0
C/T=1
TL1 TH1 串口
振荡器
1/12
C/T=0
T1
C/T=1
TL1
串口
TH1
T0被设置为方式3时,T1工作于方式0/方式1和方式2的示意图
中断服务程序入口地址
中断标志位
INT0(P3. 2)
0003H
IE0(TCON . 1)
T0(内部)
000BH
TF0 (TCON . 5)
INT1( P3.3 )
0013H
IE1(TCON . 3)
T1(内部)
001BH
TF1 (TCON . 7)
串行口中断(内部) 0023H
RI、TI(SCON . 0、1)
中断地址入PC
执行一条其它指令后,才会响应。
《测量与机电控制》核心课程
§5.5 中断系统
中断服务程序
关中断
恢复现场
保护现场
开中断
开中断
中断请求撤回
中断服务
中断返回
关中断
中断地址弹出PC 断点地址入PC
《测量与机电控制》核心课程
§5.5 中断系统
响应时间--从查询中断请求标志位到转向中断服务入口地址所需
《测量与机电控制》核心课程
§5.5 中断系统
(1)加法计数器
❖ 作为定时器时,加法计数器对内部机器周期脉冲计数;
❖ 作为计数器时,加法计数器对芯片引脚P3.3/P3.4输入的外部 脉冲计数(下降沿)。
❖ 加法计数器的初始值可由程序设定,并且加法计数器的内容 可用程序读到CPU中。
(2)方式寄存器 TMOD
边沿触发方式的最大的优点是中断请求信号不会丢失(负脉冲的宽度应 大于1个机器周期),CPU响应中断后,硬件自动将标志位清零。 电平触发方式在CPU响应中断后,不能自动清除中断请求信号(故在 CPU中断返回之前,外部中断信号必须无效,否则会再次响应)。
电路:
清除中断请求信号的方法如下: 清除程序:
INT0
中断的特点?
(1)5个中断源:INT0、INT1、C0/T0、C1/T1、串行口中断; (2)具有优先级管理功能,2个优先级,其中每个中断源的优先级可 由程序指定;
(3)每个中断源都有各自的中断标志位。
《测量与机电控制》核心课程
§5.5 中断系统
§5.5.1 中断结构
IT0=0
INT0IT0=1
T0
《测量与机电控制》核心课程
§5.5 中断系统
4、T/C的工作方式
定时器/计数器共有四种工作方式
以工作方式0为例: (1)由TL的低5位与TH8位构成13位T/C;
可用程序将0~8191中的某一个数送入TL、TH作为初始值,加 法计数器溢出后,必须重新对TL/TH 赋初始值。 (2)作为计数器时,外部计数脉冲的频率应小于1/24fosc,并且 高、低电平的宽度应大于一个机器周期(CPU在每一个机器周 期的S5P2期间采样P3.4或P3.5)。 (3)定时时间由 T = (213-T0初值) * 机器周期Tcy;
8051
P1.0
QD
S CLK
外接中断 请求信号
正脉冲
ANL P1, #0FEH ORL P1, #01H RETI
P1.0输出负脉冲使D触发器 的Q端为1撤消引起重复中 断的INT0低电平信号。
《测量与机电控制》核心课程
§5.5 中断系统
2、定时器/计数器中断(内部) 当C/T溢出时,由硬件自动置位TF0/TF1,CPU响应中断后,由 硬件自动清除中断标志。 另可由程序对TF0/TF1置位或清除。
若GATE=0,计数不受外部电平控制(仅由TRX决定,X为0/1)。 若GATE=1,此时需TR0/TR1=1且P3.2/ P3.3=1,才允许T0/T1计数。 利用此特点,可测量P3.2或P3.3引脚上出现的正脉冲宽度。
《测量与机电控制》核心课程
§5.5 中断系统
(3)控制寄存器 TCON
❖ 作用:控制T0/C0、T1/C1的运行; ❖ 格式:(仅用高4位,低4位用于中断)
D7
D6
D5
D4
TF1
TR1
TF0
TR0
运行
运行
TF1、TF0溢出置1,转中断服务程序后自动清零。
(中断标志位TF可由硬件自动清零,也可由程序清零)
由特殊寄存器TCON的低4位(高4位与定时/计数有关)决定。
D3
D2
DO
IE1
IT1
D1
IE0
IT0
IEX:外部中断请求(1-有,0-无)0:电平触发
ITX:外部中断触发方式,
1:边沿触发
(X=0指IE0/IT0;X=1指IE1/IT1)
《测量与机电控制》核心课程
§5.5 中断系统
两种触发方式的区别
§5.5 中断系统
§5.6 定时器/计数器
1、作用:定时、计数、波特率发生器; 2、主要特性: (1)具有两个可编程的定时/计数器T0/C0和T1/C1; (2)、每个定时器/计数器都有4种工作方式; (3)任一定时器/计数器在定时/计数到设定值后,可由程序安排产生 中断。 3、结构: ➢ 加法计数器TL(低8位)、TH(高8位)寄存器; ➢ TMOD方式寄存器--决定工作方式 ➢ TCON控制寄存器---启动停止和定时器的状态
1、定时控制寄存器TCON
D7 D6 D5 D4 D3 D2 D1 D0
TF1
TF0
IE1 IT1 IE0 IT0
中断请求标志
触发方 0 低电平 式选择 1 下降沿
《测量与机电控制》核心课程
§5.5 中断系统
2、串行口控制寄存器SCON
D7 D6 D5 D4 D3
3、中断允许控制寄存器IE
D2 D1 D0
§5.5 中断系统
2、T0方式1 — 16位方式
振荡器
T0 TR0 GATE INT0
1/12 C/T=0
C/T=1
TL0 TH0 TF0
控制端 8位 8位
& +
16位计数器
《测量与机电控制》核心课程
§5.5 中断系统
3、T0方式2 — 8位自动装入时间常数方式
振荡器 1/12 C/T=0
T0 TR0
的机器周期数。
(1)最快响应时间
以外部中断的电平触发为最快。
从查询中断请求信号到中断服务程序需要三个机器周期:
1个周期(查询)+2个周期(长调用LCALL)
(2)最慢响应时间
若当前指令是RET、RETI和IP、IE指令,紧接着下一条是
乘除指令发生,则最长为8个周期:
(2个周期执行当前指令(其中含有1个周期查询)+4个周期乘
《测量与机电控制》核心课程
§5.5 中断系统
定时器、计数器对输入信号的要求 1、当输入信号产生负跳变时,计数器增1。每个机器周 期对外部输入进行采样一次。 2、外部输入的计数脉冲的最高频率为振荡器频率的1/24。 3、输入电平至少要保持一个机器周期。
《测量与机电控制》核心课程
§5.5 中断系统
门控方式
3、串行口接收/发送中断 (内部) 完成一帧信号的接收/发送时,由硬件自动置中断标志位
(特殊寄存器SCON的RI/TI),CPU响应中断后,必须由软件清 除。
《测量与机电控制》核心课程
§5.5 中断系统
中断的应用
例 :多中断源(中断信号扩展): (1)利用C/T计数输入端(T0/T1)实现外部中断:
Contents 本章知识点
1、中断的概念 2、中断结构及中断响应过程 3、定时器/计数器结构
《测量与机电控制》核心课程
§5.5 中断系统
中断的概念?
CPU暂时中止其正在执行的程序,转去执行请求中断的那个外设或 事件的服务程序,等处理完毕后再返回执行原来中止的程序, 叫做中 断。
中断的意义?
⑴ 提高CPU工作效率; ⑵ 具有实时处理功能; ⑶ 具有故障处理功能; ⑷ 实现分时操作。
《测量与机电控制》核心课程
§5.5 中断系统
定时/计数器的定时和计数功能
定时/计数器的核心部件是二进制加1计数器(TH0、 TL0或TH1、TL1) 。
1、定时功能----计数输入信号是内部时钟脉冲,每个机 器周期使寄存器的值加1。所以,计数频率是振荡频率 的1/12。 2、计数功能----计数脉冲来自相应的外部输入引脚,T0为 P3.4,T1为P3.5。
作用:用来选择定时器/计数器的工作方式;
格式:(以T0为例)
D3 D2 D1 D0
T1/T0方式0:13位定时/计数 方式1 :16位定时计数
GATE C0/T0 M1 M0 门控位 功能选择 工作方式选择
T1/T0 方式2 :8位自动转载 定时计数
T0方式3: T0分为两个8位 (T1无) 的定时计数
除指令+2个周期长调用=8个周期。)
《测量与机电控制》核心课程
§5.5 中断系统
中断返回—中断处理程序的最后一条指令是RETI,它使CPU结束 中断处理程序的执行,返回到断点处,继续执行主程序。
三种中断的区别 1、外部中断(P3.2/P3.3)
激活方式:
(1)电平触发(低电平有效);(2)边沿触发(下降沿有效)
IT1=0
INT1IT1=1
T1
TX RX
TCON
IE
IP
IE0
EX0
PX0
TF0
ET0
PT0
IE1
EX1
PX1
TF1
ET1
PT1
TI
ES
PS
≥1
RI
EA
高级
内 部 查 询
低级
内 部 查 询
《测量与机电控制》核心课程
§5.5 中断系统
中断源(5个)
中断源是指能发出中断请求,引起中断的装置或事件。
中断源
TI RI 串行中断请求标志
D7 D6 D5 D4 D3 D2 D1 D0
EA
ES ET1 EX1 ET0 EX0
0 禁止,1允许
4、中断优先级控制寄存器(IP)
D7 D6 D5 D4 D3 D2 D1 D0
PS PT1 PX1 PT0 PX0
0 低级别,1高级别
《测量与机电控制》核心课程
§5.5 中断系统
相关文档
最新文档