第5-2章定时器与中断和串行口课件.ppt

上传人(卖家):晟晟文业 文档编号:4606058 上传时间:2022-12-24 格式:PPT 页数:37 大小:445.50KB
下载 相关 举报
第5-2章定时器与中断和串行口课件.ppt_第1页
第1页 / 共37页
第5-2章定时器与中断和串行口课件.ppt_第2页
第2页 / 共37页
第5-2章定时器与中断和串行口课件.ppt_第3页
第3页 / 共37页
第5-2章定时器与中断和串行口课件.ppt_第4页
第4页 / 共37页
第5-2章定时器与中断和串行口课件.ppt_第5页
第5页 / 共37页
点击查看更多>>
资源描述

1、第5章 定时/计数器与中断系统和串行口 5.2 中断系统结构及管理 5.3 定时/计数器及中断系统综合应用中断系统是计算机的重要指标之一中断系统是计算机的重要指标之一。某人看书某人看书 执行主程序执行主程序 日常事务日常事务电话铃响电话铃响 中断信号中断信号INT=0INT=0 中断请求中断请求暂停看书暂停看书 暂停执行主程序暂停执行主程序 中断响应中断响应书中作记号书中作记号 当前当前PCPC入栈入栈 保护断点保护断点电话谈话电话谈话 执行执行I/I/O程序程序 中断服务中断服务继续看书继续看书 返回主程序返回主程序 中断返回中断返回日常事务程序日常事务程序中断服务程序中断服务程序人类行为计

2、算机行为对应中断概念5.2 中断请求与控制图5-7 中断流程返回本节所谓所谓“中断中断”,是指,是指CPU执行正常程序时,执行正常程序时,系统中出现特殊请求,系统中出现特殊请求,CPU暂时中止当暂时中止当前的程序,转去处理更紧急的事件,处前的程序,转去处理更紧急的事件,处理完毕后,理完毕后,CPU返回原程序的过程。返回原程序的过程。中断与子程序的区别:中断与子程序的区别:子程序是预先安排好的;子程序是预先安排好的;中断是随机发生的;中断是随机发生的;中断的定义,与子程序的区别中断的定义,与子程序的区别5.2.1中断的来源-解决外部设备与CPU之间信息传送匹配问题接口电路的作用锁存作用隔离作用变

3、换作用联络作用5.2.25.2.2 输入输入/输出控制方式输出控制方式 计算机CPU与I/O设备间进行信息交换的方式,即输入/输出传送的方式主要有无条件传送、程序查询传送(有条件传送)、中断传送和直接存储器传送(DMA)四种。一、无条件传送方式一、无条件传送方式 这是指计算机不考虑外围设备的状态,CPU可随时执行输入或输出指令,立即进行数据传送的一种方式.二、程序查询传送方式二、程序查询传送方式 程序查询传送方式是指CPU在与外围设备进行数据传送前,先对外围设备的状态进行查询程序查询传送方式进行数据传送时,CPU要不断地测试外围设备的状态。若外围设备尚未准备就绪,CPU只能反复查询,等待外围设

4、备准备就绪。三、中断传送方式三、中断传送方式 提高了CPU的利用率,CPU无需等待。四、存储器直接传送(四、存储器直接传送(DMA)方式)方式 查询方式和中断方式传送数据都是由程序控制的,数据必须经CPU中转,使数据的传送速率受到限制。DMA不需要CPU参与数据传送,但是价格昂贵,一般只有PC机或以上机型才配置该种方式,单片机不会配置。5.2.35.2.3中断的优越性中断的优越性 1分时操作 采用中断技术能够使CPU与外围设备并行工作,实现分时操作,大大提高了CPU的利用率。2实时处理 实时控制是单片机系统一个重要的应用领域,它要求CPU对工作现场的各种参数和状态的随机变化能够快速响应并加以及

5、时处理,而这些功能只有采用中断技术才能得以实现。3故障处理 计算机在运行过程中常常会突然发生故障,如电源掉电、内存出错及程序故障等。5.2.45.2.4有关中断的名词解释有关中断的名词解释 中断源:中断源是指向CPU发出中断请求的来源或引起中断的事件。主要有以下几种:1外围设备 如键盘、打印机、各种传感器等。2故障源 如电源掉电、运算溢出、程序故障等。3实时时钟电路 如定时器等。4人为设置的中断源 如为调试程序而设置的断点或单步运行等。中断的屏蔽与开放 中断响应与返回 中断优先 中断嵌套图5-8 MCS-51单片机中断系统的结构框图返回自然优先级矢量地址自然优先级矢量地址高级中断请求PCPC断

6、请求低级中SCON中断标志IPPX01PT0110PX110PS100PT10IEEX0ET0EX1ET1ESTCONIE0TF0IE1TF1TIRIRXTXT1IT1=1INT1IT1=0T0INT0IT0=1IT0=0源允许 总允许优先级硬件查询EA5.2.5 C51中断系统及其管理中断系统及其管理一、中断源及中断入口中断源 中断入口地址INT00003HT0000BHINT10013HT1001BHSIO0023H5.2.65.2.6 中断系统控制(注意单片机复位后寄存器的初值)中断系统控制(注意单片机复位后寄存器的初值)-1-1 中断控制寄存器中断控制寄存器TCONTCON1.中断标志

7、位中断标志位:TF1、TF0、IE1、IE0、RI、TI登记各中断源请求信号:登记各中断源请求信号:=1=1,有中断请求;,有中断请求;=0=0,无中断请求。,无中断请求。CPUCPU响应中断后响应中断后,该中断标志自动清零。该中断标志自动清零。TITI,RIRI标志必须软件清零。标志必须软件清零。2.外部中断外部中断触发方式选择位:触发方式选择位:IT0、IT1=1=1:负边沿触发中断请求;:负边沿触发中断请求;=0=0:低电平触发中断请求。:低电平触发中断请求。5.2.65.2.6 中断系统控制中断系统控制-2-2 中断允许寄存器中断允许寄存器IEIE寄存器名称D7D6D5D4D3D2D1

8、D0TCON(88H)TF1TF0IE1IT1IE0IT0定时器控制寄存器位地址8FH8EH8DH8CH8BH8AH89H88HSCON(98H)TIRI串行口控制寄存器位地址9FH9EH9DH9CH9BH9AH99H98HIE(A8H)EAESET1EX1ET0EX0中断允许寄存器位地址AFHACHABHAAHA9HA8HIP(B8H)PSPT1PX1PT0PX0中断优先级寄存器位地址BCHBBHBAHB9HB8H中断允许控制位:中断允许控制位:EA、ES、ET1、EX1、ET0、EX0=1=1开中断;开中断;=0=0关中断。关中断。例:允许例:允许CPUCPU响应响应INT0INT0的中断

9、请求的中断请求SETB EX0 SETB EX0 SETB EASETB EA0:关INT 中断01:开INT 中断00:关T 中断1:开T 中断001:开T 中断0:关T 中断0:关INT 中断1:开INT 中断11110:关T 中断1:开T 中断221:开所有中断0:关所有中断1:开串行口中断0:关串行口中断位地址IEEAAFADETACESABETAAEXA9ETA8EX00112图5-9 中断允许寄存器IE(注意单片机复位后寄存器的初值)(注意单片机复位后寄存器的初值)返回5.2.65.2.6 中断系统控制中断系统控制-3-3 中断优先寄存器中断优先寄存器IPIP寄存器名称D7D6D5

10、D4D3D2D1D0TCON(88H)TF1TF0IE1IT1IE0IT0定时器控制寄存器位地址8FH8EH8DH8CH8BH8AH89H88HSCON(98H)TIRI串行口控制寄存器位地址9FH9EH9DH9CH9BH9AH99H98HIE(A8H)EAESET1EX1ET0EX0中断允许寄存器位地址AFHACHABHAAHA9HA8HIP(B8H)PSPT1PX1PT0PX0中断优先级寄存器位地址BCHBBHBAHB9HB8H中断优先级控制位:中断优先级控制位:PSPS、PT1PT1、PX1PX1、PT0PT0、PX0PX02 2级优先级:级优先级:=1=1为高优先级,为高优先级,=0=

11、0为低优先级。为低优先级。同一优先级别按内部查询顺序排列优先级:同一优先级别按内部查询顺序排列优先级:高高 低低。INT0INT0、T0T0、INT1INT1、T1T1、SISIO 图5-10 中断优先寄存器IP(注意单片机复位后寄存器的初值)(注意单片机复位后寄存器的初值)返回5.2.7 中断响应过程 一个完整的中断处理过程,一般可分为三个阶段:中断响应中断响应中断处理中断处理中断返回中断返回一、中断响应一、中断响应:中断响应是对中断源提出的中断请求的接受。单片机在每个机器周期的S5P2期间,顺序采样每个中断源,CPU在下一个机器周期S6期间按优先级顺序查询中断标志,如查询到某个中断标志为1

12、,将在再下一个机器周期S1期间按优先级进行中断处理。中断得到响应后自动清除中断标志,由硬件将程序计数器PC内容压入堆栈保护,然后将对应的中断矢量装入程序计数器PC,使程序转向中断矢量地址单元中去执行相应的中断服务程序。下一页中断响应的过程 1置位相应的优先级状态触发器 2清除中断源的中断请求标志 3由硬件自动生成一条长调用(LCALL)指令 通常的做法是把中断服务程序存放在其它存储区域,而在中断入口地址处安排一条跳转指令,通过跳转指令再进入中断服务程序所在的地址。下列任何一种情况存在中断申请将被封锁(暂时不响应)(1)CPU正在执行一个同级或高一级的中断服务程序。(2)当前正在执行的那条指令还

13、未执行完。(3)当前正在执行的指令是RETI或对IE,IP寄存器进行读/写指令,执行这些指令后至少再执行一条指令才会响应中断。(4)发出中断请求的中断源已被设置为关中断。即中断总允许位EA=0,或者该中断源的中断允许位为“0”返回本节中断源中断入口地址INT00003HT0000BHINT10013HT1001BHSIO0023H各中断源中断服务程序的入口各中断源中断服务程序的入口地址地址中断响应时间中断响应时间正常中断响应时间至少为正常中断响应时间至少为3 38 8个机器周期,如果有个机器周期,如果有同级或高级中断服务,将延长中断响应时间。同级或高级中断服务,将延长中断响应时间。二、中断处理

14、二、中断处理 中断处理又称中断服务,是指CPU从入口地址开始执行中断服务程序,直到执行完中断返回指令RETI为止的过程。1保护现场和恢复现场 所谓现场是指中断时刻单片机存储单元中的数据或状态。2允许中断和禁止中断 在CPU执行当前中断服务程序的过程中,往往又会有其它中断源的中断请求出现。3执行中断服务程序主体 执行中断服务程序主体是中断处理的核心内容,也是中断源请求中断的具体目的。三、中断返回三、中断返回 中断返回是指中断服务程序执行完成后,CPU返回到断点处,继续执行原来的程序 中断返回指令:中断返回指令:RETI=RET指令指令+通知通知CPUCPU中断服务已结束。中断服务已结束。5.2.

15、8 5.2.8 多中断源系统多中断源系统当外部中断源多于中断输入引脚(即多于两个外部中断源)当外部中断源多于中断输入引脚(即多于两个外部中断源)时,可采取以下措施:时,可采取以下措施:1.1.用定时器计数输入信号端用定时器计数输入信号端T0T0、T1T1作外部中断入口引脚作外部中断入口引脚2.2.用串行口接收端用串行口接收端RXDRXD作外部中断入口引脚作外部中断入口引脚3.3.用一个中断入口接受多个外部中断源,并加入中断查询电用一个中断入口接受多个外部中断源,并加入中断查询电路(如下图)路(如下图)5.3 定时定时/计数器及中断系统综合应用计数器及中断系统综合应用【例5.3.1】设MCS-5

16、1单片机系统时钟频率CLK为6MHZ,请编出利用定时/计数器T0在P1.0引脚上产生周期为2秒,占空比为50%的方波信号的程序(1)分析:1.T0工作方式的设定:选择方式1(16位方式)(最大定时131ms)2.定时常数的设定:TC=216-100ms/2s=15536=3CB0H即:TH0应装3CH,TL0应装B0H下一页3.中断管理:允许T0中断,开放总中断 即:IE应装10000010B。4.启动定时器T0:SETBTR0 5.设置软件计数器初值:(如使用R7)即R7应装0AH 6.动态停机:SJMP$下一页主程序如下:MAIN:MOVTMOD,#01H;设定T0为方式1MOV TH0,

17、#3CH;装入定时常数高8位MOV TL0,#0B0H;装入定时常数低8位MOV IE,#82H;开放T0中断SETBTR0;启动T0MOV R7,#0AH;设置软件计数器SJMP$下一页(2)中断服务程序任务:1)恢复T0常数;2)软件计数器减1;3)判断软件计数器是否为0。为0时,改变P1.0状态,并恢复软件计数器初值;不为0时中断返回。程序如下:TOINT:MOVTL0,#0B0H;恢复定时常数MOVTH0,#3CH;DJNZR7,NEXTCPLP1.0 MOVR7,#0AHNEXT:RETI下一页完整程序如下:ORG 0000H AJMP MAINORG 000BH AJMPTOINT

18、ORG 0030H MAIN:MOVTMOD,#01HMOV TH0,#3CH MOV TL0,#0B0HMOV IE,#82HSETB TR0MOV R7,#0AHSJMP$TOINT:MOVTL0,#0B0HMOV TH0,#3CHDJNZ R7,NEXTCPLP1.0MOV R7,#0AHNEXT:RETIEND下一页例例5.3.25.3.2要求每次按动按键,使外接发光二极管要求每次按动按键,使外接发光二极管LEDLED改变一改变一次亮灭状态。次亮灭状态。INT0INT0输入按键信号,输入按键信号,P P1.01.0输出改变输出改变LEDLED状态状态 ORG 0000H;复位入口;复位

19、入口 AJMP MAINORG0003H;中断入口;中断入口AJMP PINT0ORG0100H;主程序;主程序MAIN:MOV SP,#40H;设栈底;设栈底SETB EA;开总允许开关;开总允许开关SETB EX0;开;开INT0中断中断SETB IT0;负跳变触发中断(;负跳变触发中断(1时下降沿有效)时下降沿有效)H:SJMP H ;执行其它任务;执行其它任务ORG0200H;中断服务程序;中断服务程序PINT0:CPL P1.0;改变;改变LEDRETI;返回主程序;返回主程序END单片机单片机INT0P1.01+5V1 1软件等待按键释放。软件等待按键释放。2 2硬件清除中断信号。

20、硬件清除中断信号。解法解法2.电平触发:电平触发:避免一次按键引起多次中断响应。避免一次按键引起多次中断响应。单片机单片机INT0P1.01+5V ORG 0000H;复位入口;复位入口 AJMP MAINORG0003H;中断入口;中断入口AJMP PINT0ORG0100H;主程序;主程序MAIN:MOV SP,#40H;设栈底;设栈底SETB EA;开总允许开关;开总允许开关SETB EX0;开;开INT0中断中断CLRIT0;低电平触发中断,(;低电平触发中断,(0时低电平有效)时低电平有效)H:SJMP H ;执行其它任务;执行其它任务ORG0200H;中断服务程序;中断服务程序PI

21、NT0:CPL P1.0;改变;改变LEDWAIT:JNBP3.2,WAIT;等按键释放;等按键释放RETI;返回主程序;返回主程序 二、用中断和查询结合的方法扩展外部中断源二、用中断和查询结合的方法扩展外部中断源 其具体方法就是把待扩展的外部中断源通过逻其具体方法就是把待扩展的外部中断源通过逻辑电路接到外部中断输入引脚或上,同时另接辑电路接到外部中断输入引脚或上,同时另接一路通到单片机的某一个一路通到单片机的某一个I/OI/O接口上,并按各接口上,并按各外部中断源所要求执行任务的轻重缓急对中断外部中断源所要求执行任务的轻重缓急对中断优先级别进行排队。这时,只要有一个外部中优先级别进行排队。这

22、时,只要有一个外部中断源发出中断请求,其信号即通过或引脚输入,断源发出中断请求,其信号即通过或引脚输入,向向CPUCPU请求中断。请求中断。CPUCPU响应中断后,再通过程序响应中断后,再通过程序查询确定是哪个中断源发出的中断请求,然后查询确定是哪个中断源发出的中断请求,然后转去执行相应的中断服务子程序。转去执行相应的中断服务子程序。【例【例5.3.35.3.3】如图4-17所示为一比赛抢答器的电路图。P1.0P1.3分别接按钮K0K3,4个按钮通过与门连接到引脚,按钮没有按下时,对应的输入线为高电平,按下时为低电平。当某一个按钮按下,相应的小彩灯就被点亮,即按下K0点亮L0,按下K1点亮L1

23、,按下K2点亮L2,按下K3点亮L3。若几个按钮同时按下,则CPU按照P1.0P1.3的查询次序决定K0K3的中断优先级。试编制程序。比赛抢答器电路图 当某一个按钮按下,相应的小彩灯就被点亮,即按下K0点亮L0,按下K1点亮L1,按下K2点亮L2,按下K3点亮L3。若几个按钮同时按下,则CPU按照P1.0P1.3的查询次序决定K0K3的中断优先级。a)主程序流程图 b)中断服务程序流程图 K0K0ORG 0000HORG 0000HLJMP MAINLJMP MAINORG 0003HORG 0003HLJMP INSELJMP INSEORG 0100HORG 0100HMAINMAIN:SETB EX0SETB EX0;允许外中断中断;允许外中断中断SETB IT0SETB IT0;设为边沿触发方式;设为边沿触发方式SETB EASETB EA;CPUCPU开中断开中断 SJMP$SJMP$ORG 0200HINSE:JNB P1.0,L0JNB P1.1,L1JNB P1.2,L2CLR P1.7BACK:RETIL0:CLRP1.4SJMPBACKL1:CLRP1.5SJMPBACKL2:CLRP1.6SJMPBACK

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(第5-2章定时器与中断和串行口课件.ppt)为本站会员(晟晟文业)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|