目录
一、前言
二、错误分析
三、解决方法
四、下载附件
五、总结
一、前言
最近换了新电脑后,很多开发软件都要重装,也是这次偶然的机会发现了我在Keil5软件上用J-Link烧录程序时出现了 Error:Flash Download failed – “Cortex-M4” 的错误。在整个排查过程中发现自己还是有很多小错误没意识到,导致耗费了很长时间。现记录一下备忘。
二、错误分析
Error : Flash Download failed – “Cortex-M4” 。这个错误原因大概是说”Cortex-M4″的Flash文件下载失败或者说无法下载的意思。
排除掉硬件损坏的情况后,通常可能是下面几个问题导致出现 Error : Flash Download failed – “Cortex-M4” 的错误
序号 | 常见问题 | 原因分析 |
---|---|---|
1 | keil可能没有识别到JLink烧录器 | J-Link烧录器如果是山寨版就可能会识别不到 |
2 | Flash文件缺失或错误 | 工程中没有Flash文件,或没有根据要烧录的芯片型号设置对应的Flash文件 |
3 | 烧录速度过快 | J-Link的烧录速度过快,有时候也可能会导致报错 |
三、解决方法
1.检查Keil有没有识别到自己的J-Link烧录器。说明一下:高版本的J-LINK驱动会识别出用的烧录器是盗版的,会有一个警告。所以识别不到的建议将原来的驱动卸载掉,安装低版本的驱动试试。具体操作见下图:
点击这里去官方网址下载驱动
2.检查有没有正确配置好对应芯片的Flash文件。自己选择的这个Flash文件一定要真的存在Keil安装路径下的flash文件夹中。最好是跟进Keil安装路径,看看有没有。发现Flash文件不存在的那就把安装路径D:\Keil5\ARM\PACK\Keil\STM32F4xx_DFP\2.13.0\CMSIS\Flash的内容全部复制到D:\Keil5\ARM\Flash当中。具体操作见下图:
3.J-Link的烧录速度过快,有时候也可能会导致报错。具体操作见下图:
四、下载附件
点击下载stm32f4的配置包,可以理解为就是那个Flash的安装包
五、总结
我Flash文件设置了,但是发现在”D:\Keil5\ARM\Flash”中没有这个文件。后面就把”D:\Keil5\ARM\PACK\Keil\STM32F4xx_DFP\2.13.0\CMSIS\Flash”的内容全部复制到”D:\Keil5\ARM\Flash”当中。然后把刚刚的文件remove掉再重新设置Flash文件。
同时发现Keil识别不到我的J-LINK烧录器,后面卸载掉驱动后重新安装了低版本的驱动,重启Keil后就能烧录了。
还有就是一开始烧录速度过快,有时候烧录不了。