程序启动进入 Hard Fault Handler:
1.访问数据越界。 找到程序中访问越界的问题点,并修改它到正常数据区域内。
2.程序使用 SRAM 超过 MCU SRAM 空间大小。(可见我的下一篇文章)
3.系统时钟设置超出规格
显示 Error: Flash Download failed–“Cortex-M4”问题
在 KEIL 仿真或下载时弹出:
出现弹窗的原因可能是以下几种:
1.开启了访问保护,先取消 MCU 访问保护再下载。(往往出现在新使用的芯片上需要用官方软件解锁)
2.选错了或者没有选择加载 Flash 文件算法,在 Flash Download 处选择添加正确的 Flash 文件算 法。
3.BOOT0、BOOT1 选择错误,BOOT0、BOOT1 管脚电平须分别设置为 BOOT0=0、BOOT1=0, 使 MCU 从主闪存存储器启动。
4.Link 驱动版本太低或者太高。
5.在程序中将 JTAG/SWD PIN disable 。
显示 RDDI-DAP Error 问题
编译器优化等级过高,如 Keil AC6 编译器的默认优化等级-Oz,需要改为-O0/-O1。