我根据lab8的Flash例子代码进行了部分改写,改写后的工程文件见附件。
我在其中添加了一个读Flash的函数,并对该函数进行引用。发现如下问题:
PrimaryFlashGet(pString, Add0);
PrimaryFlashGet(ppString, Add1);
这两行为Flash的读操作,在两行都存在时,将代码烧写到板子上会进入FaultISR无限循环
注释掉其中的任意一行都可以正常运行。
请问这是为什么?该如何解决。
Wellin Zhang:
Lucky
函数没有问题。出现fault error的原因是stack大小不足。可以采取以下两种方式解决:
1. 增加Stack的大小。
2. 将pString和ppString定义为全局变量。
TI中文支持网
