stm32进入hardfault原因分析

代码有时候会莫名奇妙的进入HardFault_Handler()函数里面,然后就进入死循环。
在网上查找了下,主要原因有下面两个:

  1. 内存溢出或者数组访问越界;
  2. 堆栈溢出(这里网上说可以,通过在启动文件里面配Stack_Size EQU 0x00000d00,将堆栈设置
    得很大来解决);
  3. 缺少中断;