有关430的定时器捕获,出现程序卡死

2019-03-24 12:30发布

大致是这样的,我用430的定时器捕获,来获取脉冲的宽度,在上下边沿捕获沿,加了捕获中断,运行一会儿,就会出现程序卡死的现象,这是怎么回事啊,详细描述一下:用430的定时器捕获功能来获取超声波模块的测距的时间差,就是在时间差脉冲的两个沿都捕获,两个捕获值相减,再乘以定时器时钟周期就得到了时间差。循环测试,大概是这样,开启定时器捕获中断,触发超声波模块测距,延时等待,再一次触发测距,进入低功耗模式0,定时器0捕获了4次之后,关捕获中断,退出低功耗模式0,继续后面的任务。这样会发生这样的现象,只要在超声波测距范围内快速变化距离,就是连续改变挡的距离,就出现程序卡死了,不知道为什么会出现这个情况。 此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
5条回答
bobde163
2019-03-25 08:48
应该是和中断有很大的关系,我做调试的时候,比如用TACCTL1模块作捕获,根据中断源寄存器的值,明显显示的是捕获中断,可是在中断程序里面进行检测时,不加断点,在判断语句处就会判断错误,从而不能进入相应代码,如果在判断语句上下断点,判断就会正确,这会不会是一个BUG,还是什么其他原因

一周热门 更多>

相关问题

    相关文章