KEIL5烧录提示” No target connected”,因为STM32CubeMX软件问题

05/30

KEIL5烧录提示” No target connected”,因为STM32CubeMX软件问题_第1张图片
STM32CubeMX版本5.2

翻出一个旧工程,通过工程文件下的xxx.ioc打开STM32CubeMX修改些东西并Generate code。打开KEIL5工程后说我的Device找不到什么的巴拉巴拉,并且魔术棒里的单片机型号、调试器都是默认值,在重新设置好魔术棒里的参数后,烧录。。。弹出” No target connected”。

我以为是SWD的GPIO口被占用了导致的,这种情况的话只要让它保持复位并在烧录时松开复位即可(也是网上常见的解决No target connected方法),但是我程序中并没有使用这几个IO,而且这种方法并不奏效。我开始怀疑是不是工程的问题,果然以前生成的工程可以正常烧录,说明了硬件上是没问题的。

后来我又做了很多尝试无果后,把工程文件删掉了,想着打开STM32CubeMX软件再生成一个工程,结果STM32CubeMX软件打不开,提示需要Java的1.7几版本(这才发现我电脑里装了Java SE DK 14),浏览器会自动跳转到Java的下载页面(会让你下载Java 8),点击下载并安装后,软件即可使用,生成的工程终于可以烧录了。
KEIL5烧录提示” No target connected”,因为STM32CubeMX软件问题_第2张图片

这也太奇葩了,直接打开STM32CubeMX软件报错,打开工程下的xxx.ioc文件时又没有报错而且生成个有问题的工程给我。要是早点报错我给他装个对应版本的Java就好了。




06/26

发现电脑里可以同时装多个版本的CubeMX(装在不同文件夹下,最好在文件夹后面加上版本号以便区分),
最好在文件夹名后加个版本号以便区分


所以当你打开.ioc文件时要清楚你打开的是哪个版本的CubeMX,
.ioc文件
打开.ioc文件后查看CubeMX版本:
Help ->About
KEIL5烧录提示” No target connected”,因为STM32CubeMX软件问题_第3张图片

又或者你不想更改默认打开方式,可以创建几个CubeMX的快捷方式,命名对应的版本号,把.ioc文件拖拽到快捷方式上打开。
不同版本的快捷方式

你可能感兴趣的:(单片机开发)