- 1、本文档共10页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
4、MCS51单片机中断系统
关中断 保护现场 中断服务 开中断 关中断 恢复现场 开中断 中断返回 断点地址由堆栈弹入PC 保护现场和恢复现场的过程中不允许中断,以免现场遭到破坏。 保护和恢复现场之后的开中断是为了允许有更高级中断打断此中断服务程序。 硬件自动完成 4.4 MCS51中断处理过程 * 中断控制实质上是用软件对4个与中断有关的特殊功能寄存器TCON、SCON、IE和IP进行管理和控制。需要人为进行管理和控制的有以下几点: (1)CPU的开中断与关中断; (2)各中断源中断请求的允许和禁止; (3)各中断源优先级的设定; (4)外部中断请求的触发方式。 4.4 MCS51中断处理过程 * CPU响应某中断请求后,在中断返回前,应该撤除该中断请求,否则会引起另一次中断。有2种方式: 硬件自动处理 软件清除中断 ?定时器0或1溢出:CPU在响应中断后,硬件清除了有关的中断请求标志TFO或TF1,即中断请求是自动撤除的。 ?边沿激活的外部中断:CPU在响应中断后,也是用硬件自动清除有关的中断请求标志IE0或IE1。 ?串行口中断:CPU响应中断后,没有用硬件清除T1、R1,故这些中断不能自动撤除,而要靠软件来清除相应的标志。 4.4 MCS51中断处理过程-撤除 * 电平触发外部中断撤除方法较复杂。 因为在电平触发方式中,虽然CPU响应中断时会自动清除IE1或IE0标志,但如果引脚上的低电平信号保持较长的时间,在下一周期又会重新申请中断,所以在响应电平触发的外部中断后应立即撤除INT0或INT1引脚上的低电平。在硬件上,CPU对INT0和INT1引脚的信号不能控制,所以要通过硬件,再配合软件来解决。 4.4 MCS51中断处理过程-撤除 * 1、中断和查询相结合 一个外中断扩展成多个外中断的原理图 INT0 INT1 8051 P1.3 P1.2 P1.1 P1.0 · · · +5V E14 E10 E13 E12 E11 · · · · R 5.1KΩ 4.5 MCS51中断应用-扩展 * 用上图的连接对E11~E14中断查询,写出中断服务程序。 E11=1 E12=1 E14=1 返回 · · · E11中断服务子程序 E12中断服务子程序 E14中断服务子程序 N Y Y Y N N 软件查询中断源流程图 解:查询次序为E11~E14。在查到一个高级中断申请后,就转去为这个中断申请服务,服务结束后,就返回继续查询较低级的中断申请,直到查不到其他中断申请时返回,并再等待INT1上出现新的中断申请信号。 4.5 MCS51中断应用-示例 * ORG 0013H LJMP ITROU …… ITROU:PUSH PSW PUSH ACC ANL P1,#0FH JNB P1.0,N1 ACALL BR0 N1:JNB P1.1,N2 ACALL BR1 N2:JNB P1.2,N3 ACALL BR2 N3:JNB P1.3,N4 ACALL BR3 N4:POP ACC POP PSW RETI BR0:…… ; RET BR1:…… ; RET BR2:…… ; RET BR3:…… ; RET 4.5 MCS51中断应用-示例 * 外来的低电平→反相→CLK端产生上跳沿 →D端的“0”打到Q端→申请中断 INTx P1.0 CLK S Q D 外来中断申请信号(低电平) MCS-51 74LS74 S=0 则 Q=1 中断返回前对P1.0送“0” →令Q端变为“1” 指令如下: ANL P1,#0FEH = CLR P1.0 ;令Q端置“1” ORL P1, #01H = SETB P1.0 ;令S端置“1”,以免下次中断来时Q端不能变“0” 4.5 MCS51中断应用-示例 * 若外部中断定义为边沿触发方式,在相继连续的两次采样中,一个周期采样到外部中断输入为高电平,下一个周期采样到为低电平,则在IE0或IE1中将锁存一个逻辑1。即便是CPU暂时不能响应,中断申请标志也不会丢失,直到CPU响应此中断时才清零。这样,为保证下降沿能被可靠地采样到,外中断引脚上的高低电平(负脉冲的宽度)均至少要保持一个机器周期(若晶振为12MHz时,为
文档评论(0)