flyMcu给STM32串口烧录失败踩坑、总结及注意事项
关于flyMcu给STM32串口烧录失败中间的过程及自己踩坑和总结
芯片:CKS32F103C8T6的最小系统板,中科芯的
现象:FlyMcu点击开始编程后,就会一直出于开始连接、连接超时、芯片无应答等情况
一、FlyMcu设置、BOOT0及BooT1设置问题
首先:设置BOOT0=1,BOOT1=0为烧录模式;
然后我以为是我的FlyMcu设置出现了问题,然后开始检查、查阅百度资料,按照百度来的设置还是始终不行,如图所示;尝试了网上的很多方法始终无解。
二、芯片本身问题
开始怀疑是不是芯片出问题了,(百度说的CKS和STM的F1系列完全兼容)然后就换了个方式下载,用ST-Link去接SWD接口调试下载,验证成功下载,实验现象正常,如下图,大致排除是芯片的问题了;
正好家里还有个F1ZET6的板子,拿回去测试还是一样的结果,FlyMcu显示开始连接、连接超时,向上面的那张图一样;
三、USB转串口TTL模块问题
其次就是串口模块的问题,这个问题为什么排在芯片本身问题后面呢?因为这个串口模块我之前才刚刚给esp8266烧写程序成功,并完美运行了的,所以我本身就没怎么怀疑这个下载器模块的问题。但是问题肯定还是需要解决的,于是我还是换上了另一个我手上同型号(完全一模一样)的CH340模块,更换接上测试,结果还是一样的。后来某个地方需要用到一个Microusb转TTL的模块,就自己用CH340N焊了一个简易版(方拆卸)这样的,然后就在STM32F103ZET6测试下载,居然成功下载和运行;
(PS:在另一片文章中我会说明一下Microusb转TTL的模块的详细制作说明,有兴趣的可以去看看,哈哈)
那就大概找到以前的下载失败的问题了,是买的USB转TTL模块的问题。查阅了下说明文档,我这个下载器是支持STC全系列的免冷启动的,如下图
全名:5代STC全系列单片机自动编程器免冷启动下载USB转TTL
所以,必须用普通的USB转TTL CH340模块才行,于是接着去测试CKS32F103C8T6板子,连接上电下载,结果现象还是一样的开始连接。。。
那这到底是什么问题呢?BOOT模式设置正确、FlyMcu界面设置正确、自己做的CH340模块也没有问题、测试ZET6的demo也完全能下载成功正常运行;那么真相就只有一个,那就是出在CKS32F103C8T6这块最小板上,所以最后又去某宝心痛的买了两块STM的最小系统板(STM32F103C8T6),如下图,一块蓝色的一块黑色的板子,到货测试,激动人心的时刻来了,你没有猜错,两块板子(蓝色和黑色的)均成功下载并运行,好了问题终得到了解决了!
后来经过多次测试,原来是CKS32F103C8T6那块最小板按下复位键后根本连BootLeader都进不了,最后买的STM32F103C8T6的两块板子及STM32F103ZET6都能成功的进入到BootLeader,这就是本次测试所踩的一些坑及一些小心得体会!
四、 踩坑总结如下:
1. 首先你肯定供电要正常,CH340的驱动需要安装成功,这是基础就不用多说;
2. 串口转TTL模块连接线确保是好的、RX与TX连接正确(C8T6:RX—A9,TX—A10;ZET6:RX—A9,TX—A10);
3. 使用串口下载前,设置为烧录模式:BOOT0=1(高电平),BOOT1=0(低电平),下载完后,可以设置回原来那样都接低电平。;
4. 其次再是FlyMcu设置的问题:串口、波特率(F103的不要超过115200)、左下角模式、选项字节区、编程前重装文件、校验及编程后执行这些选项设置;
5. 加载生成的hex文件,并勾选右边的编程前重装文件,这样,就不用每次下载程序,重新加载hex文件了。
6. 如果你是用买的USB转TTL模块,请选用正确的模块,不要用我买成我的STC的这种(以前剩下的)了,注意分清一下USB转TTL模块与STC系列的下载器;
7. 买的最小板,如果不太懂的就尽量认准STM的买,因为淘宝上一些比较便宜的最小系统开发板就是用的中科芯的MCU,但是如果你使用的是SWD接口调试下载程序这些的,就还是完全没得问题(亲测);
8. 根据实际硬件选择“不使用RTS和DTR”或者“DTR的低电平复位,RTS高电平进BootLoader”等配置,根据实际硬件选择即可;
PS:使用FlyMcu给F103的C8T6串口下载程序,左下角的模式选择无论是DTR低电平复位,RTS高电平进BootLeader还是DTR高电平复位,RTS高电平进BootLeader都是可行的(亲测STM32F103C8T6有效),只需保证程序能进BootLeader即可烧写。如下图
好了,希望猿一的一些踩坑经验能帮助到您!
本文地址:https://blog.csdn.net/weixin_44147894/article/details/107682457
上一篇: Python 中的Sympy详细使用