51单片机的内部资源

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

IP各个位的含义: (1)PS——串行口中断优先级控制位 1:高优先级中断; 0:低优先级中断。 (2)PT1——定时器T1中断优先级控制位 1:高优先级中断; 0:低优先级中断。
(3)PX1——外部中断1中断优先级控制位
1:高优先级中断;
0:低优先级中断。 (4)PT0——定时器T0中断优先级控制位 1:高优先级中断; 0:低优先级中断。
(2)电平方式外部中断请求的撤消,需外接电路来取消。
在中断响应后把中断请求信号引脚从低电平强制改变为高电平。可 在系统中加入如图所示电路。
3.应用软件清除相应标志(串行口中断请求的撤消)
对于串行接收/发送中断请求,在 CPU 响应中断后,必 须在中断服务程序中应用软件清除RI、TI中断标志,才能撤 除中断。(硬件置位,软件清除) 。 响应串行口的中断后, CPU 无法知道是接收中断还是发 送中断,还需测试这两个中断标志位的状态,以判定是接收 操作还是发送操作,然后才能清除。所以串行口中断请求的 撤消只能用软件清除 CLR TI ;清TI标志位 CLR RI ;清RI标志位
程序执行转而为申请中断的对象服务称中断响应。 中断服务程序:为服务对象服务的程序称为中断服务程序。 断点:现行程序被中断的地址称为断点。 中断返回:中断服务程序结束后返回到原来程序称中断返回。
19:35 4
二、MCS-51中断系统的结构
MCS-51有5个中断请求源,两个中断优先级,可两级嵌套。
MCS-51五个中断源中包括二个外部中断源和三个内部中 断源。
0:禁止串行口中断;
1:允许串行口中断。
(3)ET1:定时器/计数器T1的溢出中断允许位
0:禁止T1溢出中断;
1:允许T1溢出中断。 (4)EX1:外部中断1中断允许位 0:禁止外部中断1中断; 1:允许外部中断1中断。
(5)ET0:定时器/计数器T0的溢出中断允许位
0:禁止T0溢出中断; 1:允许T0溢出中断。 (6)EX0:外部中断0中断允许位。 0:禁止外部中断0中断;
3 中断允许寄存器IE
CPU对中断源的开放或屏蔽,由片内的中断允许寄存器IE 控制。字节地址A8H,可位寻址。格式如下:
IE寄存器中各位设置: 为0时,禁止中断;为 1时,允许中断。 系统复位后IE寄存器中各位均为0,即此时禁止所有中断。
MCS-51复位后,IE清0,所有中断请求被禁止。
若使某一个中断源被允许中断,除了IE相应的位的被置 “1” ,还必须使EA位=1。
( 3 ) IT1—外部中断请求 1 为跳沿触发方式还是电平触发方式, 意义与IT0类似。
(4)IEBaidu Nhomakorabea—外部中断请求1的中断请求标志位,意义与IE0类似。
(5)TF0—T0溢出中断请求标志位。
T0计数后,溢出时,由硬件置“1”TF0,向CPU申请中断, CPU 响应TF0中断时,硬件自动清“ 0” TF0 ,TF0也可由软件 清0。 (6)TF1—T1的溢出中断请求标志位,功能和TF0类似。 TR1、TR0 2个位与中断无关。 当MCS-51复位后,TCON被清0,则CPU关中断,所有中断 请求被禁止。
中断级别 最高
最低
MCS-51是一个二级中断系统。
优先级对中断响应的影响
– CPU同时接收到几个中断时,首先响应 优先级别最高的中断请求。 – 正在进行的中断过程不能被新的同级或 低优先级的中断请求所中断。
– 正在进行的低优先级中断服务,能被高 优先级中断请求所中断。这称之为“中 断嵌套”。
中断嵌套的概念:
(5)PX0——外部中断0中断优先级控制位
1:高优先级中断; 0:低优先级中断 由软件可改变各中断源的中断优先级。 系统复位后IP寄存器中各位均为0,即此时全部设定为
低中断优先级。
在同时收到几个同一优先级的中断请求时,优先响应哪一个中 断,取决于内部的查询顺序。查询顺序如下:
中断源 外部中断0 T0溢出中断 外部中断1 T1溢出中断 串行口中断
(2)用字节操作指令 MOV 或: MOV IP,#05H 0B8H,#05H ;B8H为IP寄存器的字节地址
五、响应中断请求的条件
一个中断请求被响应,需满足以下必要条件: (1)IE寄存器中的中断总允许位EA=1。 (2)该中断源发出中断请求,即该中断源对应的中断请求标 志为“1”。
(3)该中断源的中断允许位=1,即该中断没有被屏蔽。
2. SCON为串行口控制寄存器
SCON为串行口控制寄存器,字节地址为98H。串行口的发送中 断和接收中断的中断请求标志TI和RI,格式如下:
各标志位的功能: (1)TI—发送中断请求标志位。串口每发送完一帧串行数据 后,硬件自动置“1”TI。响应中断后,必须在中断服务程 序中用软件对TI标志清“0”。 (2)RI—接收中断请求标志位。串口接收完一个数据帧,硬 件自动置“1”RI标志。响应中断后,必须在中断服务程序 中用软件对RI标志清“0”。
主程序
事件1 1 子程序 事件2 2 子程序
中断 中断
例2
设置IP寄存器的初始值,使2个外中断请求为高优先级,
其它中断请求为低优先级。
(1)用位操作指令 SETB SETB CLR PX0 PX1 PS ;串口为低优先级中断 ;2个外中断为高优先级
CLR
CLR
PT0
PT1
;2个定时器/计数器低优先级中断
中断响应
中断请求
执行主 程序
断点
继续执行 主程序
执行 中断 处理 程序
中断返回
主程序:CPU正常情况下运行的程序称为主程序。 中断源:把向CPU提出中断申请的设备称为中断源。 中断请求:由中断源向 CPU 所发出的请求中断的信号称中断 请求。
中断响应: CPU 在满足条件情况下接受中断申请,终止现行
EX1
EX0 ET0 ET1 EA
;禁止外部中断1中断
;禁止外部中断0中断 ;允许定时器/计数器T0中断 ;允许定时器/计数器T1中断 ;CPU开中断
(2)用字节操作指令来编写: MOV IE,#8AH
或者用:
MOV
0A8H,#8AH
;A8H为IE寄存器字节地址
4 中断优先级寄存器IP
若 CPU 正在执行高优先级的中断,则不能被任何中断源 所中断。 中断优先级寄存器IP,其字节地址为B8H。
二个外部中断源 INT0 和 INT1 ,外部设备的中断请求信
号、掉电等故障信号都可以从INT0或INT1引脚输入。 三个内部中断源为定时器 /计数器 T0 和T1 的定时 / 计数 谥出中断源和串行口发送或接收中断源。 中断系统结构示意图如下图所示。
TCON
IT0 1 0 IE0 1 ET0 1 TF0 IT1 1 0 IE1 1 ET1 1 TF1 EX0 1
( 1 ) INT0 — 外部中断请求 0 ,由引脚 INT0 (P3.2) 输入,中断 请求标志为IE0。
( 2 ) INT1— 外部中断请求 1 ,由引脚 INT1 (P3.3) 输入,中断 请求标志为IE1。 外部中断请求有二种信号触发方式,即电平有效方式和 跳变有效方式,可通过设置有关控制位进行定义。 当设定为电平有效方式时,若INT0或INT1引脚上采样到 有效的低电平,则向CPU提出中断请求;当设定为跳变有效 方式时,若 INT0 或 INT1 引脚上采样到有效负跳变,则向 CPU 提出中断请求。
各标志位的功能: ( 1 ) IT0— 选择外中断请求 0 为跳沿触发方式还是电平触发方 式: IT0=0,为电平触发方式。 IT0=1,为跳沿触发方式。 可由软件置“1”或清“0”。
(2)IE0—外部中断请求0的中断请求标志位。
IE0=0,无中断请求。
IE0=1,外部中断0有中断请求。当CPU响应该中断,转向中 断服务程序时,由硬件清“0”IE0。
对于定时器/计数器T0、T1 的溢出中断和采用跳变触发 方式的外部中断请求,在 CPU 响应中断后,由内部硬件自动 清除中断标志TF0和TF1、IE0和IE1,而自动撤除中断请求。 (硬件置位,硬件清除)。
2 .采用外加 硬件结合软件清除中断请求(外部中断请 求的撤消)
(1)跳沿方式外部中断请求的撤消是自动撤消的。
IE对中断的开放和关闭为两级控制
总的开关中断控制位EA(IE.7位): EA=0,所有中断请求被屏蔽。 EA=1,CPU开放中断,但五个中断源的中断请求是否允许, 还要由IE中的5个中断请求允许控制位决定。
IE中各位的功能如下:
(1)EA:中断允许总控制位 0:CPU屏蔽所有的中断请求(CPU关中断); 1:CPU开放所有中断(CPU开中断)。 (2)ES:串行口中断允许位
去执行完一条指令,才能响应新的中断请求。
六、中断请求的撤消
CPU 响应中断请求,转向中断服务程序执行,在其执行 中断返回指令(RETI)之前,中断请求信号必须撤除,否则 将会再一次引起中断而出错。 中断请求撤除的方式有三种,即: 1. 由单片微机内部硬件自动复位 (定时器/计数器中断 请求的撤消 )。
1:允许外部中断0中断。
改变IE的内容,可由位操作指令来实现,即:
SETB
bit;
CLR bit。 例1 若允许片内2个定时器/计数器中断,禁止其它中断源的中
断请求。编写设置IE的相应程序段
(1)用位操作指令来编写如下程序段: CLR ES ;禁止串行口中断
CLR
CLR SETB SETB SETB
IE
EA 1
IP
PX0 1 0 PT0 1 0 1
硬件查询
自 然 优 先 级 中断源 高 级
INT0 T0 INT1 T1 RX TX
中断入口
EX1 1
PX1 1 0 PT1 1 0 0 自 然 优 先 级 中断源
低 级
RI TI
ES 1 ≥1
PS 1 0
中断入口
SCON
三、中断请求源
51单片机的五个中断请求源 :
(4)无同级或更高级中断正在被服务。
中断响应是有条件的,遇到下列三种情况之一时,中断 响应被封锁: (1)CPU正在处理同级的或更高优先级的中断。 (2)所查询的机器周期不是所当前正在执行指令的最后一个 机器周期。只有在当前指令执行完毕后,才能进行中断响应。 (3)正在执行的指令是RETI或是访问IE或IP的指令。需要再
七、中断矢量(中断入口地址):
当CPU响应中断时,由硬件直接 产生一个固定的地址,即矢量地址 ,由矢量地址指出每个中断源设备 的中断服务程序的入口,这种方法
中断源 外部中断0 (INT0) 定时器/计数器0 (T0) 外部中断1 (INT1) 定时器/计数器1 (T1) 中断矢量 地址 0003H 000BH 0013H 001BH
( 3 )定时器 / 计数器 T0 溢出中断请求,中断请求标志为 TF0 (P3.4) 。
( 4 )定时器 / 计数器 T1 溢出中断请求,中断请求标志为 TF1 (P3.5) 。 定时中断是为满足定时或计数的需要而设置的。当计数 器发生计数溢出时,表明设定的定时时间到或计数值已满, 这时可以向CPU申请中断。由于定时器/计数器在单片微机芯 片内部,所以定时中断属于内部中断。 (5)串行口中断请求,中断请求标志为TI或RI。 串行中断是为串行数据传送的需要而设置的。每当串行 口发送或接收一组串行数据时,就产生一个中断请求。
四、中断有关的寄存器
1. 特殊功能寄存器TCON
特殊功能寄存器TCON和SCON的相应位锁存各中断请求标志。 TCON为定时器/计数器的控制寄存器,字节地址为88H。 包含INT0,INT1,T0 及 T1的中断标志。
(1)T0和T1的溢出中断请求标志位TF1和TF0 (2)外部中断请求标志位IE1与IE0。
第5章 51单片机的内部资源
本章介绍了51单片机的内部资源,包括: 1、中断系统 2、定时/计数器
3、串口接口。
中断功能使单片机具有了实时处理能力,定时功能使 单片能够处理与时间和计数相关的问题的能力,串口通信 使单片机可以与其他单片机、计算机或其它设备相连。
5.1
51单片机的中断系统
中断系统主要用于实时测控,要求单片机能及时地响应和 处理单片机外部事件或内部事件所提出的中断请求。中断方 式大大地提高了CPU的工作效率。
一、中断的概念
CPU正在执行程序时,单片机外部或内部发生的某一事件,
请求CPU迅速去处理。CPU暂时中止当前的工作,转到中断服 务处理程序处理所发生的事件。
处理完该事件后,再回到原来被中止的地方,继续原来
的工作,这称为中断。 CPU处理事件的过程,称为CPU的中断 响应过程。
如下图所示。对事件的整个处理过程,称为中断处理(或 中断服务)。
相关文档
最新文档