- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
中断的魅力
解 密中断的魅力什么是“中断”?中断的好处是什么?单片机如何处理“中断”外部中断怎么回事?中断的比喻任何一件事情的发生都会中断小林看电视的进程而去响应和处理事件。任何一件事情(中断)处理完毕,小林(单片机)将继续看电视(主程序)。中断的概念主程序时“绿灯”亮外部中断一例中断“红灯”亮ORG 0000H ; 起始地址00HLJMP MAINORG 0013H;外部中断1的中断服务子序起始地址为13HLJMPEXT1_GREENMAIN: MOV IE, #84H ; 使能外部中断1YELLOW: CLR P0.0 ; 点亮绿色发光二极管D1 JMP YELLOW ; 循环 中断服务子程序段,熄灭黄色发光二极管D1,点亮绿色D2 ; EXT1_RED: SETB P0.0 ; 熄灭黄色发光二极管D1 CLR P0.1 ; 点亮绿色D2 LCALL DELAY SETB P0.1 ; 熄灭红色发光二极管D2 RETI ; 中断服务子程序结束 END ; 程序结束延时子程序DELAY: … …中断的概念中断:是指由于某种随机事件的发生,计算机暂停现在程序的运行,转向执行另一个程序,处理完毕后又自动返回原来的程序继续运行。 ★能引起中断的事件称为中断源 ★CPU现执行的程序称为主程序 ★处理中断事件的程序称为中断服务子程序。CPU主程序中断服务子程序随机事件发生主程序“打扰”单片机小狗饿、电话响这些事情似乎“打扰”了小林看电视,外部中断也似乎影响了“绿灯亮”。那么,“中断”是否会降低单片机的执行效率呢?MAIN1查询方式Yes按钮是否按下红灯亮MAIN2MAIN3“打扰”单片机小狗饿、电话响这些事情似乎“打扰”了小林看电视,外部中断也似乎影响了“绿灯亮”。那么,“中断”是否会降低单片机的执行效率呢?中断方式哪种方式使单片机的执行效率高?MAIN1MAIN2按钮按下外部中断服务程序MAIN3外部中断1的程序ORG 0000H ; 起始地址00HMAIN: MOV IE, #84H ; 使能外部中断1YELLOW: CLR P0.0 ; 点亮绿色发光二极管D1 JMP YELLOW ; 循环ORG 0013H ;外部中断1的中断服务子序起始地址为13H中断服务子程序段,熄灭黄色发光二极管D1,点亮绿色D2 ; EXT1_RED: SETB P0.0 ; 熄灭黄色发光二极管D1 CLR P0.1 ; 点亮绿色D2 LCALL DELAY SETB P0.1 ; 熄灭红色发光二极管D2 RETI ; 中断服务子程序结束 END ; 程序结束延时子程序DELAY: … …中断服务的指挥 —— 中断向量表上例中,当外部中断1发生时,单片机怎么知道要去执行“EXT1_RED”段程序呢?中断服务的指挥 —— 中断向量表每个中断服务子程序的存放空间有限,若有同时使能多个中断,并且每个中断服务子程序按中断向量表中的地址开始存放,可能出现一个中断服务子程序占据其他中断服务子程序空间问题,如何解决呢?中断服务的指挥 —— 中断向量表ORG 0000H ; 起始地址0000HJMP MAIN ; 跳转到MAINORG 0003H ; 外部中断0的起始地址03H JMP EXT0 ; 跳转到EXT0ORG 000BH ; Timer 0中断的起始地址0BHJMP TIM0 ; 跳转到TIM0MAIN:MOV IE, #83H ; 使能外部中断0和Timer 0中断…… ; 主程序段JMP MAIN ; 循环执行主程序 EXT0: …… 外部中断0的中断服务子程序段 RETITIM0: …… ; Timer0中断的中断服务子程序段 RETI END;程序结束主程序外部中断0服务子程序定时计数器0服务子程序中断的控制及处理IE:中断使能寄存器。是一个特殊功能寄存器,位于SFR中地址A8H上。中断的控制及处理中断使能寄存器IE中断的控制及处理中断使能寄存器IE中断使能寄存器IE的操作:① IE的位7是EA,是所有中断的“总开关”。只有EA=1时,中断才会开放,这时IE中的其他位将使能或屏蔽某一个中断。如果EA=0,所有中断都不会被响应(全被屏蔽)。②如果EA=1时,相应的中断由IE中相应的位来控制。控制位置1使能中断;清0则屏蔽中断。中断的控制及处理中断使能寄存器IEMOV IE, #84H设置中断使能寄存器IE,使单片机可以响应P3.3的外部中断1.CLR ES CLR EX0CLR ET0CLR ET0SETB ET1SETB EA中断的控制及处理中断的控制及处理如果两个或两个以上中断同时产生,单片机
文档评论(0)