单片机控制装置与调试任务四中断控制

上传人:tian****1990 文档编号:81734386 上传时间:2019-02-22 格式:PPT 页数:13 大小:1.09MB
返回 下载 相关 举报
单片机控制装置与调试任务四中断控制_第1页
第1页 / 共13页
单片机控制装置与调试任务四中断控制_第2页
第2页 / 共13页
单片机控制装置与调试任务四中断控制_第3页
第3页 / 共13页
单片机控制装置与调试任务四中断控制_第4页
第4页 / 共13页
单片机控制装置与调试任务四中断控制_第5页
第5页 / 共13页
点击查看更多>>
资源描述

《单片机控制装置与调试任务四中断控制》由会员分享,可在线阅读,更多相关《单片机控制装置与调试任务四中断控制(13页珍藏版)》请在金锄头文库上搜索。

1、任务四 中断控制,任务一 中 中断部分 1.中断概述 什么是中断,我们从一个生活中的例子引入。学校早上8点20上课,老师开始讲课,到8点25分时,突然有个学生在教室门口喊报告,老师开门一看,是一个叫小明的同学迟到了,这时老师停止给其他同学讲课,对小明作了批评,然后小明回到自己的座位,老师回到讲台继续讲课,那么由于小明的迟到打断了老师原来的上课过程这一事实,叫做生活中的“中断”的现象, 中断是指计算机暂时中止其正在执行的某一程序,转去执行请求中断的那个内部或外设事件的服务程序,等处理完毕后再返回执行原来中止的程序。事实上,计算机在执行某一程序的过程中,由于计算机系统内部或者外部的某种原因,CPU

2、必须暂时停止现行程序的执行,而自动转去执行预先安排好的处理该事件的服务子程序,待处理完毕后,再回来继续 执行被暂停程序的过程,实现这种中断功能的硬件系统和软件系统称为中断系统,图4.1 中断示意图,2.中断系统需要解决的问题 (1) 中断源 谁引起了中断,日常生活中有很多事件可以引起中断:有人突然在喊你,你在走路时电话铃响了,早晨你的闹钟闹响了等等诸如此类的事件,即把中断请求信号的来源称之为中断源,中断源包括中断请求信号的产生及该信号怎样被CPU识别。中断请求一次,CPU处理一次,即一对一响应,不能一对多响应,同时,中断响应应及时撤销。 (2)中断响应与返回 以一个日常例子说明,以本节第一段小

3、明上课迟到为例,小明在教室门口喊报告,即中断请求,此时老师去给小明开门,即中断响应,然后老师回到讲台继续讲课,即中断返回。在事件过程中,中断源发出中断请求信号后,被CPU接收到,此时如何去执行中断服务子程序,执行完中断服务子程序又怎样返回到被中断的程序继续执行,我们说在此过程中要考虑到中断的现场保护、现场回复等因素。 (3)中断的优先级处理与嵌套 设想一下,我们正在看书,电话铃响了,同时又有人按了门铃,你该先做那样呢?如果你正是在等一个很重要的电话,你一般不会去理会门铃的,而反之,你正在等一个重要的客人,则可能就不会去理会电话了。如果不是这两者(即不等电话,也不是等人上门),你可能会按你通常的

4、习惯去处理。总之这里存在一个优先级的问题,单片机中也是如此,也有优先级的问题。优先级的问题不仅仅发生在两个中断同时产生的情况,也发生在一个中断已产生,又有一个中断产生的情况,51系列单片机中断系统原理及组成图如图4.2.,3 中断源 外部中断源有两个,外部中断0( )和外部中断1( )。外部中断请求有两种触发方式:电平触发及边沿触发。这两种触发方式可以通过对特殊功能寄存器TCON,下面表4.1给出TCON的位定义格式。 定时器计数器控制寄存器TCON:地址为88H 表4.1 TCON的位定义格式 IT0: 外部中断0的触发方式控制位。若IT0被设置为0,则选择外部中断0为电平触发方式,即IT0

5、=0时, 低电平有效;若IT0被设置为1,则选择外部中断0为边沿触发方式,即IT0=1时, 负沿有效。 IT1:外部中断1的触发方式控制位。具体表示同IT0。 IE0::外部中断0的中断请求标志位。IE:0=1,表示 请求中断;IE0=0,表示 没有请求中断。 IE1:外部中断l的中断请求标志位,其作用与IE0类似。 当IT1=0时,外部中断l为电平触发方式。若INTI为低电平,则认为有中断申请,随即使IEI标志位,并以此向CPU请求中断;若INTI为高电平,则认为无中断申请,或中断申请已撤除,随即使IEI标志复位。 当ITl =1时,即外部中断1为边沿触发方式时。若第一个机器周期采样到INT

6、1引脚为,高电平,第二个机器周期采样到INT1引脚为低电平时,由硬件置位IE1,并以此向CPU请求中断。当CPU响应中断转向中断服务程序时,由硬件自动将IEl清零。 TF0 (TF1):定时器计数器T0(T1)的中断标志位。当T0(T1)计数溢出时,由硬件置位。 TR0(TR1):T0(T1)的启动控制位。当TR0(TR1) =1时,可启动T0(T1);当 TR0(TR0)=0时,关闭T0(T1)。 IE0 (IE 1):外部中断0(外部中断1)请求标志位。 IT0 (IT1):外部中断0(外部中断1)触发方式选择位。 高电平,第二个机器周期采样到INT1引脚为低电平时,由硬件置位IE1,并以

7、此向CPU请求中断。当CPU响应中断转向中断服务程序时,由硬件自动将IEl清零。 TF0 (TF1):定时器计数器T0(T1)的中断标志位。当T0(T1)计数溢出时,由硬件置位。 TR0(TR1):T0(T1)的启动控制位。当TR0(TR1) =1时,可启动T0(T1);当TR0(TR0)=0时,关闭T0(T1)。 IE0 (IE 1):外部中断0(外部中断1)请求标志位。 IT0 (IT1):外部中断0(外部中断1)触发方式选择位。,4. 中断控制(两级管理) (1) 中断屏蔽 在中断源与CPU之间有一级控制,类似开关,其中第一级为一个总开关, 第二级为五个分开关,由IE控制。表4.2 给出

8、了IE的位定义格式。 表4.2 IE的位定义格式 EA: 总控制位;EA:中断允许总控位。EA=O,禁止所有的中断请求;EA=1,开放所有的中断请求, ES: 串行口中断允许位。ES=0,禁止串行口中断;ES=1允许串行口中断。 EX0 (EX1):外部中断0 (1)的中断允许位。EX0 (EX1)=0,禁止外部中断0中断;EX0 (EX1)=1允许外部中断0 (1)中断。 ET0 (ET1):定时器计数器T0 (Tl)的溢出中断允许位。ET0=0,禁止T0中断;ET0=1,允许T0中断。 ET2:定时器计数器T2的溢出中断允许位,只用于52子系列,51子系列无此位。ET2 =0,禁止T2中断

9、;ET2=1,允许T2中断。 (2) 中断优先级 CPU同一时间只能响应一个中断请求,若同时来了两个或两个以上中断请求,就必须有先有后。为此将5个中断源分成高级、低级两个级别,高级优先,由IP控制。专用寄存器IP为中断优先级控制寄存器,锁存各中断源优先级控制位,IP中的每一位,PT0:定时器计数器T0的中断优先级控制,PT0:定时器计数器T0的中断优先级控制位。,PX1:外部中断1的中断优先级控制位。 PT1:定时器计数器T1的中断优先级控制位。 PS:串行口的中断优先级控制位。 PT2:定时器计数器T2的中断优先级控制位,只用于52子系列。 以上各位与IE的低五位相对应,为“1”时为高级。初

10、始化编程时,由软件确定。同一级中的5个中断源的优先顺序如图4.3 。,5. 中断服务函数的一般形式: 函数类型 函数名(形式函数) interrupt n using n ; 其中,关键字interrupt后面的n代表中断向量号,是一个常量,取值范围是0-4,每个中断向量号都对应一个中断源,见下表,关键字using后面的n代表中断函数将要选择使用的工作寄存器组,也是一个常量, 取值范围是0-3,在C语言中可表示为如下: void interservice0 (void) interrupt 0 using 1 注意:中断服务函数不能被其他函数调用。,二 任务分析 应用中断的方式在亚龙236比赛

11、设备上按独立键盘,让LED点亮做加计数效果。 三 任务实施 1. 流程图 根据题目要求,本任务按照先开中断,然后等待按键,LED加计数的过程,具体流程如图4.4所示,,2. 接线图 本任务需用到按键模块、LED灯模块,具体接线图如图4.5,,图4.5 系统接线图,3. 源程序 #include “reg51.h“ /头文件: void delay(unsigned int timer); /延时子函数,/主函数,C语言的入口函数: void main(void) EA=1; /开启总中断 EX0=1; /开启外部中断 0,即P32引脚,EX1为中断1,P33引脚 IT0=0; /设置成 低电平

12、触发方式,IT0=1为下降沿触发 while(1); /主程序不处理事件,由中断来处理 /*外部中断 0 , 0的优先级最高,关键字“interrupt“ , 这是C语言的中断函数表示法 本中断的响应是P3.2引脚有低电平触发,按板上独立按钮实现,按独立键,。*/ void key_scan() interrupt 0, P2-; /中断响应,将P2口值减1,因LED灯是共阳接法,看到的LED灯是加计数 delay(10000); /延时,以免程序过快中断而人眼看不到LED灯变化 ,void delay(unsigned int timer) while(timer-);, 4 程序效果 经过程序的调试、编译,并下载到单片机,可以在设备上显,示, 实际效果图如4.6所,示 ,然后用仿真软件可以仿真得出效果图如4.7所示。,四、 任务自评,通过前面的讲解,同学们应该应该熟悉了中断的应用吧,那就通过下面的表格来反映学习情况。,五、 作业 1. 应用中断的方式实现继电器吸合。 2. 应用中断的方式实现蜂鸣器响。,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号