蓝牙(BT04A、HC-05) 使用经验
来源:互联网 发布:云计算怎么用 编辑:程序博客网 时间:2024/06/05 02:12
一、主要参考材料 《蓝牙串口AT指令集》
调试工具 串口助手
二、主从概念的理解
一般蓝牙常选用主从一体式,例如HC-05是大家经常选用的模块,当然还有只作为从机的如HC-06,我也用到过DX-BT04-A 蓝牙2.0模块,相比HC05、HC06等蓝牙4.0,BT04的不兼容IOS系统(蓝牙2.0与蓝牙4.0,SPP协议与BLE低功耗之间的区别与本文对蓝牙模块的基本使用操作无关)。
蓝牙通信需要一个作为主机,一个作为从机进行通讯,但是当两设备配对成功后,可将蓝牙作为普通的串口,相互之间收发数据。我也遇到过下面的情况,当我使用BT04-A的AT指令将它设为主机时,返回OK表示设置成功,但是再次查询AT主从状态,返回的状态依旧是从机,后来询问卖家才知道BT04-A只能作为从机使用,挺坑的。所以我无法使用两个BT04-A进行通讯。因此我只能将HC-05作为主机,BT04-A作为从机相互之间进行通讯。
三、引脚的连接
设置AT指令最好与电脑连接,用串口调试助手进行AT设置,因此需要额外的USB转TTL模块。
蓝牙与USB转串口模块连接方式,RXD-TX TXD-RX VCC-VCC GND-GND
四、AT指令的设置
具体的AT指令需要查询你使用的那款蓝牙的AT手册,一般仅需要设置蓝牙的波特率、主从状态即可正常使用。
在设置AT时需注意:
1、如何进入蓝牙的AT模式:有些模块如BT04-A一上电便自动进入AT模式,如HC-05需要先按住模块左上角的按钮,然后上电,让某一引脚经历高电平台变为低电平的过程,即可进入AT指令设置模式。同时注意在实际HC05的购买中,有些商家会直接将一些HC-05作为从机销售,所以有些HC05模块没有焊接按钮,因此我们可以自己焊接按钮,或使用导电的物品(杜邦线、镊子),让那个引脚置高。对于HC05来说,模块指示灯快闪表示蓝牙未连接,慢闪表示进入AT模式,双闪表示蓝牙已连接并打开端口。
2、打开串口助手,选择正确的端口号。
3、设置AT需要在该模块规定的固定初始波特率下设置(HC05为38400),而有些蓝牙模块需要在你上次设置的波特率下进行AT指令的发送。
4、有些模块在发送AT指令时,需要在自己写在发送区的AT指令过后加回车"\r\n",同时注意区分大小写。
5、具体有哪些AT指令以及它们的意义需要参考该模块的《AT指令集》
五、HC05指示灯模式
模块自带了一个状态指示灯STA,该灯有3种状态,分别为:1、在模块上电的同时(也可以是之前),将 KEY 设置为高电平(接 VCC),此时 STA慢闪(1秒亮1次),模块进入AT状态,且此时波特率固定为38400.2、在模块上电的时候,将KEY悬空或接GND,此时STA快闪(1秒2次),表示模块进入可配对状态。如果此时将KEY在拉高,模块也会进入AT状态,但是STA依旧保持快闪。3、模块连接成功,此时STA双闪(1秒2下,2秒1次)六、常用的HC-05AT指令
AT+NAME=Bluetooth-Slave 蓝牙名称为Bluetooth-Slave
AT+ROLE=0 蓝牙模式为从模式
AT+CMODE=0 蓝牙连接模式为任意地址连接模式
AT+PSWD=1234 蓝牙配对密码为1234
AT+UART=9600,0,0 蓝牙通信串口波特率为9600,停止位1位,无校验位
AT+RMAAD 清空配对列表
- 蓝牙(BT04A、HC-05) 使用经验
- HC-05蓝牙模块的使用
- HC-05蓝牙配置
- HC-05 蓝牙模块的调试与使用
- [Arduino]HC-06蓝牙模块使用小结
- HC-06蓝牙模块设置与使用
- ATmega328P的hc-05蓝牙模块通信
- HC-05 蓝牙挺好用的
- HC-05嵌入式蓝牙串口通讯
- HC-05蓝牙无线模块设置
- 树莓+HC-05蓝牙模块+android数据通信
- HC-05蓝牙模块配置方法
- HC-05蓝牙无线模块设置
- HC-05蓝牙模块与电脑通信
- HC-05蓝牙模块的波特率修改
- 蓝牙模块HC-05的测试
- HC-05使用介绍
- arduino mega2560与HC-06蓝牙模块使用
- python3:(unicode error) 'utf-8' codec can't decode
- DOM
- pat乙级1018
- handler机制
- pycharm默认快捷键:
- 蓝牙(BT04A、HC-05) 使用经验
- 7月份的经历+学习总结
- 关于 android service 和 thread
- python代码`if not x:` 和`if x is not None:`和`if not x is None:`使用
- 人生第一道cf的题
- 广播机制方式
- __int64与long long、long的区别
- PL\SQL 客户端配置 windows 64 ORACLE 提示:无法检测到对应的数据库名
- Python语法元素入门