从基础讲起如何将蓝牙模块嵌入QQ协议平台,新手也能学会?
发布日期:2017.04.20 浏览次数:244
模块是基于 TI CC2640 芯片设计的兼容蓝牙 4.0 低功耗(BLE)单模蓝牙模块。主要应用的方向是智能穿戴式设备、运动健身设备、便携式医疗设备、智慧家庭、工业控制等,可满足低功耗、低时延、消费电子、近距离无线数据通信的要求。蓝牙模块的作用是可以让产品应用功能开发者无须了解低功耗蓝牙协议,直接使用类似串口通信方式、开发支持低功耗蓝牙通信和 QQ平台的智能产品。
本文档是介绍如何将蓝牙模块嵌入 QQ 协议的使用说明,包括模块的主要功能、应用场景、使用方法、逻辑结构、硬件接口及各项指标特性。
原理介绍:
组网透传蓝牙模块可以把所有来自外部 MCU 的串口透传数据通过 BLE 无线信道透明传输给 QQ APP ,再将数据传送给厂商的服务器。厂商服务器的数据也可以通过 QQ APP 透传给外部 MCU。
这里小编拿体重秤为产品类型进行数据透传来说明,在昇润的蓝牙模块和 QQ APP 进行通信前,需要扫描相应的设备(这里是体重秤)二维码进行,模块出厂默认上电后自动广播,打开 QQ中的我的设备中的相应设备,QQ APP 便会自动的连接模块了。
原理框图如下图:
蓝牙透传模块的脚位及相关配置
蓝牙透传模块引脚定义见下图:
串口配置文件介绍
TX:DIO-3
RX:DIO-2
WAKEUP:DIO-1
INT:DIO-0;
115200bps, no parity, one stop bit。
蓝牙配置
蓝牙服务:
SERVICE UUID: 0xFEBA
Write Characteristics UUID: 0000fec7-feba-f1f1-99c0-7e0ce07d0c03
IndicateCharacteristicsUUID: 0000fec8-feba-f1f1-99c0-7e0ce07d0c03
Read Characteristics UUID: 0000fec9-feba-f1f1-99c0-7e0ce07d0c03
AT 指令
功率消耗性能参考
以下表格是模块以 3.3V 电压供电的条件下测试的各种状态下的功耗数据。
其中广播状态默认广播间隔为 100ms, 连接间隔为 30ms.
了解上述软硬件的具体参数及涵义,现在就来说说具体的操作流程:
1.参照原理框图把硬件搭建好。进入 QQ 的发现新设备,通过扫描相应的设备二维码、绑定设备、进入应用界面。
2.MCU 在向模块发送串口数据前需先拉低 WU/DIO1 引脚来唤醒模块。延迟 1ms 后,再发送数据。在数据发送期间,WU/DIO1 必须始终保持为低电平,数据发送完毕后再拉高 WU/DIO1 引脚,使其可以进入睡眠,降低功耗。 每次向模块连续发送的串口数据不要超过 250 个字节。
3.模块在向 MCU 发送串口数据之前会自动拉低 DIO0 引脚以通知 MCU接收数据。如果 MCU 是不睡眠的,则可以不需要处理此引脚。
说明:模块只支持上表中的 5 个波特率,且其默认的波特率为 115200bps。当 MCU 向模块发送该指令后,模块会直接改变自身的波特率。MCU 也应该改 变自己的波特率,以保持和模块一致,避免产生误码。
PS:若忘记了已设置的波特率,开发者可以尝试在不同的波特率下发送 getRole(或 其他 get 指令),直到得到正确的回复,以此来确定模块当前的波特率。