李大侠,我也是没办法,第一次接收以前工程师留下的难题,他离职之前调了好几个月也没发现出问题,也是第一次用M3,第一次用IAR,第一次碰到这种进入fault_isr的情况,所以只能上网求助。我现在这个程序就是在执行一个刷卡输密码后要去执行指定的函数时程序进入fault_isr,不过这里有个奇怪的现象就是:很有有程序烧进去后一运行就进入fault_isr,都是要刷卡输密码操作几十次以后才会出现,就像今天一天才出现两次,出现时,SP都等于0x20002874;这样我就得出LR为0x20002888,然后根据LR在汇编窗口找到对应的地址0x00006bad,这样就定位到一个函数中的其中一个语句,这个语句非常简单,就是以下语句的if汇编语句,所以真的不知道错哪了,我忘了记第一次BFAR的值了,这个我明天可以再试一下。
.............
if(key != 10)
MenuDis(&TIP4);
...........................................
|