找回密码
 立即注册
查看: 949|回复: 19

全自动蓝牙下载器!使用STC8H2K08U和JDY33模块制作, 可通讯可下载

[复制链接]
  • TA的每日心情
    开心
    3 小时前
  • 签到天数: 110 天

    [LV.6]常住居民II

    31

    主题

    390

    回帖

    1966

    积分

    荣誉版主

    积分
    1966
    发表于 2024-2-22 17:51:54 | 显示全部楼层 |阅读模式
    本帖最后由 王昱顺 于 2024-3-7 13:59 编辑

    全自动蓝牙下载器, 使用STC8H2K08U和JDY33模块制作 !
    通讯下载,自动配置蓝牙模块
    完美收尾!现在可以实现STC全系列单片机的无线下载,甚至包括STC8以上型号的检测MCU选项后自动切换正确型号的功能。

    非常适合智能车参赛选手实现远程的下载,调试,停车。方便多多



    前言:
    早在之前调试智能车和一些较为恶劣坏境(非电磁环境恶劣,单纯温度比较高这种)的产品的时候,总是苦恼于没法远程下载程序,当时虽然研究过一段时间的远程OTA更新功能,但是这对单片机的型号又做出了一些限制,甚是苦恼。
    其实之前也尝试过不少的无线模块,想直接用在下载上。可是尝试过的几款不是因为数据分包发送的巨大延迟导致的通信超时,就是因为STCISP操作串口时直接给端口干掉线了。
    但是近来逛论坛的时候,发现有人推荐使用JDY33这款型号的蓝牙模块。马上看了一下淘宝,六块钱包邮。这不赶紧试试!
    于是赶忙下订单、收货、测试一条龙。果然网友的消息就是灵通,这一试立马就成功了。
    其实事情本该到此结束,毕竟我这无线下载的需求终于实现了。但是我又觉得这种手动断电的方式不大美妙了(串口不断电下载会因为调试程序时的卡死而罢工的,所以也没用)
    这不,才有了这个小玩意,自动下载器。


    介绍:
    原理其实很简单,就是通过监听蓝牙TXD线路中的0x7F数据。因为STC-ISP下载用的是偶校验,所以单片机串口也要设置成偶校验。检测到足够数量的连续0x7F数据就进行一次自动断电操作(同样的,也可以在蓝牙的数据通道手动发送至少20个的0x7F完成一次冷启动复位)
    然后我还加了个小功能,连接TypeC口或者Link1D-4P下载口并供电时,可以一键复位掉蓝牙模块,免去配置波特率和校验位的麻烦。
    这个功能其实就是通过在所有波特率轮着发送恢复出厂设置的消息,全发送一遍。肯定就复位了。然后再通过默认的波特率进行通讯和配置。

    这个是整套的样子
    截图202402251041244585.jpg



    注意事项及其教程:
    首先需要电脑跟SPP蓝牙进行配对(默认密钥1234),然后在这个设备上建立一个COM虚拟端口(各个版本Windows操作方法不一样,请自行查阅)
    下载的时候需要保证最高波特率和最低波特率都是115200,且硬件选项部分IRC要设置为“不调节,使用内置频率”或者直接取消勾选本次需要修改硬件的选项
    截图202402251634349848.jpg

    其余部分和正常的下载器使用一样,直接点击下载就可以开始下载程序了。
    并且这个下载是不影响串口数据传输的,仍然可以用这个串口来传输数据用于调试(注意需要设置为偶校验模式,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, 下载次数: 68)














    回复 送花

    使用道具 举报

  • TA的每日心情
    奋斗
    5 天前
  • 签到天数: 97 天

    [LV.6]常住居民II

    9

    主题

    556

    回帖

    817

    积分

    高级会员

    积分
    817
    发表于 2024-2-22 19:19:17 | 显示全部楼层
    既然要占用目标MCU的P3.0/P3.1串口,支持偶校验的JDY33模块直接接目标MCU,目标单片机中增加串口自定义命令监控也可以实现不断电下载,省去STC8H2K08U中转。
    该方案已验证可行性。

    点评

    是的,可以直接下载。 增加mcu是方便在不更改代码的情况下实现下载。毕竟很多时候程序卡死了,不断电下载就不能用了。而重新上电使用的isp下载可以避免这种情况。 而且后续打算支持自动设置蓝牙模块的功能,这样可以  详情 回复 发表于 2024-2-22 20:04
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    开心
    3 小时前
  • 签到天数: 110 天

    [LV.6]常住居民II

    31

    主题

    390

    回帖

    1966

    积分

    荣誉版主

    积分
    1966
     楼主| 发表于 2024-2-22 20:04:31 | 显示全部楼层
    本帖最后由 王昱顺 于 2024-2-22 20:09 编辑
    21cnsound 发表于 2024-2-22 19:19
    既然要占用目标MCU的P3.0/P3.1串口,支持偶校验的JDY33模块直接接目标MCU,目标单片机中增加串口自定义命令 ...

    是的,可以直接下载。
    增加mcu是方便在不更改代码的情况下实现下载。毕竟很多时候程序卡死了,不断电下载就不能用了。而重新上电使用的isp下载可以避免这种情况。
    而且后续打算支持自动设置蓝牙模块的功能,这样可以免去配置蓝牙模块的麻烦。
    这个的使用方向主要是方便参加智能车的同学调车用的,毕竟写逻辑卡死的时候就只能通过重新上电来解决了,算是对新手更友好吧
    这样调车的时候,小车满地乱跑也不用冒着被车创的风险去抓车了
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    奋斗
    5 天前
  • 签到天数: 97 天

    [LV.6]常住居民II

    9

    主题

    556

    回帖

    817

    积分

    高级会员

    积分
    817
    发表于 2024-2-22 20:17:59 | 显示全部楼层
    王昱顺 发表于 2024-2-22 20:04
    是的,可以直接下载。
    增加mcu是方便在不更改代码的情况下实现下载。毕竟很多时候程序卡死了,不断电下载 ...

    我说的这种方式确实不太适合频繁调试,因为调试过程中可能程序卡死导致串口无响应。

    点评

    方便的工具才是最好的工具,这样也不用更改程序代码,也没有程序卡了没法下载的闹心事。 而且这部分的成本也没多少,0.99的mcu,0.05的pmos管,两个电阻三个电容,选装的typec和按键。成本也就2块钱还不到  详情 回复 发表于 2024-2-22 20:25
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    开心
    3 小时前
  • 签到天数: 110 天

    [LV.6]常住居民II

    31

    主题

    390

    回帖

    1966

    积分

    荣誉版主

    积分
    1966
     楼主| 发表于 2024-2-22 20:25:45 | 显示全部楼层
    21cnsound 发表于 2024-2-22 20:17
    我说的这种方式确实不太适合频繁调试,因为调试过程中可能程序卡死导致串口无响应。 ...

    方便的工具才是最好的工具,这样也不用更改程序代码,也没有程序卡了没法下载的闹心事。
    而且这部分的成本也没多少,0.99的mcu,0.05的pmos管,两个电阻三个电容,选装的typec和按键。成本也就2块钱还不到
    回复 支持 1 反对 0 送花

    使用道具 举报

  • TA的每日心情
    奋斗
    7 小时前
  • 签到天数: 61 天

    [LV.6]常住居民II

    3

    主题

    556

    回帖

    760

    积分

    高级会员

    积分
    760
    发表于 2024-3-16 13:36:46 来自手机 | 显示全部楼层
    还能这样升级啊。就是近段不是远端

    点评

    适用于恶劣环境调试和移动物体调试使用。远端的话,那就成远程ota了  详情 回复 发表于 2024-3-16 13:50
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    开心
    3 小时前
  • 签到天数: 110 天

    [LV.6]常住居民II

    31

    主题

    390

    回帖

    1966

    积分

    荣誉版主

    积分
    1966
     楼主| 发表于 2024-3-16 13:50:56 | 显示全部楼层
    soma 发表于 2024-3-16 13:36
    还能这样升级啊。就是近段不是远端

    适用于恶劣环境调试和移动物体调试使用。远端的话,那就成远程ota了
    回复 支持 反对 送花

    使用道具 举报

    该用户从未签到

    1

    主题

    28

    回帖

    71

    积分

    注册会员

    积分
    71
    发表于 2024-4-12 22:20:43 | 显示全部楼层
    无线烧录显示通信超时,是否是帖子里说的“可是尝试过的几款不是因为数据分包发送的巨大延迟导致的通信超时”
    截图202404122220083326.jpg

    点评

    使用的模块是JDY33嘛?这个只能用JDY33蓝牙模块 因为针对JDY33做了自动配置的代码  详情 回复 发表于 2024-4-13 19:30
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    开心
    3 小时前
  • 签到天数: 110 天

    [LV.6]常住居民II

    31

    主题

    390

    回帖

    1966

    积分

    荣誉版主

    积分
    1966
     楼主| 发表于 2024-4-13 19:30:16 | 显示全部楼层
    dongyaozhang17 发表于 2024-4-12 22:20
    无线烧录显示通信超时,是否是帖子里说的“可是尝试过的几款不是因为数据分包发送的巨大延迟导致的通信超时 ...

    使用的模块是JDY33嘛?这个只能用JDY33蓝牙模块
    因为针对JDY33做了自动配置的代码
    回复 支持 反对 送花

    使用道具 举报

    该用户从未签到

    1

    主题

    28

    回帖

    71

    积分

    注册会员

    积分
    71
    发表于 2024-4-13 19:59:34 | 显示全部楼层
    王昱顺 发表于 2024-4-13 19:30
    使用的模块是JDY33嘛?这个只能用JDY33蓝牙模块
    因为针对JDY33做了自动配置的代码 ...

    是的,用的是jdy33
    回复 支持 反对 送花

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|手机版|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

    GMT+8, 2024-5-5 17:04 , Processed in 0.084301 second(s), 69 queries .

    Powered by Discuz! X3.5

    © 2001-2024 Discuz! Team.

    快速回复 返回顶部 返回列表