大家好、
我使用的是 Keil v5。
我有这段代码、运行良好、但当将其放入循环时、我会遇到由存储器问题引起的硬故障。 增加堆栈和堆没有帮助。 在 while (1)内、我有这个函数、它调用几个其他函数、而最后一个函数的最后一条指令、由该函数调用、 具有* returnValue = sum (示例)。 问题是返回值= 0xA0007C70、这在我的32KB uC 上无效。 如果我删除它、函数后面会有 memcpy、 这将会失败(如果我删除该 memcpy、没有错误、但一切都是无用的)。
while (1)中还有其他行、但当我只有函数时、增加堆栈和堆会有所帮助。
这种错误使我重做了一切、但上次我遇到 memcpy 复制错误值的问题。 我会得到非常大的值、在这里、我期望值介于0和1之间。
导致这些内存问题的原因是什么? 我以80MHz 的频率运行、这可能是问题吗? 还是在启动过程中出现什么情况?
编辑:嗯、将其更改为40MHz 没有帮助...