导言:
在现代智能家居系统中,远程控制设备变得越来越普遍和重要。本文将介绍如何利用STM32F103C8T6单片机和蓝牙模块HC-05实现远程控制LED灯的功能。通过这个简单的项目,可以学会如何将嵌入式系统与蓝牙通信技术相结合,实现远程控制的应用。
目录
准备工作:
在开始之前,确保已经准备好以下材料:
- STM32F103C8T6开发板
- HC-05蓝牙模块
- LED灯
- 杜邦线等连接线
- USB转串口模块(用于调试)
硬件设计:
本次设计使用HC-05(JDY-31)无线蓝牙模块实现单片机和手机的无线通信,将其正常工作的频段2.4 GHz ISM,GFSK作为它的调制方式。主控芯片STM32F103 C8T6单片机通过串口连接HC-05,安卓手机端自带蓝牙,通过手机App与单片机蓝牙设备建立配对,蓝牙模块将接收的数据传送给单片机,单片机处理后控制电机的运转和桶盖的开关。工作原理如图3所示。
图3蓝牙工作原理
HC-05蓝牙串口模块介绍:
HC-05是一款常用的蓝牙串口模块,用于在微控制器和其他设备之间建立蓝牙串口通信连接。下面我将详细介绍HC-05蓝牙模块的接口设计,以便将其与STM32F103C8T6微控制器进行通信。
HC-05蓝牙串口模块
引脚:
标号 | PIN | 引脚说明 |
---|---|---|
1 | STATE | 状态引出引脚(未连接时输出低电平,连接时输出高电平) |
2 | RXD | 接收端 |
3 | TXD | 发送端 |
4 | GND | 模块供电负极 |
5 | VCC | 模块供电正极 |
6 | EN | 使能端,需要进入命令模式时接3.3V |
注:或者也可以直接去优信买JDY-31模块,相比HC05更加便宜,使用也没什么区别并且资料全套。
手机蓝牙APP:
这几个都可以,手机应用商店直接搜索就行。
物理连接:
电源供应:HC-05通常需要3.3V电源供应。你可以使用STM32F103C8T6的一块3.3V输出引脚连接到HC-05的VCC引脚,或者使用一个3.3V的稳压芯片。
串口通信:HC-05通过串口与STM32通信。它包含了TX(发送)和RX(接收)引脚,分别用于发送和接收数据。你可以将HC-05的TX引脚连接到STM32的一个USART接收引脚(比如USART1的RX(PA10)引脚),并将HC-05的RX引脚连接到STM32的一个USART发送引脚(比如USART1的TX(PA9)引脚)。
接地:HC-05的GND与STM32的GND相连接
通信协议:
波特率设置:HC-05支持多种波特率,通常默认波特率为9600bps。你可以通过AT指令将其更改为其他波特率,以便与STM32的USART通信波特率匹配。
数据格式:通常情况下,HC-05使用8位数据位、无校验位和1位停止位的数据格式。
AT指令:
HC-05也可以使用AT指令进行配置。在配置之前,首先需要让模块进入配置模式。一般HC-05有一个小按钮。按住小按钮再给蓝牙模块上电,蓝牙模块进入配置模式,此时模块上自带的LED会慢速闪烁。进入配置模式后,就可以用AT指令来