芯源半导体CW32
直播中

王越建

8年用户 1530经验值
私信 关注
[经验]

MCU调试典型问题与解决方法

程序卡死/跑飞
栈溢出:
在启动文件(如startup_STM32fxxx.s)中增大Stack_Size。
使用__get_MSP()检查栈顶是否被改写。

中断冲突:
确认中断优先级分组(NVIC_SetPriorityGrouping())。
检查未处理的中断标志(清除Pending位)。

HardFault定位:
在HardFault_Handler中读取SCB->CFSR(故障状态寄存器)、SCB->HFSR、SCB->MMFAR(内存管理地址)。
使用ARM Cortex-M的故障诊断库(如CmBacktrace)自动定位崩溃代码行。


更多回帖

发帖
×
20
完善资料,
赚取积分