现象
用着用着Jlink设备可以检测到,但是MDK检测不到设备序列号,换一个Jlink即可正常识别与烧录,很大概率是Jlink固件丢了,我用的山寨版本,市面基本是山寨版本
解决办法
1、查看Jlink的芯片型号,比如我打开盖子后是ATML AT91SAM7S64 这款芯片
2、确认两个引脚
ERASE --拉高可以擦除芯片固件
TST – 拉低进入固件烧录模式
由于市面上很多个版本PCB是不一样的,所以我直接用万用表分析引脚位置,一般PCB上都有排针引出来,比如下面我这个PCB的排针就含有上面两个引脚,但没有丝印,我自己用万用表测了
3、断电 ERASE 短接3.3V引脚 ,上电拉高擦除芯片固件,拔掉USB
4、此刻Jlink连接电脑应该是无法识别设备
5、断电 TST 短接GND 此刻Jlink连接电脑应该是一个串口设备,在设备管理器查看对应串口号
6、安装SAM-BA烧录固件的软件、并安装Jlink-V8的固件 ,这可以百度找,找不到在评论区留言,或者在我的资源里下载。
7、打开SAM-BA,选择刚刚的串口号,选择自己JLINK版本对应的芯片 点击进入即可
8、在Send File Name 选择自己的Jlink-V8的固件
点击Send File 等等烧录成功会弹出一个提示,选择是就是锁定JLINk的Flash无法更新固件
到此重新连接Jlink即可
本文参考
https://blog.csdn.net/m0_38012497/article/details/127291037
的修复方式,非常感谢他。