STLinkV2对烧录后的芯片不能通讯解决方法(更新)

1、如果将SWD配置为其他GPIO使用(尤其是CM0,内部复用结构域CM3不一样),那么可以通过之前文章介绍的方法,将Flash内容进行Erase或Reprogram;具体为:将RST强制接GND,连接Jlink,按F4或F7,稍微保持RST,连接成功以后,松开RST即可;

2、根据STLinkV2的提示检查SWD+VCC+GND是否连接正常;

3、确认所通讯的IC(CM0)没有加LV2的保护,如果加入该保护,那么该芯片无法再编程;

4、这是我目前遇到的问题,经过尝试,只能先用JLink对MCU先进行擦除,然后用STLink取出保护等操作;估计是跟运行程序有关,有些程序可以用STLink直接Erase.


JLINK能对CM0 Erase,STLINK却不能,经过多翻测试找到原因,是因为TMS,TCK的OTYPER设置错误。

默认复位后,TMS TCK的设置为AF0,OSPEED 50Mhz,PUPD对应为上下拉,OTYPER=PP。

        而我将OTYPER设定为OD,导致烧录完成后,STLINK不能连接。奇怪的是JLINK却可以正常操作,所以一直忽略了设置问题。所以有朋友遇到同样的问题,可以检查下TMS,TCK的setting是否跟reset后默认一致。


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值