基于STM32CubeMX的HC-05蓝牙主从通讯

基于STM32CubeMX的HC-05蓝牙主从通讯

开发板使用的是stm32f103c8t6,使用STM32CubeMX进行配置,实现两HC-05蓝牙之间主从通讯。

HC-05蓝牙模块是主从一体的,两个HC-05之间一主一从通讯,要进入AT模式,对HC-05模块进行相应设置。

一、AT模式设置

  • 首先HC-05蓝牙模块要通过TTL转USB模块连接到电脑,上电前一直按住HC-05上的按键,上电后松开按键,指示灯慢闪,表示进入AT模式

接线

HC-05USB-TTL
VCC5V
GNDGND
TXRX
RXTX
  • 通过串口调试助手,文本模式,对HC-05进行AT设置,注意HC-05默认在AT模式下波特率为38400正常模式下波特率为9600

对从机(SLAVE) 依次输入一下AT指令:

指令功能
AT+ORGL恢复出厂设置
AT+NAME=BTSLAVE设置蓝牙名称
AT+PSWD=“1234”设置连接密码1234,注意加英文双引号
AT+ROLE=00为从机模式
AT+CMODE=0连接模式为任意连接
AT+ADDR?查询mac地址,比如0022:04:007407,每个设备都不一样

对主机(MASTER) 依次输入一下AT指令:

指令功能
AT+ORGL恢复出厂设置
AT+NAME=BTMASTER设置蓝牙名称
AT+PSWD=“1234”这个就是从机的密码
AT+ROLE=11为主机模式
AT+CMODE=0任意连接
AT+BIND=0022,04,007407绑定从机地址,注意将从机地址:换成,

注意指令必须为大写,每次恢复出厂设置后,指示灯会快闪,需拔下后重复第一步,重新进入AT模式。

完整指令集,可以自己到网上查资料。

完成配置后,主从两机重新上电,不需按按键,进入正常模式,这时HC-05指示灯快闪;等待几秒后,主从两机自动配对完成,同时间隔5秒闪烁,表示主从两机连接成功。

二、配置STM32

  • 在STM32CubeMX中,对stm32进行配置

在这里插入图片描述

选择外部时钟

在这里插入图片描述

选择调试器

在这里插入图片描述

使能串口2

在这里插入图片描述

将波特率设为9600,与蓝牙波特率匹配

在这里插入图片描述

开启串口中断

三、测试

主函数循环中:

uint8_t  SendBuffer[30]={"hello,world!"};
        HAL_UART_Transmit(&huart2, (uint8_t *)SendBuffer, sizeof(SendBuffer), HAL_MAX_DELAY);

串口助手接收数据:

在这里插入图片描述

通讯成功。

配置完成后,就可以忽略蓝牙,直接操作串口一样使用HC-05,还是十分简单方便的。

这个项目是疫情无法返校,家中备电赛的过程中完成的。参考结合了很多前人的经验,算是对整个过程的整合和总结。欢迎大家多多指教。

  • 9
    点赞
  • 88
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
### 回答1: STM32 CubeMX是一款用于STM32微控制器的图形化配置工具,可以帮助开发者快速生成初始化代码和驱动程序。而HC-05蓝牙模块是一种常用的串口蓝牙模块,可以实现无线通信功能。在使用STM32 CubeMX开发蓝牙应用时,可以通过配置串口蓝牙模块的参数,实现HC-05蓝牙模块的通信。 ### 回答2: STM32 CubeMX是一款支持STMicroelectronics(意法半导体)的ARM Cortex-M微控制器的图形化配置工具。它可用于快速配置STM32微控制器并生成启动代码。它减少了移植工作的时间和工作量,同时大大提高了系统开发的效率。HC-05蓝牙模块是一种协议为蓝牙串口的模块。它是便宜而易用的,因为它的价格低廉,因此得到了广泛的应用。那么,STM32 CubeMX HC-05蓝牙模块如何结合使用呢? 在使用STM32 CubeMX HC-05蓝牙模块之前,我们需要做的第一件事是将HC-05模块进行匹配。一旦成功匹配,我们可以获取HC-05模块的名称和地址。然后,我们可以将HC-05模块连接到STM32微控制器上,以实现通信和数据传输。 在STM32 CubeMX软件中,我们需要按照以下步骤进行操作: 1.选择特定的STM32微控制器。 2.选择通信接口和协议,例如USART或SPI。 3.配置USART或SPI参数,例如波特率和数据位数。 4.配置GPIO引脚,以实现HC-05模块的连接。 5.生成启动代码,并将其导入到STM32微控制器的工程中。 6.编写应用程序代码,以实现HC-05模块进行通信。 总之,在使用STM32 CubeMX HC-05蓝牙模块的过程中,我们需要了解STM32微控制器的基本知识,例如GPIO引脚和USART或SPI通信协议等。同时还要了解HC-05蓝牙模块的基本功能和配置方法。通过对这些知识的了解和使用,我们可以轻松地实现HC-05模块与STM32微控制器之间的通信和数据传输。 ### 回答3: STM32 CubeMX是STMicroelectronics公司推出的一款专门为STM32微控制器设计的快速开发工具。它可以自动生成C代码,并提供GUI配置界面,使得开发人员可以快速地进行项目开发,大大提高了开发效率。 在STM32 CubeMX中集成HC-05蓝牙模块,可以使得开发人员更加方便地进行蓝牙应用的开发。HC-05蓝牙模块是一种成熟的低成本蓝牙模块,支持蓝牙2.0和蓝牙4.0,使用起来非常简单。将HC-05蓝牙模块与STM32微控制器集成,可以构建各种应用,例如:手机蓝牙遥控车、远程控制等。 在集成HC-05蓝牙模块时,首先需要在STM32 CubeMX中配置串口蓝牙模块之间的连接。具体步骤如下: 1. 打开STM32 CubeMX,选择需要使用的STM32微控制器型号。 2. 选择串口(USART),使其与蓝牙模块进行通信。根据HC-05蓝牙模块的数据手册,HC-05的TX接口需要连接STM32微控制器的RX接口,而HC-05的RX接口需要连接STM32微控制器的TX接口。因此,在配置串口时,需要将串口的TX引脚与STM32微控制器的RX引脚连接,将串口的RX引脚与STM32微控制器的TX引脚连接。 3. 在串口中配置波特率、数据位、停止位、奇偶校验等参数。 4. 将配置好的代码生成到Keil或者其他编辑器中,编写应用程序,实现HC-05蓝牙模块的通信。 需要注意的是,由于HC-05蓝牙模块是基于串口通信的,因此在使用过程中需要注意串口通信细节,例如波特率、数据位、停止位、奇偶校验等参数的设置,否则将会出现通信错误。 总的来说,在STM32 CubeMX中集成HC-05蓝牙模块,可以有效地提高开发效率,快速构建各种蓝牙应用。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值