1、常 州 轻 工 职 业 技 术 学 院 单片机原理及应用 课 程 授 课 教 案 NO 16 授课日期授课班级课题中断系统授课类型讲授授课时数 教学目的MCS-51中断系统的概念、结构、应用重点难点中断系统的结构、中断的应用中断的应用教具挂图无教学及过程分配主 要 教 学 内 容教学方法的运用20分钟一、中断系统概念(一)什么是中断系统?是指单片机中实现中断功能的相关硬件和软件的集合。(二)什么是中断功能?当CPU正在执行程序时,单片机的内部或外部发生了某一事件(如定时/计数器溢出,INT0、INT1引脚上电平突变等)请求CPU迅速去处理,于是CPU暂时中断当前的程序,转去处理发生的事件(执行
2、一段中断服务程序),处理完成后,再回到原来被中断的地方,继续执行原来的程序,这一过程称为中断。中断过程由中断系统自动完成。(三)什么是中断源?在中断系统中,把引起中断的设备或事件称为中断源。二、MCS-51中断系统1中断源(1)内部中断源3个T0:定时/计数器0中断,由T0加1计数溢出置TCON寄存器的TF0位为1,从而向CPU申请中断。T1:定时/计数器1中断,由T1加1计数溢出置TCON的寄存器的TF1位为1,从而向CPU申请中断。TI/RI:串行口发送(TXD)及接收(RXD)中断,串行口完成一帧字符发送/接收后置SCON的TI/RI位为1,从而向CPU申请中断。(2)外部中断源2个外部
3、中断0():由P3.2端口接入,低电平或下降沿触发。外部中断1():由P3.3端口接入,低电平或下降沿触发。讲解10分钟15分钟15分钟30分钟三、外部中断的应用(急救车与交通灯)(一)控制要求本例模拟交通信号灯控制,一般情况下正常显示,有急救车到达时,两个方向交通信号灯全红,以便让急救车通过。设急救车通过路口时间为10秒,急救车通过后,交通恢复正常,用外部中断处理急救车通过事件。东西向绿灯(5秒)黄灯闪烁(9次) 红灯南北向红灯绿灯(5秒)黄灯闪烁(9次) (二)硬件电路中断软件处理1中断入口地址CPU响应某个中断事件时,将会自动转入固定的地址执行中断服务程序,各个中断源的中断入口地址见表6
4、1。表61 各中断源的入口地址中 断 源中断入口地址外部中断0 定时/计数器0溢出中断 T0外部中断1 定时/计数器1溢出中断 T1串行口中断 TI/RI0003H000BH0013H001BH0023HOrg 0003hAmbulance_srv2.中断初始化MOV TCON, #01H ; DOWN EDGE IT0MOV IE, #81H ; ENABLE EA, EX0(1)中断控制寄存器TCON 字节地址为88H,可进行位寻址。其格式如下:TCON D7D6D5D4D3D2D1D0(88H)TF1TR1TF0TR0IE1IT1IE0IT0TR1、TR0是T1、T0的启动控制位,置1启
5、动,清0停止。TF1、TF0是T1、T0的溢出标志位。IT0、IT1为外部中断0、1的触发方式控制位,当设置为0时,电平触发方式(低电平有效);当设置为1时,下降沿触发方式(后沿负跳变有效)。IE0、IE1为外部中断0、1请求标志位。(1) 中断允许控制寄存器IE 字节地址为A8H,可进行位寻址。其格式如下:IED7D6D5D4D3D2D1D0(A8H)EAESET1EX1ET0EX0EA:中断允许总控位。EA0,所有中断源的中断请求均被关闭(禁止);EA1则所有中断源的中断请求均被开放(允许)。ES:串行口中断允许控制位。ES1允许串行口中断;ES0禁止串行口中断。ET1:定时计数器T1溢出
6、中断允许控制位。ET11允许T1中断;ET10禁止T1中断。EX1:外部中断1允许控制位。EX11允许中断;EX10禁止中断。 ET0:定时计数器T0溢出中断允许控制位。ET01允许T0中断;ET00禁止T0中断。EX0:外部中断允许控制位。EX01允许中断;EX00禁止中断。3中断服务程序Ambulance_srv:SETB STOPRETI讲解图示讲解讲解讲解课后小记 授课教师 常 州 轻 工 职 业 技 术 学 院 单片机原理及应用 课 程 授 课 教 案 NO 17 授课日期授课班级课题外部中断的应用(急救车与交通灯)授课类型现场教学授课时数 教学目的理解中断系统的概念、结构掌握外部中
7、断的应用编程重点难点中断系统的结构、中断的应用中断的应用教具挂图课件、计算机,小哨兵软件,wave6000软件、单片机实验仪教学及过程分配主 要 教 学 内 容教学方法的运用10分钟15分钟复习上堂课内容(三)程序流程开始开外中断初始状态东西南北都是红灯状态1南北绿灯,东西红灯状态2南北绿灯闪转黄灯,东西红灯状态3南北红灯,东西绿灯状态4南北红灯,东西绿灯闪转黄灯外部中断入口保护现场东西,南北都亮红灯延时10秒恢复现场中断返回提问讲解30分钟35分钟(四)程序清单FLASH EQU 00H ; LED状态 STOP EQU 01H SR EQU P1.0 ; 南北红灯 SY EQU P1.1
8、; 南北黄灯 SG EQU P1.2 ; 南北绿灯 ER EQU P1.3 ; 东西红灯 EY EQU P1.4 ; 东西黄灯 EG EQU P1.5 ; 东西绿灯 ORG 0000H LJMP START ORG 0003H SETB STOP ; 南北, 东西均红灯 RETISTART: MOV SP, #70H MOV TCON, #01H ; DOWN EDGE IT0 MOV IE, #81H ; ENABLE EA, EX0 SETB SR ; 南北, 东西均红灯 CLR SY CLR SG SETB ER CLR EY CLR EG CLR STOPLOOP: JB STOP,
9、ALLRED SETB SR ; 南北红灯, 东西绿灯 CLR SY CLR SG CLR ER CLR EY SETB EG MOV A, #20 LCALL DELAY JB STOP, ALLRED SETB SR ; 南北红灯, 东西黄灯闪 CLR SY CLR SG CLR ER CLR EY CLR EG CLR C MOV R7, #9LOOP1: MOV EY, C MOV A, #1 LCALL DELAY CPL C DJNZ R7, LOOP1 JB STOP, ALLRED CLR SR ; 南北绿灯, 东西红灯 CLR SY SETB SG SETB ER CLR E
10、Y CLR EG MOV A, #20 LCALL DELAY JB STOP, ALLRED CLR SR ; 东西红灯, 南北黄灯闪 CLR SY CLR SG SETB ER CLR EY CLR EG CLR C MOV R7, #9LOOP2: MOV SY, C MOV A, #1 LCALL DELAY CPL C DJNZ R7, LOOP2 LJMP LOOPALLRED:SETB SR CLR SY CLR SG SETB ER CLR EY CLR EG CLR STOP MOV A, #40 LCALL DELAY LJMP LOOPDELAY: ; 延时子程序 MOV R1, #80H MOV R0, #0DELAYLOOP: JB STOP, EXITDELAY DJNZ R0, DELAYLOOP DJNZ R1, DELAYLOOP DJNZ ACC, DELAYEXITDELAY: RET END学生练习程序分析巡回指导课后小记 授课教师