欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

HC-05蓝牙模块常见问题、解决方案及实现在手机间的连接通透讲解

最编程 2024-02-21 20:50:09
...

1、蓝牙模块的调试——解决无法与设置AT命令的问题


USB转TTL模块与HC-05蓝牙模块的接线:


两模块共地,两模块共VCC(VCC取5V);蓝牙模块的RX接转换模块的TX,蓝牙模块的TX接转换模块的RX。如下图所示:

image.png

这个时候就要将转换模块连接到电脑上,然后利用串口调试助手进行蓝牙模块的调试。


1)问题1:没有搜索到串口

首先我们需要尝试设置一下AT指令,但是连接串口的时候,你可能会遇到一下的问题:没有搜索到串口,但在确保正确连线的情况下,已经正确的上电,但是没有搜索的串口的原因,可能是没有安装驱动

image.png


方法1:网上下载驱动

在网上找了一个驱动,然后进行安装再次尝试

image.png

image.png

image.png


方法2:自己更新驱动

image.png

image.png

驱动安装完成后需要重启


  • 对比

安装驱动之前

image.png


2)问题2:串口打开失败–PL2303HXA自2012已停产,请联系供货商

成功安装了驱动之后又出现了一个问题,可以看到串口是可以被识别出来的,但打开失败,无法正常的使用

image.png

还是失败了,现在要解决停产的这个问题—“PL2303HXA自2012已停产,请联系供货商”


解决方法

参考链接

解决方法如下:

链接:https://pan.baidu.com/s/1jw1nsLGd23CagQ_dbkqu0w

提取码:vc0c

在这里下载驱动并解压

image.png

然后安装驱动

image.png

image.png

image.png

然后右键点击更新驱动程序

image.png

image.png

image.png

image.png

然后点击下一步

image.png

image.png

完成


串口测试

打开串口进行测试一下

image.png

可以正常的配对,接下来,继续进行蓝牙模块的调试

image.png


3)蓝牙模块的调试

HC-05蓝牙串口通讯模块具有两种工作模式:命令响应工作模式和自动连接工作模式。在自动连接工作模式下模块又可分为主(Master)、从(Slave)和回环(Loopback)三种工作角色。


  • 当模块处于自动连接工作模式时,将自动根据事先设定的方式连接的数据传输;
  • 当模块处于命令响应工作模式时能执行AT命令,用户可向模块发送各种AT 指令,为模块设定控制参数或发布控制命令。

怎么进入命令响应工作模式?


进入命令响应工作模式有两种方法:

  • 模块上电,未配对情况下就是AT模式,波特率为模块本身的波特率,默认:9600,发送一次AT指令时需要置高一次PIO11;
  • PIO11 置高电平后,再给模块上电,此时模块进入AT 模式,波特率固定为:38400,可以直接发送AT指令。

什么叫做置高一次PIO11?


在蓝牙模块中有一个小按键,按一下就置高一次PIO11。也就是说,第一种方法需要每发送一次AT指令按一次;而第二种方式是长按的过程中上电,之后就无需再管了,直接发送AT命令即可。


需要注意一下,两种进入命令响应工作模式的方式使用的波特率是不一样的,建议使用第二种方式。


怎么区分进了命令响应工作模式呢?

在蓝牙模块上有灯,当灯快闪的时候,就是自动连接工作模式;当灯慢闪的时候,就是命令响应工作模式,当灯慢闪两下的时候就是与手机正常连接模式。

image.png


4)AT命令

进入到命令响应工作模式之后,就可以使用串口调试助手进行蓝牙调试了。


首先有一点,AT指令不区分大小写,均以回车、换行结尾。下面介绍常用的AT指令:

image.png

对于AT指令,有几点注意:


  • AT+NAME?:获得设备名称,这个AT指令有很大可能性是没有返回的,因为我也看到了很多的例子……,但是其他的指令都是没有问题的,直接设置设备名称就行了;
  • AT+UART?:获得串口参数,串口的参数一共有三个,波特率、停止位、检验位。其取值如下:

image.png

其默认值为:9600,0,0。


设置蓝牙参数

上一篇: 实战指南:用Python爬取HTML网页的技巧与步骤笔记

下一篇: 深入理解SD卡协议和FatFs文件系统的Block与Sector区别,以及 FatFs中disk_ioctl底层驱动的实现和构思原貌