- 1、本文档共32页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
微机原理与应用-05 中断系统
第5章 MCS-51的中断系统;主要内容;§5-1 中断的概念 1. 输入输出方式;2. 中断的概念;某人看书 执行主程序 日常事务
电话铃响 中断信号INT=0 中断请求
暂停看书 暂停执行主程序 中断响应
书中作记号 当前PC入栈 保护断点
电话谈话 执行I/O程序 中断服务
继续看书 返回主程序 中断返回;3.中断的产生;4. 中断的功能;§5-2 中断系统的结构;一.中断控制寄存器;二. 中断的嵌套;§5-4 中断的处理过程;1. 中断请求被响应的条件;2.中断被封锁的情况;3. 外部中断的响应时间;4.外部中断的触发方式;5. 中断的撤销;电平方式外部中断请求信号的软硬件结合撤销(教材P110页);6. 中断的响应过程;1. 主程序结构;2.中断初始化;例5-3 假设允许外部中断0中断,并设定它为高级中断,其它中断源为低级中断,采用跳沿触发方式。在主程序中应有如下程序段:
SETB EA ;EA位置1,CPU开中断
SETB EX0 ;EX0位置1,允许外部中断0产生中断
SETB PX0 ;PX0位置1,外部中断0为高级中断
SETB IT0 ;IT0位置1,外部中断0为跳沿触发方式 ;§5-5中断服务程序设计;响应过程:(假设已使某中断请求标志置1)
(1)先使相应优先级状态触发器置1;
(2)执行一个硬件子程序的调用:
1)硬件清零相应中断请求标志(TI、RI除外)
2)将当前PC内容压入堆栈——保护断点;
3)将中断服务子程序入口地址送PC——转移。
返回过程:(RETI执行后)
(1)使相应优先级状态触发器清0。
(2)从堆栈中弹出栈顶的两个字节内容送PC——恢复断点。
(3)CPU接着中断处继续执行原主程序。;例5-4:中断举例; ORG 0000H
AJMP MAIN ; 上电自动转向主程序
ORG 0003H ; INT0的入口地址
AJMP WINT ; 指向中断服务程序子程序
ORG 0100H ; 主程序
MAIN: SETB IT0 ; 选择边沿触发方式
SETB EX0 ; 允许外部中断0
SETB EA ; 允许总中断
HERE: AJMP HERE ; 主程序踏步
ORG 0200H
WINT: MOV A, #0FFH ;
MOV P1, A ; P1 准双向口设定输入态
MOV A, P1 ; 取开关数
RR A ; P1.0送P1.7
MOV P1, A ; 输出驱动灯泡发光
RETI ; 中断返回
END;例5-5:中断举例; ORG 0000H
LJMP MAIN
ORG 0013H ;中断矢量
LJMP INT
MAIN:SETB EA ;开总中断允许“开关”
SETB EX1 ;开外部中断1允许“开关”
CLR PX1 ;0 优先级(也可不要此句)
SETB IT1 ;边沿触发
MOV B,#01H ;给 B 寄存器赋初值
HERE:SJMP HERE ;原地等待中断申请;当外部中断源多于中断输入引脚时,可采取以下措施:
1.用定时器计数输入信号端T0、T1作外部中断入口引脚;
2.用串行口接收端RXD作外部中断入口引脚;
3.用一个中断入口接受多个外部中断源,并加入中断查询电路。;课堂练习;1.外部中断1的中断入口地址为( c )。
(A)0003H (B)000BH (C)0013H (D)001BH
2.各中断源发出的中断申请信号,都会表记在MCS-51系统中的( b )。
(A)TMOD (B)TCON/SCON (C)IE (D)IP
3.下列有关MCS-51中断优先级控制的叙述中,错误的是:d
A、低优
文档评论(0)