欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    51单片机的中断优先级及中断嵌套.docx

    • 资源ID:86419835       资源大小:11.54KB        全文页数:2页
    • 资源格式: DOCX        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    51单片机的中断优先级及中断嵌套.docx

    51单片机的中断优先级及中断嵌套说最基本的,老的51单片机(80C51系列)有5个中断源,2个优先级,可以实 现二级中断服务嵌套。现在很多扩展的51单片机已经有4个优先级(或更多)和 更多的中断源了。在说到中断之前,我先来定义一下优先级,明白了什么是优先级,后面的阐述 就容易明白了。实际上很多人都是混淆了优先级的含义,所以才觉得糊里糊涂。中断的优先级有两个:查询优先级和执行优先级。什么是查询优级呢?我们从datasheet或书上看到的默认(IP寄存器不做设置, 上电复位后为00H)的优先级:外部中断0 >定时/计数器0外部中断1 >定时/计数器1 >串行中断 或 intO, timerO, inti, timerl, serial port 或 INTO、TO、INTI、Tl> UART或 PXO>PTO>PX1>PT1>PS>其实都是查询优级。首先查询优先级是不可以更改和设置的。这是一个中断优 先权排队的问题。是指多个中断源同时产生中断信号时,中断仲裁器选择对哪 个中断源优先处理的顺序。而这与是否发生中断服务程序的嵌套毫不相干。当 CPU查询各个中断标志位的时候,会依照上述5个查询优先级顺序依次查询, 当数个中断同时请求的时候,会优先查询到高优查询先级的中断标志位,但并 不代表高查询优先级的中断可以打断已经并且正在执行的低查询优先级的中断 服务。例如:当计数器0中断和外部中断1 (按查询优先级,计数器0中断外部中断1) 同时到达时,会进入计时器0的中断服务函数;但是在外部中断I的中断服务函 数正在服务的情况下,这时候任何中断都是打断不了它的,包括逻辑优先级比 它高的外部中断0计数器0中断。而中断的执行优先级就是你对IP寄存器的设置了。在2个优先级的情况下,某 位为1,那么相应的中断源为高优先级;为0,那么为低优先级。关于中断的优先级有三条原那么:1、CPU同时接收到几个中断时,首先响应优先级最高的中断请求;2、正在进行的中断过程不能被新的同级或低行优优先级的中断请求所中断;3、正在进行的低行优优先级中断服务,能被高行优优先级中断请求中断;假设:同一执行优先级中的中断申请不止一个时,那么有一个中断优先权排队问题。 同一执行优先级的中断优先权排队,由中断系统硬件确定的自然优先级形成, 优先权自高到低的顺序即:外部中断0定时/计数0外部中断1定时/计数1串行接口 例如:设置IP = 0x10,即设置串口中断为最高优先级,那么串口中断可以打断 任何其他的中断服务函数实现嵌套,且只有串口中断能打断其他中断的服务函 数。假设串口中断没有触发,那么其他几个中断之间还是保持逻辑优先级,相互之 间无法嵌套。关于中断嵌套。可以这样说,当一个中断正在执行的时候,如果事先设置了中 断优先级寄存器IP,那么当一个更高优先级的中断到来的时候会发生中断嵌套, 如果没有设置那么不会发生任何嵌套;如果有同一个优先级的中断触发,它并不是 在“不断的申请”,而是将它相应的中断标志位置即IE寄存器的某位置位,当 CPU执行完当前中断之后,按照查询优先级重新去查询各个中断标志位,进入 相应中断。要记住,没有设置IP时,单片机会按照查询优先级(或都说逻辑优先级)来排队 进入服务。如果要想让某个中断优先响应,那么要设置IP,更改执行优先级(或 者说物理优先级)。要注意的是,当设置了 IP后,当低执行优先级中断在运行 时,如果有高执行优先级的中断产生,那么会嵌套调用进入高执行优先级的中断。 如果你是用C语言写的程序,并在中断服务时using 了寄存组,要注意,两个 不同执行优先级的中断服务程序不要using同一组寄存器。看两个问题,如下:1在各个中断都是低优先级的时候,如果定时器0的溢出进入中断。在这个中 断处理的过程中,外部中断0也被触发了,那么是不是要发生中断嵌套?2如果定时器0发生中断的时候,进入中断处理程序,这个时候外部中断1条 件触发条件满足了。因为定时器0自然优先级比外部中断1高,那么定时器0 的中断处理程序继续执行。假设定时器中断处理程序执行的过程中,外部中断 1的触发。条件消失了,那么等定时器0的中断处理完后,程序还是会进入外 部中断1处理程序吗?答案1:在IP事先设置了外部中断0的优先级的情况下,CUP会中止定时器0 的中断服务,进入外部中断0服务程序,执行完以后再回到定时器0中断服务 程序。否那么不会。答案2:肯定会进入中断的;外部中断1的触发条件满足后会置位外部1的中断 标志,即使后来外部中断1的触发条件消失了,也不会清除已置位的中断标志, 所以等定时器0的中断处理完后,程序判断外部中断的中断标志为I后依然会 进入外部中断1处理程序的,只有在外部中断1处理程序中执行reti指令才会 硬件清除外部中断1的中断标志(这也正是为什么中断返回使用reti指令而不 可以用ret替换的原因)

    注意事项

    本文(51单片机的中断优先级及中断嵌套.docx)为本站会员(太**)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开