[STM32F7] 通过UART_Transmit中断时触发HardFault_Handler

[复制链接]
2140|39
mattlincoln 发表于 2025-10-11 15:00 | 显示全部楼层
检查字符串操作是否溢出              
OliviaSH 发表于 2025-10-11 15:20 | 显示全部楼层
栈空间不足了吧
dspmana 发表于 2025-10-11 15:24 | 显示全部楼层
避免内存泄漏或越界访问。              
zerorobert 发表于 2025-10-11 16:37 | 显示全部楼层
通过查看故障时的寄存器状态定位问题
sdlls 发表于 2025-10-11 20:01 | 显示全部楼层
当任务中调用函数、打印字符串、处理中断、嵌套调用 UART 发送等操作时,​​极易发生堆栈溢出​
minzisc 发表于 2025-10-12 13:34 | 显示全部楼层
检查回调函数              
deliahouse887 发表于 2025-10-12 15:31 | 显示全部楼层
出现 HardFault_Handler 的典型软/硬件协同问题​​
jf101 发表于 2025-10-12 21:34 | 显示全部楼层
在HardFault触发时,检查MSP寄存器指向的堆栈指针,分析调用栈
hilahope 发表于 2025-10-14 13:24 | 显示全部楼层
检查并增大任务栈空间              
jtracy3 发表于 2025-10-14 15:47 | 显示全部楼层
中断优先级冲突              
abotomson 发表于 2025-10-14 21:09 | 显示全部楼层
FreeRTOS 的每个任务都有自己独立的 ​​任务堆栈
janewood 发表于 2025-10-16 21:54 | 显示全部楼层
为什么这能解决问题?              
sdlls 发表于 2025-10-17 09:49 | 显示全部楼层
中断与任务竞争风险              
kmzuaz 发表于 2025-10-17 10:52 | 显示全部楼层
每个任务的堆栈大小足够大,以避免堆栈溢出。
biechedan 发表于 2025-10-17 11:37 | 显示全部楼层
任务的默认栈大小通常非常小              
51xlf 发表于 2025-10-18 10:35 | 显示全部楼层
​查看 HardFault 状态寄存器​
burgessmaggie 发表于 2025-10-18 12:36 | 显示全部楼层
调整任务堆栈大小              
usysm 发表于 2025-10-18 13:12 | 显示全部楼层
没有使用...FromISR版本,就会立即导致HardFault。
chenci2013 发表于 2025-10-18 15:53 | 显示全部楼层
将数据通过队列传递给任务,避免在中断中直接处理复杂逻辑
ingramward 发表于 2025-10-18 17:45 | 显示全部楼层
使用任务标志来通知任务处理接收到的数据,避免在中断回调中直接处理数据。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 在线客服 返回列表 返回顶部