请教叶老师

[复制链接]
 楼主| 发表于 2010-4-16 10:36 | 显示全部楼层 |阅读模式
PIC单片机在定时器中断程序执行时如果又产生溢出会出现什么后果?
发表于 2010-4-16 22:14 | 显示全部楼层
后果就是会出现中断嵌套呗,PIC的堆栈深度有限,很快就OVER了。
 楼主| 发表于 2010-4-17 16:32 | 显示全部楼层
谢谢答复,没有遇到这种情况。是否程序就死循环了?
 楼主| 发表于 2010-4-17 16:33 | 显示全部楼层
如果PIC中断能够做到像51那样就好了。到时使用的人会更多
发表于 2010-4-17 20:54 | 显示全部楼层
如果PIC中断能够做到像51那样就好了。到时使用的人会更多
jiabin1024 发表于 2010-4-17 16:33


发生中断嵌套后,不管是PIC还是51,都需要有合理的退出办法,否则都只有一个下场:GAME OVER
 楼主| 发表于 2010-4-18 09:56 | 显示全部楼层
谢谢!
发表于 2010-4-18 18:41 | 显示全部楼层
PIC16系列的单片机没有可能中断嵌套吧. 当中断服务程序执行时,全局中断使能是禁止的.如果在这时,
有新的中断事件产生,中断标志位会产生,但中断不会被响应,而是等待前一中断服务程序完成返回后才会被立即
响应.
发表于 2010-4-18 20:18 | 显示全部楼层
完全认同7楼systemchip的说法,PIC单片机当一个中断发生后还没有执行完的话(就是说还没有RETFIE),另外一个中断事件会Hold下来,是进不来的,当上面中断处理完成后,才会马上进来来执行后一个事件,因为跳到中断程序时,Gie是强制清0的,当执行RETFIE后才会自动将GIE置1
叶老师误人子弟啊,嘿嘿。
发表于 2010-4-19 09:22 | 显示全部楼层
完全认同7楼systemchip的说法,PIC单片机当一个中断发生后还没有执行完的话(就是说还没有RETFIE),另外一个中断事件会Hold下来,是进不来的,当上面中断处理完成后,才会马上进来来执行后一个事件,因为跳到中断程 ...
Light_David 发表于 2010-4-18 20:18


使用PIC的时候有一些人会在进入中断后手工清除GIE来实现中断嵌套从而实现一些特殊的应用。
 楼主| 发表于 2010-4-20 15:17 | 显示全部楼层
嘿嘿~都结贴了还可以发啊!

又学到点
 楼主| 发表于 2010-4-20 15:28 | 显示全部楼层
因为跳到中断程序时,Gie是强制清0的,当执行RETFIE后才会自动将GIE置1


按照这个说法是不是就不存在中断嵌套了,不知道我的理解对不对?
发表于 2010-4-20 17:20 | 显示全部楼层
对于PIC来说,如果你不操作GIE,则自然不会产生中断嵌套。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

23

主题

829

帖子

1

粉丝
快速回复 返回顶部 返回列表