蓝牙主从模块通讯

3 篇文章 0 订阅
1 篇文章 0 订阅

前言:

        因为在做智联手柄的项目中,用到了蓝牙主从模块通讯方面,所以就在这里再捡起来,写一篇博客记录一下,这里我使用的是HC05蓝牙。

模块准备:

        这里我们准备两个HC05蓝牙模块,两个USB-TTL模块,分别把线接好  VCC-VCC(这里注意电源最好接3.3V以上,因为HC05需要的电压再3.6V~6V)GND-GND  RXD-TXD TXD-RXD

AT初始化:

1.首先我们需要按住蓝牙上的按钮插到电脑上,蓝牙一秒闪两次就证明进入了AT模式,接着我们就可以进行蓝牙的初始化。

2.查看设备管理器中的端口COM7,打开STC串口软件,打开COM7(每个人的COM口都不大一样具体看设备管理器),波特率蓝牙默认是115200,这里因为我是设置过了所以就是9600,

3.AT测试:发送AT(注意这里要在每句指令之后加上换行,蓝牙通信就是如此,不然对方有可能收不到),返回OK,那蓝牙和电脑串口就连接成功。

这里如果没有发回OK的话就不能进行下一步了,可以检查一下:

1.蓝牙有没有一秒闪两次,没有的话可能被连接了,重新拔掉按着按钮插到电脑直到闪烁正确。

2.波特率没有设置正确,默认是115200或者38400,但也不排除一些厂商是别的波特率,或者蓝牙以及被设置了,所以我们就试一下其他波特率

3.校验位,停止位都是默认的,不需要改动。

4.线松动,线没有插好也是有可能的。

AT主从模块设置:

注意:所有指令都是要加换行符!

1.蓝牙恢复出厂:AT+ORGL,恢复出厂默认设置,波特率改回38400(这里我是38400)或者其他,再次发送AT+换行指令,返回OK,成功恢复出厂设置。

2.修改波特率:AT+UART=9600,这里我们把波特率设置到蓝牙比较常用的波特率9600这样

设置完成返回OK后,要把波特率改回我们设置的,再次发送:AT+UART?,查询波特率,返回9600,波特率设置9600完成。
3.设置密码:AT+PSWD="2024",设置主从蓝牙模块的配对密码,这里注意:主从模块蓝牙密码要一样,并且是四位数字密码,并且要用"",返回OK,密码设置成功,这里不知道为什么博主的蓝牙是不是版本不一样,密码设置不了,但是不影响我们后面的主从模块设置。

4.设置模式:AT+ROLE=0,设置蓝牙为从模式,AT+ROLE=1,设置蓝牙为主模式,0为从模式,1为主模式,返回OK设置成功,或者也可以AT+ROLE?查看是否设置成功

5.绑定蓝牙地址:这一步是最重要的,前面没有设置好也没关系,这里没有设置好,两个蓝牙就没法绑定互相连接了,首先在从机蓝牙模块,我们发送AT+ADDR?查询从机的地址,

这里我们的从机地址是(假如):CC:0D:E1:00:00:81,那我们就要写成CCOD,E1,000081  这样,格式就是从机地址的前四位为一段加逗号,再加两位加逗号,最后六位为一段,冒号改成逗号这样。
主机方面:绑定从机地址即可,AT+BIND=CCOD,E1,000081我们记下的从机地址,如果你觉得不放心也可以从机绑定主机地址。

这里我一绑定马上就两边连接上了,也有一些需要重新拔插蓝牙才能,连接成功后,尝试一下两边互相通信吧。
6.设置匹配模式:因为现在蓝牙设备比较多,两个蓝牙可能会受其他蓝牙设备干扰,所以我们设置两个蓝牙的匹配模式都是地址匹配模式,AT+CMODE=0,0是绑定地址,1是任意地址

到这里我们的主从蓝牙模块就设置完成了,尝试一下互相通信吧,注意:有些蓝牙可能因为性能问题,两个主从蓝牙模块离太远,连接就很慢,可以把两个蓝牙靠近一点,连接就很快.
主从蓝牙连接成功的标志:两个蓝牙都是隔一秒闪烁两次。

AT指令大全:

蓝牙AT指令

  1. AT
    测试AT命令是否正常工作。

  2. AT+VERSION
    查询蓝牙模块的版本信息。

  3. AT+NAME=<name>
    设置蓝牙设备的名称(如AT+NAME=MyDevice)。

  4. AT+PIN=<pin>
    设置蓝牙配对密码(如AT+PIN=1234)。

  5. AT+BAUD=<baudrate>
    设置串口波特率(如AT+BAUD=9600)。

  6. AT+ROLE=<role>
    设置蓝牙角色:1为从设备,0为主设备(如AT+ROLE=0)。

  7. AT+CONN=<addr>
    连接到指定的蓝牙设备(如AT+CONN=00:11:22:33:44:55)。

  8. AT+DISCONN
    断开当前连接。

  9. AT+INQ
    开始蓝牙设备的搜索。

  10. AT+INQ?
    查询搜索结果。

  11. AT+STATUS?
    查询当前蓝牙模块的状态。

  12. AT+STATE?
    查询蓝牙模块的连接状态。

  13. AT+UARTHD=1
    设置UART为高带宽模式。

  14. AT+UART=<baud>,<bits>,<stop>,<parity>
    设置UART参数。

  15. AT+CLASS=<class>
    设置蓝牙设备的类别(如AT+CLASS=0x1F00)。

这里我们列举一些蓝牙的常见AT指令,希望对你有帮助!

结语:

        通过本文的介绍,我们详细探讨了蓝牙主从模块的设置过程,涵盖了如何通过AT指令进行有效的配置与调试。蓝牙技术的灵活性和便捷性使其在现代无线通信中占据了重要位置,无论是智能家居、物联网设备,还是各类便携式电子产品,蓝牙模块都能提供无缝的连接解决方案。

        最后,如果你在设置蓝牙模块或使用AT指令的过程中遇到任何问题,欢迎随时交流与讨论。让我们一起在无线通信的世界中不断前行,实现更多的创意与可能!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值