ATK-BLE01 蓝牙模块和手机通信
ATK-BLE01 蓝牙模块和手机进行简单数据收发
前言
在学习蓝牙01模块的时候,发现模块可以通过USB-TTL和电脑PC进行通信,后来还发现这个蓝牙模块还可以通过PC和手机进行通信的,有点好玩。
一、前期准备工作
1.1 接线
接线如下图: 要注意交叉接线!!
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)以上指令中, 除了进入配置模式指令无需发送回车换行 “ ,即 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:(可自行在应用市场下载)
二、调试助手配置及手机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端接收数据 觉得这个手机软件有一个不好的就是无法发送新行!! 要想退出数据的收发,点击关闭即可。
总结
在这个基础上实现了通信功能,那么可以在后续的学习中用程序来控制,连接单片机,可以用手机和单片机直接进行交互了,就不用借助电脑PC啦,比如手机控制LED、蜂鸣器、开关、蓝牙小车等一些比较有趣的功能。 具体的控制代码可以参考官方提供的源码。
