最近在处理一个项目的时候,发现单片机总是异常重启。
最初判断是看门狗复位导致的重启;
后面通过对复位寄存器数据的判断确认是非法操作码引起的重启;
至于是什么引起的一直没有头绪,以为是编译器不支持某些特殊操作;
分析了很长时间的程序,并未找到什么非法操作;
最后发现是中断过程中不能处理32位数据,这会导致非法操作重启;
这个问题折腾了很久,以后解决问题还是不能纯靠经验;
最近在处理一个项目的时候,发现单片机总是异常重启。
最初判断是看门狗复位导致的重启;
后面通过对复位寄存器数据的判断确认是非法操作码引起的重启;
至于是什么引起的一直没有头绪,以为是编译器不支持某些特殊操作;
分析了很长时间的程序,并未找到什么非法操作;
最后发现是中断过程中不能处理32位数据,这会导致非法操作重启;
这个问题折腾了很久,以后解决问题还是不能纯靠经验;