前言
之前我们写过利用HC-05来实现单片机与手机的通信,这期,我们将使用HC-05来实现,单片机与单片机之间的通信。
想利用HC-05实现单片机与单片机之间的通信,与单片机与手机的不同之处在于,我们需要利用AT指令
来对HC-05进行主从定义。
一、硬件准备
我们想要用AT指令去控制HC-05,就需要使用的USB转TTL模块
按照如下接线
插入电脑的USB口即可连接上蓝牙模块。
二、软件介绍
这里给一下我使用的给蓝牙写AT指令的软件,个人感觉还是挺方便的。也可以使用普通的串口软件。
本连接中包含软件和AT指令集。
链接:https://pan.baidu.com/s/1blScCYDUjFX4dcFvBOhfAw
提取码:nqki
使用这个软件时,有如下几点需要注意!!!
1.蓝牙模块使用时,想进入AT模式,要在上电前,即USB插入电脑前,一直按住HC-05上的按键key上电,只有这样蓝牙模块才能进入AT模式。
2.我们之前使用HC-05通信时,说过通信的波特率默认都是9600,而这里我们将使用蓝牙模块的固定波特率38400进行设置,所以在下栏,我们要使用38400的波特率
3.我们点击搜索端口,当搜索成功后,表示我们已经成功打开了,我们可以点击获取模块信息,来获取当前蓝牙模块的一些信息,注意!!!,这里我们在点击获取信息时也需要一直按住HC-05上的按键
4.发送AT指令记得最后要打换行!!
三、利用软件使用AT指令修改蓝牙模块主从关系
要实现两个蓝牙之间的连接,主要有以下几个步骤
一,设定两个蓝牙的主从关系
二.将其中一个蓝牙地址绑定另外一个蓝牙.
1.设定两个蓝牙的主从关系
我们通过获取模块信息.可以得到如下界面.
而后我们使用AT+ROLE=1 将HC_05_01的蓝牙设定为主角色
并使用AT+CMODE=1 将连接模式也设为主角色.
另外一个蓝牙就可以使用AT+ROLE=0和AT+CMODE=0来设定为从角色和连接模式为从角色
2.绑定两个蓝牙的地址
我们记录主蓝牙模块的本机MAC地址,并在从蓝牙模块中使用AT+BIND=?,?,?来绑定主蓝牙模块的地址
3.一些注意
连接时还需要注意以下问题.
1.两个蓝牙模块的连接密码和访问码要确保一致,不过一般如果你没有改过,都是一致的
2.两个蓝牙模块的通讯波特率要一致!
四、通信测试
按照上述测试完成后,就可以根据正常的蓝牙收发来进行操作了.如果还不会的话,可以参考如下博客.
STM32 Cubemax(二)——串口实现HC-05蓝牙模块与手机通信
发送端的代码如下
printf("Num is %d",i);
i++;
HAL_Delay(1000);
接收端成功接收
上一篇:STM32 Cubemax(九) ——利用输入捕获中断实现超声波测距
下一篇:STM32 Cubemax(七) —— 单级PID控制带编码器的直流减速电机速度
推荐阅读最新更新时间:2024-11-14 04:23
设计资源 培训 开发板 精华推荐
- 使用 Analog Devices 的 LTC1538CG-AUX 的参考设计
- CN0359
- AD8602WARZ-RL 符合 PC100 标准的线路输出放大器的典型应用
- CN0287
- SI2108USB-EVB,用于具有 USB 接口的 SI2108 SiRX DVB-S/DSS 卫星接收器 IC 的评估板
- NCV78702R2DAGEVB:NCV78702 TSSOP 子板
- ESP-TOOL (ESP32 ESP8266烧录器)
- AM3G-2403SZ 3.3V 3 瓦 DC-DC 转换器的典型应用
- 使用 Analog Devices 的 RREF02 的参考设计
- 使用 ROHM Semiconductor 的 BD4829 的参考设计