学会开发蓝牙设备与微信平台对接的技术,非工程师也可以学

发布日期:2017.04.21     浏览次数:227

         如果你需要身边的设备实现蓝牙功能只要将蓝牙模块嵌入至设备中,利用手机APP程序进行连接通讯,若不用APP也可以利用微信对设备进行蓝牙功能的管理。现在我来介绍一下如何利用微信管理蓝牙设备!主要介绍模块嵌入微信协议的技术说明,其中包括使用方法、应用场景、主要功能、逻辑结构、及其他各项指标特性。

应用原理介绍

设备所用的蓝牙模块是可以兼容蓝牙4.0及以上版本的蓝牙版本,可以满足超低功耗、低时延、短距离无线通信的需求,微信昇润蓝牙模块可以让你不用了解低功耗蓝牙协议层面的知识,直接使用类似串口的通信方式、便可以开发支持低功耗蓝牙通信和微信平台的智能产品。

组网透传蓝牙模块可以把所有来自外部 其他MCU 的串口数据经过 BLE无线信道透明传输给微信平台 ,然后再传输到设备厂商的服务器。设备厂商服务器的数据也可以通过微信平台透传给外部 MCU

微信平台与设备外部MCU的原理图框通信原理

在模块和微信平台进行通信之前,需要在微信后台对模块进行授权(具体操作方法在微信后台的接口文档有相关教程),对模块上电后可自动进行广播,打开微信的公众平台,微信 APP 便会自动的与模块进行连接。原理模型如下图。

 



 模块脚位及相关配置

对应参数表:

串口配置

TX:DIO-3

RX:DIO-2

WAKEUP:IO0_4

115200bps, no parity, one stop bit

蓝牙配置

蓝牙服务:

SERVICE UUID:FEE7

Write Characteristics UUID:FEC7

Indicate Characteristics UUID:FEC8

Read Characteristics UUID:FEC9

AT指令

 

 

具体实施步骤:

1. 参照以上所述原理框图把硬件搭建好。

2. MCU 在向模块发送串口数据前需先拉低 WU/P0.4 引脚来唤醒模块。延迟1ms 后,再发送数据。在数据发送期间,WU/P0.4 必须始终保持为低电平,数据发送完毕后再拉高 WU/P0.4 引脚,使其可以进入睡眠状态,降低功耗。 通常每次向模块连续发送的串口数据一般不要超过 250 个字节。

3. 模块在向 MCU 发送串口数据之前会自动拉低 P0.5 引脚以通知 MCU 接收数据。如果 MCU 是不处于睡眠状态的,则就可以不需要处理此引脚。

补充:AT指令说明

1. "AT "

作用:测试串口是否正常

参数个数:无

响应:通讯成功返回“AT+OK,否则无响应

2. AT+BAUD=n

作用:设置串口波特率

参数个数:1

参数取值:n 的取值范围 0-4,实际对应波特率为:

10: 9600bps

21: 19200bps

32: 38400bps

43: 57600bps

54: 115200bps

 

      模块只支持上面(参数取值)的 5 个波特率,且其默认的波特率为 115200bps。当 MCU 向模块发送该指令后,模块会直接改变自身的波特率。MCU 也应该改变自己的波特率,以保持和模块一致,避免产生误码。

若忘记了已设置好的波特率,你也可以尝试在不同的波特率下发送 getRole( 其他 get 指令),直到得到正确的回复,可以通过方式来确定模块当前的波特率。