极海APM32F003F6P6烧写问题解决记录

工作中遇到的,折腾了好久,因为电脑重装过一遍系统,软件也都重新安装了,所以不知道之前的配置是什么,旧项目代码编译没问题,烧写时疯狂报错,用的是JLink。

keil版本v5.14
在这里插入图片描述

win10版本
在这里插入图片描述
JLink版本 7.82a(64位)
在这里插入图片描述

报错

报错信息:一开始使用keil报错 Error Flash Download failed - “Cortext-M0+“,此时已经按照网上教程更改了flash download配置(如下图)。
在这里插入图片描述之后折腾着折腾着报错信息变了,并且keil一直弹窗报错,点击确定会弹出新报错,直到keil崩溃退出。
在这里插入图片描述
在这里插入图片描述
过程中还把一块板子弄成读写保护状态烧不了程序,换了一块板子还是报这种错且keil崩溃。
在领导指导下试着直接用JLink烧写,结果是J-Link选择APM32F003F6P6芯片后会闪退,选了STM32F103C8T6没有闪退。不知道什么原因。
如下图,点击OK后会闪退

解决

安装了7.20a(32位)版本的JLink之后就可以顺利使用KEIL烧写了
在这里插入图片描述
在这个版本的JLINK里找不到APM32F003F6P6,但是用KEIL烧写就没问题
在这里插入图片描述

在这里插入图片描述
之后又遇到了读保护问题,报错Error Flash Download failed - "Cortext-M0+",参考博客 https://blog.csdn.net/ic2121/article/details/125341745 可使用JLINK解除读保护,原理写的很清楚。
脚本代码我就直接放出来了,文本文件后缀改为.jflash,然后使用JLink.exe打开脚本即可运行,运行前先连接好硬件

si 1
device CORTEX-M0
speed 100
JTAGConfg -1,-1

h
r
h

w4 0x40011004 0x45670123
w4 0x40011004 0xCDEF89AB
w4 0x40011008 0x45670123
w4 0x40011008 0xCDEF89AB
sleep 100

w4 0x40011010 0x00000220
w4 0x40011010 0x00000260
sleep 100

w4 0x40011010 0x00000200
w4 0x40011010 0x00000210
w4 0x00020400 0xFFFF00A5
sleep 100
w4 0x40011010 0x00000080

mem32 0x40011010 0x01
sleep 10

r


之后发现问题也可能是因为我装的keil版本太低的导致的(未验证),后面遇到其他问题换了mdk5.25后,像原来装不上的一些国产芯片pack都很顺利的装上了

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值