第5章 IO接口及中断.ppt

  1. 1、本文档共74页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第5章 IO接口及中断

思考: 1. 电平触发方式下如何避免重复中断? 2. 在电平触发方式下中断会丢失吗? 3. 在边沿触发方式下应注意什么问题? 5.3.1 中断应用实例 按键抖动问题: 5.3.1 中断应用实例 目前的按键大多数采用机械触点的闭合、释放来实现按键的信号输入。由于机械触点的弹性作用,按键的闭合及释放的瞬间不会马上稳定的通、断,而会出现“抖动”现象。案件的过程中电压信号变化如下图所示。其中抖动的时间长短与开关的机械特性有关,一般为5~10ms。这个抖动可能会导致运行程序认为有多次按键情况发生,导致系统错误的执行命令。 按键防抖方法: 消除抖动的方式可以为带去抖动的接口芯片(如8279接口芯片)或去抖电路(双稳态电路或滤波电路),也可以采用电路延时的方法实现。软件去抖是采用延时程序以避开按键的抖动过程,进入键稳定状态后,在进行列线状态的输入和判定。(最常采用的按键去抖方式) 基本控制要求:当人来到门口时,玻璃门能自动开门。 硬件:人到门口的检测:用一个按钮模拟,开门动作由P1.0输出低电平驱动一个指示灯模拟。 中断:外部中断0低电平触发方式,外部中断请求标志IE0响应中断时,不能由单片机内部硬件自动清除。 2、中断程序设计示例(P111 例5.1) 5.3.1 中断应用实例 5.3.2 中断扩展 1. 中断与查询结合 MCS-51单片机有两个外部中断输入端,当有2个以上中断源时,它的中断输入端就不够了。此时,可以采用中断与查询相结合的方法来实现。可以使每个中断源都接在同一个外部中断输入端上,同时利用输入口线作为多中断源情况下各中断源的识别线。 2.中断扩展的电路设计 INT0 INT1 P1.3 P1.2 P1.1 P1.0 +5V IR1 IR2 IR3 IR4 OC门 设计思想: 单线产生中断,软件逐个查询 单线是指只用一根中断请求输入线/INT0 (或/INT1), 把需扩展的多个中断源输入线。 一方面通过一个或非门(或与非门)产生一个中断请求信号送给/INT1,这样,任何一个中断源有中断请求,CPU都能通过/INT1收到。 另一方面,多个中断源输入线连接到P1口,CPU通过在/INT1中断服务程序顺序查询P1口的状态,以确定是哪一个中断源发生的中断请求。 3.中断扩展的程序设计结构 ORG 0013H LJMP INT1 ...... INT1: PUSH PSW PUSH ACC JB P1.0, IR1 JB P1.1, IR2 JB P1.2, IR3 JB P1.3, IR4 GOBACK: POP ACC POP PSW RETI IR1: ; INT2中断服务程序 ...... AJMP GOBACK IR2: ; INT3中断服务程序 ...... AJMP GOBACK IR3: ; INT4中断服务程序 ...... AJMP GOBACK IR4: ; INT5中断服务程序 ...... AJMP GOBACK 中断入口地址 进入中断 排队查询 执行中断程序 中断返回 4.实例演示系统 5.中断扩展实例的程序设计 ORG 0000H ?????? ? LJMP MAIN ? ?????? ? ORG 0003H??? ? ;外部中断0入口 ?????? ? LJMP EX_INT0 ? MAIN: ?????? ? SETB IT0??? ? ; 设置外部中断0触发方式 ;下降沿触发 ?????? ? SETB EX0??? ? ;打开外部中断0 ? ?????? ? SETB EA???? ? ;打开全局中断 ?????? ? JMP? $ ? EX_INT0: ?????? ? JNB?? P1.0, EXP_INT0 ?????? ? JNB?? P1.1, EXP_INT1 JNB?? P1.2, EXP_INT2 EXP_INT0: ?????? ? CPL? P0.0 ?????? ? RETI EXP_INT1: ?????? ? CPL? P0.1 ?????? ? RETI EXP_INT2: ?????? ? CPL? P0.2 ?????? ? RETI ? ?????? ? END 思考: 中断申请电平高有效,还是低有效? 如何判断IR1-IR4 的中断优先级别? 若使IR4 的优先级别高于IR1 应如何修改程序? 有关中断的基本概念 中断、中断源、中断优先、中断响应、中断服务、中断返回 中断屏蔽、中断等待 本章小结 外部中断(2个):外部中断0和外部中断1 定时/计数器中断(2个):定时

文档评论(0)

yaocen + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档