【嵌入式模块】蓝牙模块使用总结

前言

  作为最为常用的无线通信模块,蓝牙可以说是一些小型项目(比如智能小车)无线通信模块的首选了,之前研究了好几个蓝牙,碰了很多壁,写一篇博客记录一下!

参考链接

常用的蓝牙模块有哪几种?

  很多人一提到蓝牙就会想到一个长方形的扁平的带有四个或六个引脚的小型长方形板子,如下图所示。以为都是一样的蓝牙。。。但其实它们是分型号的。从我目前接触过的蓝牙主要有HC-05HC-06BT-04等型号的蓝牙,它们在使用、控制等方面存在一些区别。
在这里插入图片描述

  首先是使用方面。一般来说,这种蓝牙模块因为支持透传,一般的操作都是将其与单片机的串口相连,然后蓝牙连接到手机或者电脑,这样单片机串口发送的消息就能通过蓝牙传输到连接的手机或者电脑,而手机发送的数据也能通过蓝牙传输到单片机的串口,而用户不需要考虑这个数据内部的转换等问题,大大方便了使用。
  这种蓝牙模块支持多种运行模式:从设备模式、主设备模式、广播模式、Mesh组网模式参考链接】,本文只讨论两种——从设备模式主设备模式
  而以上讨论的各种型号的蓝牙模块的一个重要区别在于HC-06BT04只支持从设备模式,而HC-05支持从设备模式,也支持主设备模式。
  也正是因为这一点,也导致了它们的第二个重要区别:它们的AT指令不同。
  那么,如何区分这些型号呢?这一点目前我还没有一个非常合理非常简便的方法,也只能看它默认的名称是什么,以及HC-05上面有一个小按钮。

如何设置蓝牙模块?

  从上面的讲述来看,蓝牙模块可以设置为主设备模式和从设备模式,此外蓝牙模块默认的串口传输波特率也不一定符合我们的需要,这个时候就需要对这个模块进行重新设置,而这个设置的过程就是对蓝牙模块发送AT指令
  操作时,我们可以用一个USB转TTL的模块来连接蓝牙模块,一般只需要四根线即可:

USB转TTL 蓝牙模块
RX TX
TX RX
5V 5V
GND GND

  如果没有USB转TTL模块,也可以使用单片机通过串口给蓝牙模块发送数据,注意此时蓝牙模块不能处于连接状态,连线和上表一样。
  虽然连接蓝牙模块的设备不同,但其控制指令是一样,都是AT指令,下面将总结一下常用的蓝牙模块的AT指令。

AT指令集

  首先需要明确一点,那就是不同型号的蓝牙的AT指令是不完全一样的【一定要参考手册!】,而且AT指令只有蓝牙在AT状态下才能有效。
  对于这些AT指令,我简单粗暴地将它们分为两类,即查询类指令控制类指令。其中,两类指令中又分为很多种操作,包括设置波特率,蓝牙名称等。需要注意的是:某些型号的蓝牙模块在某些操作上只有操作指令,没有查询指令!

注意:部分蓝牙模块AT指令之后要加回车(\r\n),有些不用,且AT指令不分大小写。

BT-04

  参考链接
  BT-04蓝牙模块是一旦上电即进入AT模式,不连接的状态下。AT指令需要换行。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

HC-06

  HC-06也和BT-04一样,都是一上电时且不连接设备时为AT模式。HC-06只能工作在从设备模式下

  HC-06的AT指令不需要回车换行,且虽然HC-06具有设置角色的AT指令,但HC-06不能作为主设备运行【参考链接1】。

HC-05

  HC-05直接连接USB转TTL是无法进入AT模式的,需要先按住按钮再上电,这样就能进入到AT模式,此时灯为慢闪状态;而如果直接上电,指示灯为快闪状态,这种状态为等待连接状态,AT指令无效。而且HC-05进入AT模式默认的波特率为38400

请添加图片描述

蓝牙主从配对工作

  上文提到,HC-05为主从一体的蓝牙模块,既可以工作在主设备模式,也可以工作在从设备模式,如果需要将两个蓝牙模块连接起来时,则可以使用两个HC-05,一主一从;也可以用一个HC-05(主)加上一个HC-06或者BT-04(从)。两种方案大同小异。

  • 首先将两个蓝牙通过USB转TTL连接到电脑上,进入AT模式。【其中HC-05要按住按键再上电】
  • 然后打开两个串口调试助手,设置好串口【HC-05的AT模式下波特率默认为38400,BT-04和HC-06为9600】,并输入“AT”或者“AT\r\n”进行测试。并分别输入“AT+ORGL\r\n”和“AT+DEFAULT\r\n”进行复位。【HC-05会自动退出AT模式,需要重插一遍】
  • 【设置密码】 初始化完毕后,将两个蓝牙的密码设置为一样的。(默认为1234)
  • 【设置波特率】 将两个蓝牙的波特率设置为一样的,默认状态都为9600【需要注意工作波特率和AT模式下的波特率是不一样的!设置完波特率后可能要重启才能生效】
  • 【设置角色】 如果是两个HC-05相互连接,那么一个要设置为主设备,一个设置为从设备,如果是一个HC-05,一个BT-04或HC-06,则只需要将HC-05设置为主设备。(默认为从设备)即可
  • 完成以上操作,则两个蓝牙模块会自动连接,并在从设备上显示:
    在这里插入图片描述
  • 如果断开连接(主设备设置为从设备),则会在从设备收到:
    在这里插入图片描述

手机与电脑端调试方法

  在很多智能小车的项目中,往往会有用手机通过蓝牙模块操作小车的环节,这是通过在手机上下载支持蓝牙传输的APP【蓝牙串口,应用商店即可下载】,然后在APP中进行数据传输,当然,电脑上也有类似的APP,也可以在微软商店中下载到,但是要付费,使用教程参考下面两个链接。
  参考链接1
  参考链接2
  参考链接3

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

前言

  作为最为常用的无线通信模块,蓝牙可以说是一些小型项目(比如智能小车)无线通信模块的首选了,之前研究了好几个蓝牙,碰了很多壁,写一篇博客记录一下!

参考链接

常用的蓝牙模块有哪几种?

  很多人一提到蓝牙就会想到一个长方形的扁平的带有四个或六个引脚的小型长方形板子,如下图所示。以为都是一样的蓝牙。。。但其实它们是分型号的。从我目前接触过的蓝牙主要有HC-05HC-06BT-04等型号的蓝牙,它们在使用、控制等方面存在一些区别。
在这里插入图片描述

  首先是使用方面。一般来说,这种蓝牙模块因为支持透传,一般的操作都是将其与单片机的串口相连,然后蓝牙连接到手机或者电脑,这样单片机串口发送的消息就能通过蓝牙传输到连接的手机或者电脑,而手机发送的数据也能通过蓝牙传输到单片机的串口,而用户不需要考虑这个数据内部的转换等问题,大大方便了使用。
  这种蓝牙模块支持多种运行模式:从设备模式、主设备模式、广播模式、Mesh组网模式参考链接】,本文只讨论两种——从设备模式主设备模式
  而以上讨论的各种型号的蓝牙模块的一个重要区别在于HC-06BT04只支持从设备模式,而HC-05支持从设备模式,也支持主设备模式。
  也正是因为这一点,也导致了它们的第二个重要区别:它们的AT指令不同。
  那么,如何区分这些型号呢?这一点目前我还没有一个非常合理非常简便的方法,也只能看它默认的名称是什么,以及HC-05上面有一个小按钮。

如何设置蓝牙模块?

  从上面的讲述来看,蓝牙模块可以设置为主设备模式和从设备模式,此外蓝牙模块默认的串口传输波特率也不一定符合我们的需要,这个时候就需要对这个模块进行重新设置,而这个设置的过程就是对蓝牙模块发送AT指令
  操作时,我们可以用一个USB转TTL的模块来连接蓝牙模块,一般只需要四根线即可:

USB转TTL 蓝牙模块
RX TX
TX RX
5V 5V
GND GND

  如果没有USB转TTL模块,也可以使用单片机通过串口给蓝牙模块发送数据,注意此时蓝牙模块不能处于连接状态,连线和上表一样。
  虽然连接蓝牙模块的设备不同,但其控制指令是一样,都是AT指令,下面将总结一下常用的蓝牙模块的AT指令。

AT指令集

  首先需要明确一点,那就是不同型号的蓝牙的AT指令是不完全一样的【一定要参考手册!】,而且AT指令只有蓝牙在AT状态下才能有效。
  对于这些AT指令,我简单粗暴地将它们分为两类,即查询类指令控制类指令。其中,两类指令中又分为很多种操作,包括设置波特率,蓝牙名称等。需要注意的是:某些型号的蓝牙模块在某些操作上只有操作指令,没有查询指令!

注意:部分蓝牙模块AT指令之后要加回车(\r\n),有些不用,且AT指令不分大小写。

BT-04

  参考链接
  BT-04蓝牙模块是一旦上电即进入AT模式,不连接的状态下。AT指令需要换行。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

HC-06

  HC-06也和BT-04一样,都是一上电时且不连接设备时为AT模式。HC-06只能工作在从设备模式下

  HC-06的AT指令不需要回车换行,且虽然HC-06具有设置角色的AT指令,但HC-06不能作为主设备运行【参考链接1】。

HC-05

  HC-05直接连接USB转TTL是无法进入AT模式的,需要先按住按钮再上电,这样就能进入到AT模式,此时灯为慢闪状态;而如果直接上电,指示灯为快闪状态,这种状态为等待连接状态,AT指令无效。而且HC-05进入AT模式默认的波特率为38400

请添加图片描述

蓝牙主从配对工作

  上文提到,HC-05为主从一体的蓝牙模块,既可以工作在主设备模式,也可以工作在从设备模式,如果需要将两个蓝牙模块连接起来时,则可以使用两个HC-05,一主一从;也可以用一个HC-05(主)加上一个HC-06或者BT-04(从)。两种方案大同小异。

  • 首先将两个蓝牙通过USB转TTL连接到电脑上,进入AT模式。【其中HC-05要按住按键再上电】
  • 然后打开两个串口调试助手,设置好串口【HC-05的AT模式下波特率默认为38400,BT-04和HC-06为9600】,并输入“AT”或者“AT\r\n”进行测试。并分别输入“AT+ORGL\r\n”和“AT+DEFAULT\r\n”进行复位。【HC-05会自动退出AT模式,需要重插一遍】
  • 【设置密码】 初始化完毕后,将两个蓝牙的密码设置为一样的。(默认为1234)
  • 【设置波特率】 将两个蓝牙的波特率设置为一样的,默认状态都为9600【需要注意工作波特率和AT模式下的波特率是不一样的!设置完波特率后可能要重启才能生效】
  • 【设置角色】 如果是两个HC-05相互连接,那么一个要设置为主设备,一个设置为从设备,如果是一个HC-05,一个BT-04或HC-06,则只需要将HC-05设置为主设备。(默认为从设备)即可
  • 完成以上操作,则两个蓝牙模块会自动连接,并在从设备上显示:
    在这里插入图片描述
  • 如果断开连接(主设备设置为从设备),则会在从设备收到:
    在这里插入图片描述

手机与电脑端调试方法

  在很多智能小车的项目中,往往会有用手机通过蓝牙模块操作小车的环节,这是通过在手机上下载支持蓝牙传输的APP【蓝牙串口,应用商店即可下载】,然后在APP中进行数据传输,当然,电脑上也有类似的APP,也可以在微软商店中下载到,但是要付费,使用教程参考下面两个链接。
  参考链接1
  参考链接2
  参考链接3

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

生成海报
点赞 0

记录无知岁月

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

暂无评论

发表评论

相关推荐

【嵌入式模块】蓝牙模块使用总结

前言 作为最为常用的无线通信模块,蓝牙可以说是一些小型项目(比如智能小车)无线通信模块的首选了,之前研究了好几个蓝牙,碰了很多壁,写一篇博客记录一下&#xff0

ESP32 LVGL8.1 实现太空人显示

注:本博客作为学习笔记,有错误的地方希望指正 一、ESP32 LVGL工程配置 首先要通过液晶屏显示太空人,我们这里主要有两种方式可以实现,第一种直接使用厂家只带的液晶屏幕驱动去实现图

上位机UART&JDY-10M蓝牙组网

接着上次的写吧。。。 解决了上次的问题,方向错了。 一直认为需要用PC端的蓝牙再和蓝牙模块通讯。 其实可以直接PC端插一个蓝牙模块做主设备,其它的做从设备。 PC->串口->主模块->从模块(通过蓝牙之间组网的方式)