打印

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

[复制链接]
2417|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
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口寄存器来消除中断发生的条件

使用特权

评论回复
5
ZG11211| | 2014-7-24 22:55 | 只看该作者
if(TMR0IE&&TMR0IF)
    {
     TMR0IF=0;
    ;;;
    }

使用特权

评论回复
6
colorful88|  楼主 | 2014-7-25 09:38 | 只看该作者
谢谢各位了,是我大意了

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

18

主题

56

帖子

0

粉丝