700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 【STM32】HC-05蓝牙模块

【STM32】HC-05蓝牙模块

时间:2024-03-03 00:58:41

相关推荐

【STM32】HC-05蓝牙模块

模块介绍

HC-05是主从一体的蓝牙模块,默认为从机。既支持跟模块通信,也支持跟手机通信。具有两种工作模式:串口透传通信模式和AT指令模式。

串口透传通信模式下模块又可分为主( Master)、从( Slave)和回环( Loopback)三种工作角色。当模块处于自动连接工作模式时,将自动根据事先设定的方式连接设备并进行数据传输。比如跟手机蓝牙连接,可通过手机APP给蓝牙模块发送数据。当AT指令模式时能执行下述所有 AT 命令,用户可向模块发送各种 AT 指令,为模块设定控制参数或发布控制命令。关于AT指令下面再讲。

可通过模块KEY引脚输入高低电平,实现两种工作模式的转换。

AT指令

AT 指令不区分大小写,均以回车、换行字符结尾\r\n

注意:发送AT指令设置蓝牙模块前,需将模块的KEY引脚切换成AT指令模式。当模块处于串口透传通信模式时,发送的AT指令只会当作一串字符串处理,并不会改变模块的设置。

进入AT指令状态的方法:

上电同时或上电之前将KEY设置为高电平,上电后,模块即进入AT指令状态模块上电后,通过将KEY设置为高电平,使模块进入AT指令状态。

AT指令结构:

设置指令:AT+<CMD><=PARAM> 设置模块参数

AT + ROLE = 1或0 设置模块为主机或从机AT + UART = 9600,0,0 设置通信波特率、停止位、校验位

查询指令:AT+<CMD>? 查询模块参数

AT + ROLE ?返回模块角色状态AT + VERSION ?返回版本信息

传输数据

HC-05模块除了VCC和GND引脚之外,就是负责数据通信的TX引脚RX引脚,这两个引脚就和串口通信的引脚是一个道理。数据的收发都是通过这两个引脚实现的。我使用的是正点原子战舰开发板,板上有HC-05蓝牙模块的对应插槽。其实就是通过插槽,把模块的TX和RX与USART3的RX和TX连接。这样开发板就可以借助串口3,来读取蓝牙模块的通信数据。

使用蓝牙模块时,必须像图中一样安好跳线帽,这样才能将USART3的收发端口与蓝牙模块的收发端口连接在一起。

通信波特率:

方法1进入AT指令状态,模块波特率为38400

方法2进入AT指令状态,模块波特率和通信波特率相同

代码

Gitee上自取:传送门

功能实现

在手机上找到一款很棒的串口调试APP,用手机APP连接蓝牙模块,可发送字符串控制开发板上的外设工作。

通过APP可以接收到开发板搭载的蓝牙模块发过来的温湿度、光强数据,还可以自定义按钮,发送特定的字符串,比如”LEDON“、”BEEPON“来控制硬件设备的工作状态。

后面准备自己也用Android studio开发一个蓝牙串口APP,用到自己的物联网项目中去。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。