0%

STM32 & FreeRTOS 使用 printf/sprintf 挂死问题处理

遍历文章无数, 都没找到根因.
https://www.baidu.com/s?wd=stm32%20sprintf%20%E6%AD%BB%E6%9C%BA

最终在 STM32CubeIDE FreeRTOS 使用 printf 进入 HardFault_Handler 找到了根源, 记录一下.

创建多个任务,并在任务中使用 printf 串口打印,程序会进入 HardFault_Handler 中断,经查,是因为任务栈分配的太小导致的,STM32CubeIDE 中的 FreeRTOS 默认堆栈大小为 128,更改为 512 即可。

截图.jpg

  • 本文作者: 6x
  • 本文链接: https://6xyun.cn/article/154
  • 版权声明: 本博客所有文章除特别声明外,均采用 BY-NC-ND 许可协议。转载请注明出处!