- 打卡等级:以坛为家II
- 打卡总天数:458
- 最近打卡:2025-05-01 07:48:22
已绑定手机 已实名认证
版主
- 积分
- 5452
|
本帖最后由 王昱顺 于 2024-3-7 13:59 编辑
全自动蓝牙下载器, 使用STC8H2K08U和JDY33模块制作 !
可通讯可下载,自动配置蓝牙模块
完美收尾!现在可以实现STC全系列单片机的无线下载,甚至包括STC8以上型号的检测MCU选项后自动切换正确型号的功能。
非常适合智能车参赛选手实现远程的下载,调试,停车。方便多多
前言:
早在之前调试智能车和一些较为恶劣坏境(非电磁环境恶劣,单纯温度比较高这种)的产品的时候,总是苦恼于没法远程下载程序,当时虽然研究过一段时间的远程OTA更新功能,但是这对单片机的型号又做出了一些限制,甚是苦恼。
其实之前也尝试过不少的无线模块,想直接用在下载上。可是尝试过的几款不是因为数据分包发送的巨大延迟导致的通信超时,就是因为STCISP操作串口时直接给端口干掉线了。
但是近来逛论坛的时候,发现有人推荐使用JDY33这款型号的蓝牙模块。马上看了一下淘宝,六块钱包邮。这不赶紧试试!
于是赶忙下订单、收货、测试一条龙。果然网友的消息就是灵通,这一试立马就成功了。
其实事情本该到此结束,毕竟我这无线下载的需求终于实现了。但是我又觉得这种手动断电的方式不大美妙了(串口不断电下载会因为调试程序时的卡死而罢工的,所以也没用)
这不,才有了这个小玩意,自动下载器。
介绍:
原理其实很简单,就是通过监听蓝牙TXD线路中的0x7F数据。因为STC-ISP下载用的是偶校验,所以单片机串口也要设置成偶校验。检测到足够数量的连续0x7F数据就进行一次自动断电操作(同样的,也可以在蓝牙的数据通道手动发送至少20个的0x7F完成一次冷启动复位)
然后我还加了个小功能,连接TypeC口或者Link1D-4P下载口并供电时,可以一键复位掉蓝牙模块,免去配置波特率和校验位的麻烦。
这个功能其实就是通过在所有波特率轮着发送恢复出厂设置的消息,全发送一遍。肯定就复位了。然后再通过默认的波特率进行通讯和配置。
这个是整套的样子
注意事项及其教程:
首先需要电脑跟SPP蓝牙进行配对(默认密钥1234),然后在这个设备上建立一个COM虚拟端口(各个版本Windows操作方法不一样,请自行查阅)
下载的时候需要保证最高波特率和最低波特率都是115200,且硬件选项部分IRC要设置为“不调节,使用内置频率”或者直接取消勾选本次需要修改硬件的选项
其余部分和正常的下载器使用一样,直接点击下载就可以开始下载程序了。
并且这个下载是不影响串口数据传输的,仍然可以用这个串口来传输数据用于调试(注意需要设置为偶校验模式,115200波特率)
因为下载的时候会自动打断数据传输,下载完成后会自动恢复的。
PCB设计注意:请预留蓝牙接口,并保证蓝牙接口中的VCC_IN和VCC_OUT可以控制MCU的电源(不要用于控制其他电源,此MOS管只能承受约2A的电流)
(智能车选手注意,因为比赛要求不能存在遥控设备,上场时可以拔下此下载器,并且用短路帽短接VCC_IN和VCC_OUT)
视频版本的介绍:
(最近感冒了,鼻音可能有点重,我已经尽可能说的比较清楚了)
以下是测试视频
这个是检测MCU后自动切换到正确型号的演示
这个是远程下载测试,外部供电
硬件开源连接:https://oshwhub.com/wang_studio/stc-wu-xian-xia-zai-qi
软件下载:(芯片主频为44.2368Mhz)
STC-Wireless-Download V2.zip
(126.46 KB, 下载次数: 345)
|
1
喜欢他/她就送朵鲜花吧,赠人玫瑰,手有余香!
-
+1
楼主威武~
|