- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
一、单片机中断系统 1.中断的定义 所谓中断,是指CPU正在处理某些事务的时候,外部又发生了某一事件,请求CPU及时处理。于是,CPU暂时中断当前的工作,转而处理所发生的事件。处理完毕,再回到原来被中断的地方,继续原来的工作。这样的过程,称为中断。 中断示意图 参考程序如下。 #include reg51.h void Delay(unsigned int i) /*延时函数Delay( ),i为形式参数,不能赋初值*/ { unsigned int j; for(;i 0;i--) for(j=0;j125;j++) {;} /*空函数*/ }void main( ) /*主函数*/ { unsigned char play [9]={ 0xff,0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};/*定义了流水灯的显示数据*/ unsigned char a; * 第十讲 51单片机中断系统 中断方式流程图 中断嵌套流程图 ①中断源 ②中断申请 ③开放中断 ④保护现场 ⑤中断服务 ⑥恢复现场 ⑦中断返回 2.中断涉及的几个环节(单片机最多只能实现二级嵌套) 手机 手机铃声响了 提醒你去接 你准备去接电话 一开始你正在电脑上看视频 在电脑上暂停我的这个视频 你开始接电话 挂断电话 回来 继续看我的视频 3.AT89S52单片机的中断源 S52系列有6个中断源(比S51多一个T2) ⑴2个外部中断请求:INT0,INT1 ⑵3个片内定时器/计数器T0、T1和T2中断请求: TF0,TF1,(TF2) ⑶1个串行口中断请求:TI/RI 1.定时器控制寄存器TCON (88H) TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 TCON TF0/TF1:定时器0/定时器1溢出中断申请标志位: =0:定时器未溢出; =1:定时器溢出申请中断,进中断后自动清零。 TR0/TR1:定时器运行启停控制位: =0:定时器停止运行; =1:定时器启动运行。 是管理定时器工作的SFR(其中低4位管外部中断,高4位管定时器/计数器中断) 二、与中断相关的特殊功能寄存器 IE0/IE1:外部中断申请标志位: =0:没有外部中断申请; =1:有外部中断申请。 IT0/IT1:外部中断请求的触发方式选择位: =0:在INT0/INT1端申请中断的信号低电平触发; =1:在INT0/INT1端申请中断的信号负跳变触发. TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 TCON EA — ET2 ES ET1 EX1 ET0 EX0 IE 2.中断允许寄存器IE (0A8H) EX0/EX1/ET1/ET0/ES 位: 分别是INT0/1,Timer0/1,串行口的中断允 许控制位: =0 时禁止中断; =1 时允许中断。 ET2:T2中断允许控制位(仅52系列有) =0 时禁止中断; =1 时允许中断。 EA:总的中断允许控制位(总开关): =0 时禁止全部中断;=1 时允许中断。 — — PT2 PS PT1 PX1 PT0 PX0 IP PX0/PX1:INT0/1优先级控制位: =0 时属低优先级; =1 时属高优先级。 PT0/PT1/PT2:T0/1/2中断优先级控制位: =0 时属低优先级; =1 时属高优先级。 PS1:串行口中断优先级控制位: =0 时属低优先级; =1 时属高优先级。 3.中断优先级控制寄存器IP (0B8H) 【例】PX1=1;外中断INT1被设置成高优先级 PT0=0;定时器T0被设置成低优先级 总线方式 IP=0x04; //IP=0000 0100 将PX1设为1 PT0设为0; 对同时发生多个中断申请时: ?不同优先级的中断同时申请(很难遇到) ——先高后低 ?相同优先级的中断同时申请(很难遇到) ——按序执行 ?正处理低优先级中断又接到高级别中断 ——高打断低 ?正处理高优先级中断又接到低级别中断 ——高不理低 4.中断优先级处理原则 三、中断系统硬件结构 四、单片机的中断矢量与优先级 中断矢量: 单片机的 6 个中断源分别对应有各自的中断服务程序入口地址——中断矢量 000BH TF0 定时/计数器0(T0) 002BH TF2 定时/计数器2(
文档评论(0)