ATK-BLE01 蓝牙模块和手机进行简单数据收发
目录
- ATK-BLE01 蓝牙模块和手机进行简单数据收发
- 前言
- 1、前期准备工作
- 1.1 接线
- 1.2 AT指令配置
- 1.3 使用参考资料
- 2、调试助手配置及手机APP配置
- 2.1 PC配置模式
- 2.2 透传模式
- 2.3 配置手机APP
- 2.4 手机接收数据
- 2.5 手机发送数据
- 3、模块固件升级
- 总结
前言
在学习蓝牙01模块的时候,发现模块可以通过USB-TTL和电脑PC进行通信,后来还发现这个蓝牙模块还可以通过PC和手机进行通信的,有点好玩。
1、前期准备工作
1.1 接线
蓝牙模块 | USB-TTL模块 |
VCC(5V) | VCC (5V) |
GND | GND |
TXD | RXD |
RXD | TXD |
接线如下图:
要注意交叉接线!!
1.2 AT指令配置
常用AT指令:
+++a 进入配置模式
AT+ENTM 进入透传模式
AT 指令测试
AT+RESET 模块复位
AT+NAME 名称查询/设置
AT+MODE 工作模式查询/设置
AT+UART 串口参数查询/设置
AT+LINK 连接状态查询
指令示例:
S:+++a /* 进入配置模式 */
R:A+OK
S:AT /* 测试指令 */
R:OK
S:AT+NAME=ATK-BLE01 /* 设置模块名字,字符串长度:1-15个字符 */
R:+NAME:ATK-BLE01
OK
S:AT+NAME? /* 查询模块名字 */
R:+NAME:ATK-BLE01
OK
S:AT+MODE=S /* 设置工作模式:mode: S:从设备,M:主设备 */
R:+MODE: S
OK
S:AT+UART=115200,8,0,1 /* 设置串口参数:波特率:115200,数据位:8位,校验位:无,停止位:1位 */
R:+UART:115200,8,0,1
OK
S:AT+UART? /* 查询串口参数:波特率:115200,数据位:8位,校验位:无,停止位:1位 */
R:+UART:115200,8,0,1
OK
S:AT+LINK? /* 查询连接状态 */
连接状态下:
R:PeerAddr: ADD99EE0C406 /* 对方设备 MAC 地址 */
Rssi:-43 dbm /* 信号强度 */
+LINK:OnLine /* 已连接 */
OK
非连接状态下:
R:+LINK:OffLine /* 未连接 */
OK
S:AT+ENTM /* 设置模块进入透传模式 */
R:OK
说明:
(1)以上指令中, 除了进入配置模式指令无需发送回车换行 “\r\n,即 ASCII 码 0x0d,0x0a”,其他指令必须发送回车换行才行。
(2)AT 指令参数发送成功则返回“OK”,失败则返回“ERROR” 。
1.3 使用参考资料
这里所有的参考资料都是购买模块时商家提供的资料:
文档资料:
ATK-BLE01蓝牙串口模块AT指令集_V1.0.pdf
ATK-BLE01蓝牙串口模块用户手册_V1.0.pdf
软件资料:
电脑PC:ATK-BLE V1.1.exe
手机APP:(可自行在应用市场下载)
2、调试助手配置及手机APP配置
模块接到PC之后,先把指令调试通过后再测试后面的功能,具体看上面的AT指令示例:
2.1 PC配置模式
这个助手已经集成了相关的指令,可以省略再次发送的步骤:
2.1.1 连接上模块:
2.1.2 依次按步骤来发送指令:
2.1.3 提示连接成功:
2.1.4 如果点击配置模式没有ok返回,而是提示超时,无法连接成功,可以点击关闭串口重新打开或者重新打开这个助手软件。
2.2 透传模式
在配置模式完成后,点击透传模式,可以看到返回ok,表示进入透传。
2.3 配置手机APP
2.3.1 先打开蓝牙功能,再打开手机蓝牙调试助手,下拉刷新界面,找到前面设置的蓝牙名字,然后点击CONNECT。
2.3.2 提示蓝牙连接成功:
2.3.3 用Unknown Service 作为数据的收发:
2.4 手机接收数据
pc端发送数据,记得要发送新行:
app接收数据
2.5 手机发送数据
app发送数据
pc端接收数据
觉得这个手机软件有一个不好的就是无法发送新行!!
要想退出数据的收发,点击关闭即可。
3、模块固件升级
第一步:接线,具体接线请查看1.1小节的接线方法,在此基础上再把WKUP引脚接GND。
第二步:给模块上电,然后打卡蓝牙调试软件。
此时可以看到蓝牙的通信灯是处于常量的状态,接下来上位机选择串口对应的端口号,波特率是选对应自己设置的,停止位、数据位、奇偶校验位保持默认即可,然后点击打开串口按钮。点击下面的固件更新按钮,选择本地升级(资料里面的固件压缩包需要解压才可以识别),接着点击打开文件按钮,最后点击开始升级按钮就可以看到固件在升级了,进度条可以看到升级进度情况。
更新过程中可以看到USB-TTL模块和蓝牙模块的通信灯一直在闪,完成后蓝牙的状态指示灯是处于慢闪状态表示更新完成。
更新完成之后可以看到一个提示固件更新完成提示框,点击确认后可以在后边消息框看到更新固件所用的实际时长。
第三步:更新完成后断开模块的电,再重新上电就可以正常使用功能了。
总结
在这个基础上实现了通信功能,那么可以在后续的学习中用程序来控制,连接单片机,可以用手机和单片机直接进行交互了,就不用借助电脑PC啦,比如手机控制LED、蜂鸣器、开关、蓝牙小车等一些比较有趣的功能。
具体的控制代码可以参考官方提供的源码。