keil无法读取到jlink下载器,程序无法下载,报错No Cortex

您所在的位置:网站首页 jlink驱动版本区别 keil无法读取到jlink下载器,程序无法下载,报错No Cortex

keil无法读取到jlink下载器,程序无法下载,报错No Cortex

2024-07-11 17:13| 来源: 网络整理| 查看: 265

1、如题,我用的芯片是STM32F103ZET6,日常的接上下载器进行程序下载,结果发现程序下载不进去,错误提示如下,一看就是Jlink没有连接上。 在这里插入图片描述 在这里插入图片描述

进去设置里面查看,确实没有看到Jlink读取到芯片的信息。 在这里插入图片描述 首先去设备管理器里面查看,驱动是有的 在这里插入图片描述 然后我用这个Jlink连上其他开发板,发现也可以读取到Jlink,程序也是可以下载进去的,控制变量法分析,唯一不同的就是我的板子有问题咯。在网上搜了下相关问题,有一个答案说边下载的时候边按下Reset按键,如下图。 在这里插入图片描述 我试了下,结果出现了新的提示和报错 在这里插入图片描述

在这里插入图片描述 真是一波未平一波又起,怎么办呢,继续查资料,发现又有说将boot0拉高,我的原理图里面是将boot0,boo1都通过10K电阻接地的,同时预留了一个调试电阻到VCC。 在这里插入图片描述 即将上图的R10去掉,焊接到R4的位置,哎呦,果然程序下载成功了,在设置里面也看到Jlink读取到芯片了。 在这里插入图片描述 然后将boot0拉低,即将电阻从R4换到R10,悲催的是程序又下载不进去了,Jlink又读不到芯片 在这里插入图片描述 问题到底出在哪里呢,百思不得其解,继续百度,最终看到了一个文章,然后我也查看我的板子,发现我把应该用8M的晶振用成了25M的。更换晶振后,问题解决。 在这里插入图片描述 PS:为什么需要将boot0拉高再拉低呢,网上这样的说明也挺多的,我再这里再记录一下。可以再STM32中文参考手册的33页,V2.4里面看到关于启动配置的描述,有以下三种。 在这里插入图片描述 主闪存存储器:正常工作就在这种模式下,也是用的最多的模式,STM32的FLASH可以擦出10万次 系统存储器:即我们常说的串口下载方式(ISP),不建议使用这种,速度比较慢。STM32 中自带的BootLoader就是在这种启动方式中,如果出现程序硬件错误的话可以切换BOOT0/1到该模式下重新烧写Flash即可恢复正常。 内置SRAM:是STM32内嵌的SRAM启动。该模式用于调试。

所以一般对boot0和boot1的配置都是通过10K电阻到地,记住一定要接下拉电阻,直接接到VCC和GND会工作异常。但是有时会遇到程序下载不进去或者Jlink和芯片连接不上的问题,有可能是下载程序的IO被占用了,到时程序下载不了,也有可能是SWD下载方式被禁用了等等。这个时候就需要将boot0拉高,重新烧写Flash,然后再将boot0拉低就能正常工作了。 但我这次的问题也算比较冷门,是晶振焊接错了,也算记录一下,避免日后再次犯错。

STM32中文参考手册百度云链接: 链接:https://pan.baidu.com/s/16qt9yJRJkeHlxUJE3cgdAA 提取码:bcvr



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3