单片机 第四章 中断和定时.ppt

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

学习指导 1、中断概念 中断处理过程和中断优先级 80C51中断系统的结构 中断的应用 2、C语言函数定义和调用 3、定时/计数器的结构和工作原理 4.1.1 中断 一、中断定义 中断是指当CPU在正常执行程序过程中,由于外部设备(或内部事件)发出中断请求,要求CPU停止当前执行的程序,转去执行相应的处理程序(中断服务程序),处理程序执行后,返回到被中断的程序中继续执行。 五、中断处理过程 4、执行中断服务程序; 5、恢复现场。把保存的现场内容从堆栈弹出,以恢复寄存器和存储单元的原有内容; 6、返回主程序(或调用程序),执行中断返回指令,把断点处地址从栈顶弹出,从断点处继续执行主程序(或调用程序)。 4.1.2 80C51的中断系统 一、 80C51的中断系统结构 (二)80C51中断系统的结构 有5个中断源,2个优先级,可实现二级中断嵌套 。 4.1.3 80C51的中断源和有关寄存器 一、中断源的5个中断请求信号 二、中断请求标志 1、TCON(定时/计数器控制寄存器)的中断标志 2、SCON的中断标志 一、中断允许控制 CPU对中断系统所有中断以及某个中断源的开放和屏蔽是由中断允许寄存器IE控制的。 二、中断优先级控制 80C51单片机有两个中断优先级,可实现二级中断服务嵌套。每个中断源的中断优先级都是由中断优先级寄存器IP中的相应位的状态来规定的 。 同一优先级中的中断申请不止一个时,则有中断优先权排队问题。同级的中断优先权排队,由中断系统硬件确定的自然优先级形成,其排列如所示: 80C51单片机的中断优先级有三条原则: 二、中断优先级的控制原则 1、低优先级中断请求不能打断高优先级的中断服务;但高优先级中断请求可以打断低优先级的中断服务,从而实现中断嵌套。 2、如果一个中断请求已被响应,则同级的其他中断响应将被禁止。 3、如果同级的多个请求同时出现,则按CPU查询次序确定哪个中断请求被响应。其查询次序为: 外部中断0?定时中断0?外部中断1?定时中断1?串行中断。 五、中断的返回 中断服务程序的最后一条指令为中断返回指令RETI,其作用是: (1)将压栈保护的PC的内容弹出,送回PC。CPU可由被中断的位置继续执行原有程序。 (2)将相应的中断的优先级触发器清0,表示中断服务程序执行结束。 3、串行中断软件撤除 串行中断的标志位是TI和RI,但对这两个中断标志位不进行自动清零。因为在中断响应后,还需测试这两个标志位的状态,以判定是接收操作还是发送操作,然后才能清除。所以串行中断请求的撤除应使用软件方法。 即:CLR TI ;TI 0 CLR RI ;RI 0 例1 用一维数组实现跑马灯控制。 #includereg51.h void delay(int t); void main(void) { int i; char code led[8]={0x01,0x02,0x04,0x08, 0x10,0x20,0x40,0x80}; while(1) { for(i=0;i8;i++) { P0=led[i]; delay(250); } } } #includereg51.h int t=200; void delay(); void main(void) { int i; char code led[8]={0x01,0x02,0x04,0x08, 0x10,0x20,0x40,0x80}; while(1) { for(i=0;i8;i++) { P0=led[i]; delay( ); } } } 4.3 80C51的定时/计数器 实现定时功能,可以采用下面三种方法: 4.3.1 定时/计数器的结构和工作原理 思考题及习题 1、80C51有几个中断源?各中断标志是如何产生的?又是如何复位的?CPU响应各中断时,其中断入口地址是多少? 2、某系统有三个外部中断源1、2、3,当某一中断源变低电平时便要求CPU处理,它们的优先处理次序由高到低为3、2、1,处理程序的入口地址分别为2000H、2100H、2200H。试编写主程序及中断服务程序(转至相应的入口即可)。 3、外部中断源有电平触发和边沿触发两种触发方式,这两种触发方式所产生的中断过程有何不同?怎样设定? 4、定时/

文档评论(0)

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

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

1亿VIP精品文档

相关文档