程序调试的时候发现程序执行到定时器中断初始化时总是进入HardFault错误
void HardFault_Handler(void)
{
/* Go to infinite loop when Hard Fault exception occurs */
while (1)
{
}
}
网上查了一圈,可能是数组越界或者堆栈不够,数组都查了一遍,不会越界,堆栈的话没有改过,如图1.
我想问的是如何查看当前使用的堆栈大小,是否大于设置的堆栈
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
如果你现在SRAM足够,增加栈空间试试,看看还有没有问题。如果是想要查看当前堆栈,仿真的时候,就可以看到了
我就是想问下怎样知道当前使用的堆栈大小,仿真图在上面
sp就是当前的栈地址
程序未运行时如图1,运行到死循环如图2.SP的值不仅没有增大,反而减小了!!!!!!!!!!!
一周热门 更多>