Rtos 的 Stm32 硬故障异常
Posted
技术标签:
【中文标题】Rtos 的 Stm32 硬故障异常【英文标题】:Stm32 hardfault exception at Rtos 【发布时间】:2021-09-19 07:39:31 【问题描述】:task_create
tasks
rtos_config
debug
我是 RTOS 的新手,在 stm32cubeide 上创建了两个任务,但我在调试时遇到了 HardFault_Handler 异常。为什么会这样?我有需要你的帮助。所有文件 --> link 谢谢....
【问题讨论】:
请张贴代码而不是图片。并显示异常在哪里,或者至少详细说明一下。 我很确定(最小的)任务堆栈大小太小,主要是因为调用了 printf,众所周知,它非常需要堆栈。增加它(例如使用 > 500)并重试。更重要的是启用 FreeRTOS 堆栈溢出检查和 configASSERT 进行开发。 freertos.org/… 享受你的周五之夜 ;) 【参考方案1】:这通常发生在 RTOS 中,因为某些任务需要更多内存。通过编辑您的任务来增加堆栈大小。
如果您添加大量任务或使用更多内存,您可能会溢出 FreeRTOS 中分配的默认总内存堆。您可以在“配置参数”选项卡中增加它。 请记住,FreeRTOS 分配的内存越多,可用 RAM 内存就越少。
【讨论】:
以上是关于Rtos 的 Stm32 硬故障异常的主要内容,如果未能解决你的问题,请参考以下文章