单片机应用课件三 (2)
《单片机应用课件三 (2)》由会员分享,可在线阅读,更多相关《单片机应用课件三 (2)(43页珍藏版)》请在装配图网上搜索。
1、,任务一:数字电子钟的设计(,LED,数码显示),二级标题,三级标题,四级标题,广东机电职业技术学院,,第六章 中断的应用,广东机电职业技术学院,-,单片机应用,智能电子教研室,张永亮,1,、,中断概述,第六章、中断的应用,CPU,在处理某一事件,A,时,发生了另一事件,B,请求,CPU,迅速去处理(中断发生);,CPU,暂时中断当前的工作,转去处理事件,B,(中断响应和中断服务);,待,CPU,将事件,B,处理完毕后,再回到原来事件,A,被中断的地方继续处理事件,A,(中断返回),这一过程称为中断。,MCS-51,单片机的中断系统结构,执行主程序,主程序,继续执行主程序,断点,中断请求,中断
2、响应,执行中断处理程序,中断返回,1,、,中断概述,2,、采用中断控制方式的优点,(,1,)可以提高,CPU,的工作效率,(,2,)可以提高实时数据的处理时效,3,、中断源,(,1,)外部设备中断源,(,2,)控制对象中断源,(,3,)故障中断,(,4,)定时脉冲中断源,中断源是指引起中断的设备、部件或事件。通常,中断源有以下几种:,4,、中断优先级与中断嵌套,中断优先级,:一个,CPU,总会有若干中断源,但在同一瞬间,,CPU,只能响应其中的一个中断请求,为了避免在同一瞬间若干个中断源请求中断而带来的混乱,必须给每个中断源的中断请求设定一个中断优先级,,CPU,先响应中断优先级高的中断请求。
3、,中断嵌套:,在某一瞬间,,CPU,因响应某一中断源的中断请求而正在执行它的中断服务程序时,若有中断优先级更高的中断源提出中断请求,那它可以把正在执行的中断服务程序停下来,转而响应和处理中断优先权更高中断源的中断请求,等到处理完后再转回来继续执行原来的中断服务程序,这就是中断嵌套。,5,、,MCS-51,单片机中断系统,5,个中断源,(,8052,有,6,个),,,2,个优先级,可实现二级中断嵌套。,(,1,)外部中断,INT0,、,INT1,输入输出设备的中断请求,系统故障的中断请求等都可以作为外部中断源,从引脚,INT0,或,INT1,输入。外部中断请求,INT0,、,INT1,有,电平触
4、发,及,边沿触发,两种。,(,2,)定时器计数器,0,、,l,溢出中断,定时器计数器计数溢出时,由硬件分别置,TF0=,“,1,”,或,TF1=,“,1,”,,向,CPU,申请中断。,CPU,响应中断转入中断服务程序时,由硬件自动清除,TFO,或,TF1,。,(,3,)串行口中断,串行口中断由单片机内部串行口中断源产生。串行口中断分为单行口发送中断和串行口接收中断两种。在串行口进行发送接收数据时,每当发送接收完一组数据,使串行口控制寄存器,SCON,中的,RI=,“,1,”,或,TI=,“,1,”,,并向,CPU,发出串行口中断请求。,5,、,MCS-51,单片机中断系统,1,)中断请求,1,
5、)中断请求,IT0,(,TCON.0,),外部中断,0,触发方式控制位。,当,IT0=0,时,为电平触发方式。,当,IT0=1,时,为边沿触发方式(下降沿有效)。,IE0,(,TCON.1,),外部中断,0,中断请求标志位。,IT1,(,TCON.2,),外部中断,1,触发方式控制位。,IE1,(,TCON.3,),外部中断,1,中断请求标志位。,TF0,(,TCON.5,),定时,/,计数器,T0,溢出中断请求标志位。,TF1,(,TCON.7,),定时,/,计数器,T1,溢出中断请求标志位。,TCON,的中断标志,(,1,)中断允许控制,MCS-51,单片机有,5,个(,8052,有,6,
6、个)中断源,为了使每个中断源都能独立地被允许或禁止,以便用户能灵活使用,CPU,内部在每个中断信号的通道中设置了一个,中断允许触发器,IE,(,0A8H,),它控制,CPU,能否响应中断。只有对应的中断允许触发器被使能(置“,1”,),相应的中断才能得到相应。,2,)中断控制,EA,ES,ET1,EX1,ET0,EX0,(MSB),(LSB),中断允许控制寄存器,IE,(,0A8H,),2,)中断控制,EX0(IE.0),,,外部中断,0,允许位;,ET0(IE.1),,,定时,/,计数器,T0,中断允许位;,EX1(IE.2),,,外部中断,0,允许位;,ET1(IE.3),,,定时,/,计
7、数器,T1,中断允许位;,ES,(,IE.4),,,串行口中断允许位;,EA(IE.7),,,CPU,中断允许(总允许)位。,(,2,)中断优先级控制,MCS-51,单片机有,5,个(,8052,有,6,个)中断源,两个中断优先级,即可实现二级中断服务嵌套。每个中断源的中断优先级都是由中断优先级寄存器,IP,中的相应位的状态来规定的,。,2,)中断控制,中断优先级控制寄存器,IP,(,0B8H,),PS,PT1,PX1,PT0,PX0,(MSB),(LSB),2,)中断控制,PX0,(,IP.0,),外部中断,0,优先级设定位;,PT0,(,IP.1,),定时,/,计数器,T0,优先级设定位;
8、,PX1,(,IP.2,),外部中断,0,优先级设定位;,PT1,(,IP.3,),定时,/,计数器,T1,优先级设定位;,PS,(,IP.4,),串行口优先级设定位;,PT2,(IP.5),,定时,/,计数器,T2,优先级设定位。,同一级中的,5,个中断源的优先顺序是:,/INT0,中断,T0,溢出中断,/INT1,中断,T1,溢出中断,串口中断,高,低,2,)中断控制,(,3,)中断源优先顺序,3,)中断响应,中断源有中断请求;,此中断源的中断允许位为,1,;,CPU,开中断(即,EA=1,)。,响应条件,当上述条件同时满足时,响应中断。,CPU,正在处理同级或高优先级中断;,当前查询的机
9、器周期不是所执行指令的最后一个机器周期。即在完成所,执行指令前,不会响应中断,从而保证指令在执行过程中不被打断;,正在执行的指令为,RET,、,RETI,或任何访问,IE,或,IP,寄存器的指令。即只有,在这些指令后面至少再执行一条指令时才能接受中断请求。,遇以下任一条件,硬件将受阻,不产生,LCALL,指令:,CPU,执行程序过程中,在,每个机器周期的,S5P2,期间,,中断系统对各个中断源进行采样。这些采样值在下一个机器周期内按优先级和内部顺序被依次查询。,如果某个中断标志在上一个机器周期的,S5P2,时被置成了,1,,那么它将于现在的查询周期中及时被发现。接着,CPU,便执行一条由中断系
10、统提供的硬件,LCALL,指令,转向被称作中断向量的特定地址单元,进入相应的,中断服务程序,。,3,)中断响应,中断服务的进入,五个中断源:,入口地址,外部中断,0,(,/INT0,),0003H,T0,溢出中断,000BH,外部中断,1,(,/INT1,),0013H,T1,溢出中断,001BH,串口中断,0023H,中断服务程序入口地址,中断服务入口地址,3,)中断响应,将相应的优先级状态触发器置,1,(以阻断后来的同级或低级,的中断请求)。,执行一条硬件,LCALL,指令,即把程序计数器,PC,的内容压入堆,栈保存,再将相应的中断服务程序的入口地址送入,PC,。,执行中断服务程序。,中断
11、响应过程,中断响应过程的前两步是由中断系统内部自动完成的,而中断服务程序则要由用户编写程序来完成。,3,)中断响应,RETI,指令的具体功能是:,将中断响应时压入堆栈保存的断点地址从栈顶弹出送回,PC,,,CPU,从原来中断的地方继续执行程序;,将相应中断优先级状态触发器清,0,,通知中断系统,中断服,务程序已执行完毕。,注意,不能用,RET,指令代替,RETI,指令。在中断服务程序中,PUSH,指令与,POP,指令必须成对使用,否则不能正确返回断点 。,4,)中断返回,5,、,C51,中断程序设计,void,函数名,(),interrupt,n,using,m,n,是中断号;,using m
12、,选项用于实现工作寄存器组的切换;,m,是中断服务子程序中选用的工作寄存器组号,(0-3),。,中断号,中断源,入口地址,0,外中断,0,0003H,1,定时,/,计数器,0,000BH,2,外中断,1,0013H,3,定时,/,计数器,1,001BH,4,串行口中断,0023H,void,函数名,()interrupt n using m,例如:,/*,外部中断,0,初始化程序*,/,void,Ex0Init(),IT0,=1;,/,边沿触发方式,EA,=1;,/,开中断,EX0,=1;,/,开外部中断,0,/*,外部中断,0,中断服务程序*,/,void,Ex0Srv(,void,),in
13、terrupt,0,using,0,5,、,C51,中断程序设计,(,1,)中断函数不能进行参数传递。,(,2,)中断函数没有返回值,应定义为,void,型。,(,3,)禁止对中断函数的直接调用。,(,4,)如果中断函数调用了其他函数,被调函数与中断函数,使用相同的寄存器组。,(,5,)中断函数最好写在程序尾部。,编写中断函数要点,5,、,C51,中断程序设计,计数器(外部中断),工学结合任务四:,广东机电职业技术学院,-,单片机应用,目的和意义,1,掌握计数器的工作原理。,2,、掌握单片机外部中断概念,外部中断原理、工作方式。,3,掌握,C51,编写中断程序。,4,掌握,PROTEUS,仿真
14、,烧写器的使用,硬件电路设计、,焊接、装配,培养学生利用单片机技术解决生活,中的实际问题的能力。,一、任务描述,1,、设计一个按键计数器,利用单片机,外部中断,这进行加、减计数。,2,、利用,Keil,C,软件编写主函数、外部,中断,C,程序代码。,3,、可采用数码管显示,也可用液晶显,示计数值。,4,、加减计数每,10,次,,LED,亮灯提示。,二、任务分析,1,、任务所需硬件知识,单片机最小系统(晶振,复位电路),中断接口、工作方式,数码管工作原理,显示电路设计,字符型,LCD,原理、,接口电路设计,2,、任务所需软件知识,单片机,C,语言数据类型,结构,中断等程序设计,3,、任务所需环境
15、,安装操作系统的微机,1,台、单片机集成开发环境,keil,C2.0,、软,硬件开发平台,proteus,6.9,、单片机下载软件,STC_ISP_V3.3,、,单片机实验板、下载线。,项目实施过程,理实一体化模式,提,出,项,目,和,任,务,学,生,思,考,老,师,指,点,规,划,学,习,内,容,程,序,设,计,安,装,与,调,试,单,片,机,基,础,知,识,系统设计规划,二、任务分析,要求会使用,Keil,C,开发环境,要求文件夹命名规范,要求工程项目命名规范,要求文件名命名规范,要求程序是否功能齐全,要求仿真软件达到设计要求,要求硬件电路满足设计要求,要求产品设计文档充分,二、任务分析,
16、程序设计要求,1,、进行功能分析,工作框架搭建,工作分工。,2,、使用软硬件开发平台,proteus,7.4,进行电路仿真。设计要点:新建电路图设计文件,查找元器件,放置元器件,布局布线,修改元器件属性,进行仿真单片机程序。,3,、使用单片机集成开发环境,keil,C2.0,。要点:,C,程序构成,关键词,运算符与表达式,数据结构,结构化语句。,4,、使用单片机下载软件,STC_ISP_V3.3,,通过串口或,USB,将单片机程序下载到单片机芯片中进行调试。,5,、完善单片机产品硬件电路,进行合适的电容、电阻、芯片、传感器、显示器件等进行焊接,通电运行后观察硬件电路是否满足要求。,6,、完成实验文档编写,包括:题目、作者、摘要、关键词,绪论,硬件电路,软件流程、代码,数据分析。,任务实施步骤,三、任务设计,1,)驱动硬件分析,.,此电路核心件是,MCS-51,单片机(,AT89C51,)。,2.,包括时钟电路、复位电路及输出电路。,3.,用,P2,口作输出口,驱动,LED,。,4,、加,1,键和减,1,键分别接接外部中断,0,和,1,。,三、任务设计,1,、,LED,计数器的设计,硬件
- 温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。