【浅谈HC05 蓝牙模块与与蓝牙模块连接】

两个蓝牙模块配对通信

在通常的电子设计中,一般采用蓝牙模块与上位机(手机)连接来与电子设备通信,实现对电子设备的控制。当然也可以通过WiFi模块等其他通信模块进行通信。这里就介绍一下蓝牙模块之间的连接,能够摆脱上位机,实现设备与设备之间的通信。

AT指令

蓝牙模块需要通过AT指令进行模式与连接的设置,不同型号的蓝牙模块它的AT指令也可能会有差别,如果发现发送指令后模块没有回应,检查一下AT指令是否发送正确,是否进入命令模式,这里就要查看自己手中的两个蓝牙模块的资料包了,若两个蓝牙模块不同,则它们的配置指令也可能会不相同,就要用对应的指令配置了。AT指令集这里就不列举了,自行查看资料包。

模块连接

要连接两个蓝牙模块,就相当于两个蓝牙模块进行配对,也就是两个蓝牙设备进行配对,那么应该用哪一个去寻找目标对应的蓝牙设备呢?这里就需要一个设备为主机,另一个设备则为从机,只能通过主机来寻找从机进行连接配对,从机只能等待连接,而不能主动地寻找设备进行连接。

说到主机与从机,就要看看自己手中的蓝牙模块是否支持主机模式了,至少要有一块主从一体的蓝牙模块(当然了,价格会比只支持从机模式的贵一些),由于经费不足(–_--),这里就采用一块主从一体模块,一个从机模块JDY-31。

我们用的蓝牙模块⬇⬇⬇

各模块的配置通过串口发送AT指令配置,蓝牙模块通过usb-ttl与电脑连接,连接时注意TX–RX,RX–TX。⬇⬇⬇⬇
在这里插入图片描述
通过XCON串口助手发送/接受指令

在这里插入图片描述
\

从机配置

模块进入命令模式需要将EN管脚拉高,用一个杜邦线将EN脚与USB-TTL上的VCC/3.3V/5V连接即进入命令模式。初始波特率一般为9600,有一些是38400,可以都试一试。连接好后打开XCOM串口助手,发送指令必须勾选发送新行,否则将不能成功发送指令。⬇⬇⬇⬇

在这里插入图片描述
如上图设置好后,就可以进行串口操作–>打开串口进行发送指令,先发送个AT+VERSION查询版本号测试一下⬇⬇

在这里插入图片描述
接受到指令的返回信息就好办了,若没有接收到就检查一下接线是否正确、EN是否拉高,端口是否正确、波特率是否正确…
接下来就是配置从机了:
① 首先发送AT+RESET对模块进行复位操作。
② 发送AT+NAME=“car” 设置模块名称为car。(也可以设置其他的)
③ 发送AT+PIN=“5555” 设置模块密码为5555。(也可以设置其他的)
④ 发送AT+BAUD=“ 4 ” 将波特率设置为9600,指令中的4就表示9600的波特率,这是根据IDY-31的模块手册得到的,就根据自己的手册配置就行了,指令可能不一样。
⑤ 发送AT+LADDR获取蓝牙MAC 地址,需要将获取到的地址记录下来,配置主机是需要!!
⬇⬇⬇⬇⬇⬇
在这里插入图片描述
有两个指令没有回应,可以通过查询指令查看是否配置成功⬇⬇⬇⬇
在这里插入图片描述
返回的数据与配置时的数据相同,就说明配置成功了。若采用主从一体HC05,需要加一条指令将模块设置为从机模式(具体指令查看指令集)。接下来配置主机。

主机配置

连接方式与从机模块一样。准备好后进行AT指令配置。
① 首先发送AT+RESET对模块进行复位操作。
② 发送AT+NAME=control 设置模块名称为control。(也可以设置其他的)
③ 发送AT+PSWD=“5555” 设置模块密码为5555。(需要与从机一致)
④ 发送AT+UART=9600 将波特率设置为9600。(波特率与从机一致,指令集不一样)
⑤ 发送AT+ROLE=1 将蓝牙配置为主机模式。
⑥ 发送AT+BIND=4FF0,27,231100 绑定从机蓝牙地址,这里的4FF0,27,231100就是配置从机时获取到的MAC地址。
⑦ 发送AT+CMODE=0 设置蓝牙连接模式为指定蓝牙地址连接模式

因为这个模块有专门的蓝牙测试软件,配置比较方便,直接填好配置信息⬇⬇⬇⬇
在这里插入图片描述
测试软件右边是需要进行的配置,可以先获取模块信息后,在右边进行修改,再点击更新模块信息,左边白框中就会显示配置结果,如果手中的模块没有配套使用的蓝牙测试软件,就用XCOM按照AT指令一步一步配置。这样主机就配置成功了。将模块重新上电就可以进行正常的连接通信了。

都配置好后,我们进行通信测试。
将从机与电脑相连,主机与任意电子设备相连⬇⬇⬇⬇
在这里插入图片描述

两个蓝牙模块匹配好后,指示灯将会发生变化。接下来打开串口助手检测接收信息。⬇⬇⬇⬇
在这里插入图片描述
串口助手显示从机模块不断接收温度信息,表示两个蓝牙模块就通信成功了!!两个蓝牙模块就可以互发信息了。

资料下载

这里将配置过程中用到的串口软件及一些模块手册打包分享给大家了
点击跳转资料下载

在这里插入图片描述

版权声明:本文为CSDN博主「_YUE_」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/YUE__zy/article/details/122695172

生成海报
点赞 0

_YUE_

我还没有学会写个人说明!

暂无评论

发表评论

相关推荐

基于8051单片机实现电子时钟+数字秒表设计

概述 电子时钟是一种利用数字电路来显示秒、分、时的计时装置,与传统的机械钟相比,它具有走时准确、显 示直观、无机械传动装置等优点,因而得到广泛应用。随着人们生活环境的不断改善和美化,在许

基于Arduino的显示测量环境数据设计

题目: 基于Arduino的显示测量环境数据设计 目录 基于Arduino的显示测量环境数据设计... 3 第一章 课题任务... 4 1.1课题任务... 4 1.2任务分工... 4 1.3设计条件... 4 第

串口不定长接收

一、保留接收区和开启接收的语句    uint8_t buffer[5];HAL_UART_Transmit_IT(&huart1,buffer,3); 二、写入开启空闲中断的语句    __HAL_UART_ENABLE_IT(&huart