芯片型号:STM32F103RCT6

自己设计了一块PCB板,当然板子的单片机启动部分为了图便捷是照抄别的同事的,焊接完毕后将写的代码烧录到单片机的时候发现烧录失败:

于是我打开keil5的魔法棒并打开Debug查看了Jlink的连接状态如下:

反复检查了arm烧写器的连接没有问题并且确认电脑环境没有问题后我意识到可能是单片机硬件出问题了,仔细检查了一遍自己的原理图也没看出什么问题,原理图如下:

并且和同事的原理图进行反复对比并未看出任何问题。

最终不得不去网上求助,功夫不负有心人,找了几个相同问题的博客后最终看到了一篇让自己茅塞顿开的文章:STM32的SWD烧录模式No Target Connected 错误的一种情况-CSDN博客

文中情况与我的遭遇高度相似,拜读作者文章后我的问题也得以解决。

下面就一起来看看博主给出的解释:

言简意赅就是VDDA需要接3.3V,因为复位模块RC振荡器、PLL的供电全部来自于VDDA,也就是说单片机的时钟系统的供电来自于VDDA。

重新查看了一遍原理图发现虽然我的VDDA管脚打了AVDD的标签,但是5V转3.3V后没有对应的AVDD标签导致布板的同事没有画线,VDDA脚就是悬空的。重新飞线将VDDA接上3.3V后KEIL5也是成功识别出了单片机并完成了烧录和后续测试。

总结:

问题现象:keil5无法识别单片机,无法进行程序烧录

问题原因:VDDA没有供电

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐