《单片机项目教学一(中断)课件》由会员分享,可在线阅读,更多相关《单片机项目教学一(中断)课件(27页珍藏版)》请在金锄头文库上搜索。
1、,第5章 51单片机的中断系统 主讲教师:陈飞 授课班级:08自动化,内容回顾,I/0口应用 (1)跑马灯(流水灯)的设计 (2)按键控制数码管的显示,以单片机为核心的嵌入式控制系统的应用遍布国民经济与人民生活的各个领域。,工业方面、仪器仪表方面、消费类电子产品、通信方面、武装设备、汽车方面、多机分布式系统、各种终端及外部设备控制等等。,项目 四人抢答器,项目实现,基本要求,一、基本要求,设计一四人抢答器由:,1个主持人按键,4个抢答按键,1只用于显示号码的LED数码管,8只用于渲染气氛的LED及1只蜂鸣器组成,51单片机的中断系统,要求: 开机后,8只LED组成的跑马灯循环显示,在主持人按下
2、“开始”键后,跑马灯在原位停止,数码管显示“”,甲、乙、丙、丁4人才可按键抢答,只要有一人按下后,蜂鸣器响,同时显示位号,显示若干时间后,跑马灯从停止的位置开始继续显示,回到初始状态。注意:主持人没有按下开始键选手不可抢答。,中断,A、中断的概念 B、51中断系统的结构及中断控制寄存器的使用 C、中断响应过程 D、中断服务程序的设计,技术准备:中断相关知识,CPU正在执行程序时,单片机外部或内部发生的某一事件,请求CPU迅速去处理。 CPU暂时中止当前的工作,转到中断服务处理程序处理所发生的事件。 处理完该事件后,再回到原来被中止的地方,继续原来的工作,这称为中断。,A、中断的概念,中断方式优
3、点:大大地提高了CPU的工作效率。,日常生活中的中断事件与计算机中断过程的比较(按时间顺序),中断系统结构示意图如下图所示:,B、51中断系统的结构及中断控制寄存器的使用,C、外部中断0的响应过程,首先设置中断触发方式、设置中断允许,然后按要求执行主程序,IE0=1,断点(PC)入栈,程序结构如下: ORG 0000H LJMP MAIN ORG 中断入口地址 LJMP EINT0 ,ORG 0030H MAIN:设置中断触发方式 设置中断控制寄存器 主体程序,EINT0:中断服务程序,EINT0:,CLR EA,PUSH PSW PUSH ACC,中断处理程序段,POP ACC POP PS
4、W,SETB EA,RETI,D、中断服务程序的设计,项目实现,功能描述 设计思路 硬件电路设计 软件设计,项目实现,二、项目实现,(1)开机后,显示跑马灯; (2)主持人没有按下“开始”键不可抢答; (3)在主持人按下“开始”键后,跑马灯停止,数码管显示 “”; (4)甲、乙、丙、丁4人可按键抢答,当有人按下后,蜂鸣器响1s,同时显示位号; (5)显示3s后,跑马灯从停止的位置继续显示,回到初始状态。,项目实现,1、功能描述,主持人与4个抢答人共有5个按键,对单片机来说就是5个输入状态,如果采用中断方式,那这5个输入就是5个中断源,一般来说,就应该有5个中断,但51单片机只有2个外部中断,因
5、此选择主持人采用中断方式,甲、乙、丙、丁4人按键采用查询方式实现,只要保证查询的过程足够快,就不会影响比赛的公正性。,2、设计思路,项目实现,根据要求知所需器件:,3、硬件电路设计,项目实现,(1)单片机最小系统 (2)8个LED (3)5个按键 (4)1个数码管 (5)1个扬声器 (6)若干电阻、电容等。,项目实现,proteus,4、软件设计,主程序(1)完成中断的初始化设置(2)完成连续执行的走灯和延时。,项目实现,主程序流程,MAIN: SETB IT0 SETB EX0 SETB EA,MOV A,#0FEH LOOP: MOV P1,A MOV 30H,#10 LCALL DELAY RL A SJMP LOOP,;延时子程序 ;调用参数:30H中为延时时间系数:延时时间=(30H)50ms ;占用资源:R4、R5、R6、30H DELAY:MOV R4,30H DEL0:MOV R5,#50 DEL1:MOV R6,#250 DEL2:NOP NOP DJNZ R6,DEL2 DJNZ R5,DEL1 DJNZ R4,DEL0 RET,项目实现,中断处理程序流程,Keil,中断的工业应用,分板机,机床,地铁安全门,作业 P95 3、5、12,