ST-Link之No Target Connected问题解决

一、背景:

最近准备做个平衡车练练手(自己着实有些菜)。起初画板子的参考的别的原理图。好些地方没有特别注意。板子回来自己调试的时候遇到问题了。

二、 问题:

要驱动两个电机的编码器。编码器驱动只能使用定时器(通用定时器与高级定时器都具有编码器接口功能,而基本定时器6 7不具有此功能)的通道1和通道2。然而我画板子的时候,起重一个电机编码器接口接到了PB0 PB1(MCU STM32F103C8T6)引脚上,这两个引脚对应的是定时器3的通道3跟通道4.那显然不可以了。于是乎割线、跳线了呗。看了看只能跳到PB6与PB7引脚上了。但是这两个引脚被我用来接MPU6050(姿态传感器)了。其实我用的是模拟IIC,并没有用他的IIC接口。那我就跳线呗。跳线成功了,感觉也没有什么问题。然后下载程序。准备检查下姿态传感器的数据对不对,结果,不对,数据不动,就检查问题。检查程序,发现我的引脚配置除了问题。MPU6050的SDA线配置的不对。重新修改了一下。但是死活下载不进去程序了哎。新问题来了(ST-link连接不上了,出现No Target Connected)!针对新问题进行解决。
在这里插入图片描述

找方法找答案:各种度娘,各种CSDN博客。
原因:说是PA13与PA14两个端口可能软件中配置了,配置成输入或输出了。这个端口是双向端口,被配置就不能下载了。
解决:检测原理图与板子的跳线图。PA13 与PA14我没用到,软件中也没修改到这一部分哎。那就照着网上的方法先试试看呗。
看到了解决方法有这几种:
(1)把自己安装的keil5软件中的USBDriver文件夹下的驱动卸载掉重新更新一下。
在这里插入图片描述
(2)BOOT0引脚接到高电平重新上电就可以下载了。
(3)利用ST-link utility擦除芯片就可以重新下载。
(4)等等……
然而我傻不拉几的选择了第一种方法试试看,然而出现了新的问题:failure loading STLinkUSBDriver.dll 如下图。
在这里插入图片描述
那我又就尝试下第三种方法,结果死活连接不上,要么就是软件无响应。
在这里插入图片描述
又一通找解决方法:更改圈出来的里边的各种配置还是不行,又更新ST-link Firmwave,还是没用,折腾的快要死了都。。。
在这里插入图片描述
接下来就是把BOOT0引脚接VCC,然后试试看—可以了(用的是ST-link utility下载的)。然后又BOOT0 10K拉低。这下就准备到keil中去,毕竟修改程序调试方便。然后又下载不了了。
就是这个问题
failure loading STLinkUSBDriver.dll****还检测不到ST-link V2。。Unit 部分的显示框是空白。。

在这里插入图片描述
正常应该是下图:
在这里插入图片描述

解决方法:
(1)更新下ST-link 驱动。我试的,我的问题还在,没解决
(2)卸载keil,重新安装,终于解决了。能检测到ST-Link/V2 了。但是还是No Target Connected

这下没有急着去看怎么解决,就冷静的思考了。检测硬件部分了。
找到问题了:我用到PA12引脚了,然而芯片不知道什么时候有些连锡。12引脚与13引脚短路了。。。。大写的尴尬。。。。烙铁烫一烫。OK。。可以正常下载程序了。。。

这次的问题出现:(之前从来没遇到过)。让我认真的注意了一下BOOT0 BOOT1这一块,关于启动等等。之前可能大而化之吧,也是学不好的原因吧。
在这里插入图片描述
理解:一般我们的程序都是下载到主闪存存储器中,程序启动也是在这里。

以下三种分析是博友文章:stm32 boot0 boot1的启动方式的描述。我摘抄过来的,可以看全文。

(1) Main Flash memory (flash启动) 是STM32内置的flash,一般我们使用JTAG或者SWD模式下载时,就是下载到这里面,启动后也直接从这启动程序。
(2)System memory 从系统存储启动,这种模式启动的程序功能是有厂家设,一般很少使用,一般来说STM32在出厂是内置了一段bootloader,也就是我们常说的ISP程序,这是一块ROM,出厂后无法修改, 这种启动模式,是为了从串口下载程序,因为厂家提供BootLoader中,可以通过bootloader将程序下载到系统Flash中。
(3)Embedded Memory 内置SRAM,既然是SRAM,自然就没有程序存储的能力,这个模式一般用于程序调试 例如我们修改了代码一个小小地方,然后需要拆除整个flash,比较费时 可以考虑这种启动方式。
  • 21
    点赞
  • 80
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值