type
status
date
slug
summary
tags
category
icon
password
已经懒得不行了…
1. 前言
是的,我就是要写这个B前言,这是我的博客,我爱写啥写啥 😋 我不禁要写废话,我还不写句号 😋
最近薅了很多TaoBao商家的羊毛,1块钱左右的蓝牙串口透传模块,不要白不要啊,比我买个CH340还便宜。不过都是拿样价,只能买一次,下一次就会变成2块多或者3块多,即使恢复原价,那也不贵啊 🥰

买了好多,一直没用,基本都是串口透传的功能,暂时用不上
但是最近,我发现无线调参功能很刚需。就比如有些参数变量是需要根据实际情况不断修改的,但是受限于板子体积或者各种原因,没法添加太多按键或外部输入,这时候只能依赖串口传参,以实现对变量的修改
在这之前我一直是使用有线串口,即CH340连接电脑,在电脑端串口助手发送信息来修改的。但是呢,但是,我有一个项目需要运行在无电脑的地方,我需要经常修改一个变量,此时无线调参的作用就来了 😀
(至于是什么项目,下篇文章估计会出来吧?)
从里面挑了一个,挑了新一科技的XY-MBO26A,没别的,只是刚看到他家的教程,觉得挺简单的。用了一下确实挺好用的,可以看到我后面又买一个他家的,才0.95元,代替CH340挺好的
简单焊了一下必要引脚,用杜邦线插在我的STM32G030开发板上,不浪费免费打样券去打板了,主要是为了验证功能

2. 测试
模块引脚图


我只焊了VCC、GND、TX、RX、LINK、BRTS六个脚,其他的似乎没有使用的必要。
LINK脚接MCU GPIO中断,用于蓝牙状态指示;BRTS脚使用MCU GPIO输出高低电平控制模块进入或离开睡眠模式
实际上,这个模块如果想和电脑进行透传的话,直接模块连USB-UART工具就可以了,比如连接一个CH340,完全不需要MCU,只是我手上没有单独的USB串口工具,我就使用一个STM32开发板来测试
我使用的是STM32G030F6P6:
- 开启两个串口,USART1连接板载CH340,USART2连接蓝牙串口透传模块;
- 开启一个GPIO中断连接蓝牙模块的LINK引脚;
- 开启一个GPIO_OUTPUT控制蓝牙模块的BRTS引脚
上代码👇👇👇(GPT写的,我菜)
main.c反正我是没看懂代码,这个串口中断我没用过啊,回调函数也没看懂在干嘛
唉~能用就行 🤭 btw,GPIO中断是我加的
一开始还是遇到了通信的问题,我在微信使用蓝牙串口小程序,它们都叫我选一个服务通道,我还纳闷这是啥,翻了下手册才知道要选服务通道才能收发消息


大概就是接收服务要用0xFFF1,发送服务用0xFFF2,这个可以用AT指令改,以满足与其他蓝牙透传模块互联
AT指令似乎只能从模块的RX引脚接收,无线接收不了AT指令,会将AT指令当初普通文本直接透传过来



/* 连续大量发包也是OK的 */
3. 最后
好玩 😋
AT指令能修改的部分挺多的,看样子应该是只能从模式连接,不过也够用了,很少有当主设备的场景
而且这个蓝牙模块功耗比较低。我的USB-HUB有电流检测的功能,能看到整板电流在唤醒和休眠蓝牙模块之间的差异。模块唤醒后空闲状态比休眠时的整板电流多出2mA左右,唤醒状态下无线串口发送比休眠时整板电流多出4mA,相比WiFi那动不动大100mA的电流,BLE还是比较省电的 😙
暂时用到这里吧,后续用来替代串口芯片用了
PDF - 模块手册 ↓ ↓ ↓
- 作者:sleepfat
- 链接:https://blog.sleepfat.top/ble-uart-module-test
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。


BLE蓝牙串口透传模块试用




