pic单片夹进入中断后就出不来了

[复制链接]
 楼主| colorful88 发表于 2014-7-23 20:48 | 显示全部楼层 |阅读模式
本帖最后由 colorful88 于 2014-7-23 20:57 编辑

在程序里编写了一个定时器的中断,
        TMR0IE = 1;
        INTE=1;
        IOCIE=1;
        OPTION_REG=0b00000111;//
        TMR0=207;
        PEIE=1;
        GIE=1;
这是程序初始化
void Delay_ms(unsigned int ms)
{
        g_CountMs = 0;
          while(g_CountMs < ms);
}
delay函数。
if(TMR0IF)
    {
             g_CountMs++;
           g_CountMs2++;
    }
中断判断。
进入中断后,g_countMS自加后自动进入中断程序,g_counts又自加,所以用pickits3全速运行,程序会不停的在中断程序循环。
aoshi0603 发表于 2014-7-23 21:59 | 显示全部楼层
进入中断后在退出前要清中断标志位,其次进入中断间隔太短也会造成退出后又进中断
MOn51 发表于 2014-7-23 21:59 | 显示全部楼层
要清除中断标志位。
yewuyi 发表于 2014-7-24 11:17 | 显示全部楼层
1、中断向量的判断要将中断标志位和中断容许位一起判断,这是单中断入口芯片的特殊要求
2、进入中断应当首先清除中断标志位,如果是电平变化中断等,还应该通过再读IO口寄存器来消除中断发生的条件
ZG11211 发表于 2014-7-24 22:55 | 显示全部楼层
if(TMR0IE&&TMR0IF)
    {
     TMR0IF=0;
    ;;;
    }
 楼主| colorful88 发表于 2014-7-25 09:38 | 显示全部楼层
谢谢各位了,是我大意了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

18

主题

56

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部