
在用Keil对STM32的程序进行仿真时程序有时会跑飞,停止仿真程序会停在HardFault_Handler函数里的死循环while(1)中。 这说明STM32出现了硬件错误。 ![]() 硬件错误中断 STM32出现硬件错误可能有以下原因:1、数组越界操作; 2、内存溢出,访问越界; 3、堆栈溢出,程序跑飞; 4、中断处理错误; 遇到这种情况,可以通过以下2种方式来定位到出错代码段。 方法: 在硬件中断函数 HardFault_Handler 里的 while(1) 处打调试断点,程序执行到断点处时点击 STOP 停止仿真。 ![]() |
【STM32U3评测】SPIDMA发送
【STM32U3评测】实现双通道串口通信系统
实战经验 | RT-Thread环境下Flash错误标志问题解析
OpenBLT移植到STM32F405开发板
OpenBLT移植到STM32F103战舰开发板上适用于所有STM32F103系列的Bootloader
stm32使用定时器触发dma传输,启动dma没反应的几种情况的解决方法
【NUCLEO-WB09KE评测】STM32WB09KE的内部BootLoader使用
【STM32H7S78-DK评测】XIP项目源码分析
基于STM32单片机软硬件结合经验分享
11111111111111111111111111111111111