请教个问题,怎么找导致异常的问题

wellee   2009-2-5 15:10 楼主
程序有错,有时就会进入异常,停在异常处理函数。
以前用arm9也常遇到,一般在调试窗口把处理器模式改成运行应用的SVC模式,就可以看到进入异常之前的函数堆栈。
在stm32上遇到几次异常,不知道怎样才能查出导致异常的代码

回复评论 (6)

在异常处理函数开始处放置一个端点,当进入异常后直接检

                                 回溯找到是哪段程序导致的异常。
点赞  2009-2-5 15:14

可以直接看看LR寄存器(好象是R14),就知道产生异常的地点

                                  
点赞  2009-2-5 15:58

看来我的问题比较大阿,每次进异常的时候

                                 LR,PC都是FFFF。。 :(
点赞  2009-2-5 16:00

估计是你的程序先跑飞了,然后在进的异常

                                  
点赞  2009-2-5 16:02

写错了

                                 SP是fffffff,pc在异常函数上
点赞  2009-2-5 16:03

还有个问题,用stlink2+iar442a,仿真的时候不能改变量

改变量的时候,很多内存乱变。

是不是与DMA有关?原来好像没这问题啊
点赞  2009-2-5 16:05
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复