HC-05蓝牙模块配置连接和使用

文章目录

1. 前期准备

2. 进入AT模式

3. 电脑串口配置

4. 配置过程

5. 主从机蓝牙连接

6. 蓝牙模块HC-05和电脑连接


1. 前期准备

首先需要准备一个USB转TTL连接器,电脑安装一个串口助手,然后按照下面的连接方式将其相连。

VCCVCC
GNDGND
RXDTXD
TXDRXD

2. 进入AT模式

进入AT模式的有两种方法:

  • 方法一:先按住按键不放,然后将连接器接上电脑给模块上电。此时LED会2秒闪一次,进入AT模式。波特率固定为38400。
  • 方法二:模块直接上电,此时LED灯1秒闪两次,再按下按键,模块也会进入AT指令,此时LED还是快闪。这个时候的波特率和自己设置的一样, 默认为9600,1位停止位,无奇偶校验。

第一次配置最好使用方法一。总之当蓝牙模块上的灯慢闪的时候就说明进入了配置模式了。
 

3. 电脑串口配置

在配置蓝牙的时候将串口助手按下图来配置:设置波特率 38400,数据位 8 位,停止位 1 位,无校验位。

4. 配置过程

1.发送AT指令,验证是否进入AT模式

AT

如果验证没问题会返回OK,下图所示:

 如果返回值为乱码看一下是不是勾选了HEX显示,要把这个取消。

2. 设置波特率

AT+UART=9600,0,0 //波特率,停止位,校验位

这里的波特率根据自己的需求去设置。返回值:OK 

3. 查询波特率

AT+UART?

返回9600,0,0   ok

4. 配置主从模式

主模式:AT+ROLE=1

从模式:AT+ROLE=0

5. 配置蓝牙配对密码

AT+PSWD=“1234”

注意密码要加引号。默认密码为1234

6. 查询密码

AT+PSWD?

7. 配置蓝牙名称

AT+NAME=Name

名字自己随意设置

8. 获取蓝牙地址

AT+ADDR

返回地址和OK

5. 主从机蓝牙连接

要想将两个蓝牙相连接,要将一个蓝牙设置为主机模式,另一个设置为从机模式。然后从机蓝牙需要知道主机蓝牙的地址。所以为了区分,最好将两个蓝牙改为不同的名字。

第一步:准备两个不同的串口串口调试助手,分别用于HC-05_master和HC-05_slave的初始化配置,也就是按照刚才的命令设置为相同的波特率,相同的密码。

第二步:获取主机蓝牙地址

AT+ADDR

第三步:从机蓝牙输入主机的地址

AT+BIND=98D3,31,F6D6C3

注意:输入的主机蓝牙地址要将分号换成逗号. 

返回 OK,则成功配置

如果想验证。可以在从机中输入查询地址的命令

AT+BIND?

如果返回的地址和主机蓝牙相同,则配置成功。 

配置完成后,将从机蓝牙和主机蓝牙重新上电后会自动连接。接着在主机的串口中发送数据,从机的串口串口中会显示收到对应的数据。

6. 蓝牙模块HC-05和电脑连接

HC05蓝牙模块与笔记本蓝牙连接-优快云博客

步骤: 1. 两个蓝牙模块必须一个作为主机,另一个作为从机才能建立连接(上电后,从机一直处于接受状态,等待被连接。而主机则主动发出信号,寻找目标从机,前提是该目标从机的mac地址事先被写入到主机的flash芯片中储存) 2. 蓝牙模块上电前一直按住key按键不放,上电后松开,此时LED灯处于慢闪状态(每秒闪1次),提示已经进入AT指令响应状态,可以进行接收AT指令控制 3. PC端打开安可信串口助手(带AT指令),打开相应的串口,发送AT+ROLE?\n查询该模块的主从角色,如果为0,则为从机,如果为1则为主机。本例中,此模块(图中左边的HC-05模块)设为主机,则发送AT+ROLE=1\n,设为主机,成功返回OK 4. 发送AT+ADDR?\n查询此模块的mac地址,本例中为98d3:33:80ebdf,记下来稍后为从机的地址绑定用。同样的方法将另一个模块(图中右边的HC-05模块)设置为从机(AT+ROLE=0\n),并且查询到mac地址为98d3:36:aac2 5. 向主机串口中发送AT+BIND=98d3,36,aac2\n绑定从机的mac地址,成功则返回OK。发送AT+CMODE=0\n将主机设为指定蓝牙地址连接模式(即只允许主机向绑定好mac地址的蓝牙从机设备发起连接) 6. 同样地,向从机串口发送AT+BIND=983d,33,80ebdf\n绑定主机的mac地址,成功则返回OK。发送AT+CMODE=0\n将从机也设为指定蓝牙地址连接模式(即只允许从机接受绑定好mac地址的蓝牙主机设备发起的连接) 7. 至此,主从机均设置完毕。主从两模块松开key键重新上电,LED都快闪(每秒闪2次),表明均处于等待配对状态,随后大约几秒钟后,LED闪烁频率发生变化(不确定),表明已经侦测到目标设备,正在建立连接。随后大约一秒钟,很快 LED变成慢双闪状态(每2秒闪一次,每次连闪2下),提示已经配对成功,可以通过蓝牙协议传输数据了 8. 此时,在串口助手中发送一串字符,如果另一个蓝牙模块的串口助手里收到了同样的字符,且回送的字符,对方亦能收到,则通信成功。
### HC05蓝牙模块连接电脑的方法 #### 获取HC05模块的地址 为了成功建立HC05蓝牙模块与计算机之间的通信链路,第一步是从Python程序获取该模块的Bluetooth MAC地址。这可以通过`bluetooth`库来实现[^1]。 ```python import bluetooth nearby_devices = bluetooth.discover_devices() for bdaddr in nearby_devices: print(f"Found device: {bdaddr}") ``` 这段脚本会扫描附近的蓝牙设备并打印它们的MAC地址。确保此时HC05处于可被发现的状态(即已断电重启进入配对模式),以便能够识别它。 #### 配置HC05的工作模式其他参数 对于HC05来说,在尝试与其建立数据交换之前,可能需要调整一些默认配置选项,比如更改名字、PIN码或是切换工作模式等操作。这些设置通常是在AT命令集下完成的,既可以直接经由USB转TTL接口配合终端仿真器输入指令,也能借助微控制器如Arduino作为中介来进行设定[^2]。 如果采用后者的方式,则需编写一段简单的Arduino草图用于发送特定序列给HC05: ```cpp // Arduino Sketch to send AT commands to HC-05 via Serial Monitor void setup() { // Initialize serial communication at a baud rate of 9600 bps. Serial.begin(9600); } void loop() { while (Serial.available()) { char c = Serial.read(); if(c != '\n') { Serial.write(c); // Echo back what was received from PC's terminal emulator } } } ``` 此代码片段允许用户通过Arduino IDE中的串行监视器向HC05发出AT指令以修改其属性。 #### 建立PC端的应用层逻辑 一旦完成了上述准备工作之后,就可以着手构建应用程序层面的功能了——也就是怎样利用Python读写来自/送往HC05的数据流。这里推荐使用pybluez这个第三方包处理低级别的细节问题;安装方式如下所示: ```bash pip install pybluez ``` 下面给出了一段示范性的Python代码用来打开套接字并与指定目标进行对话交流: ```python from bluetooth import * server_sock=BluetoothSocket(RFCOMM ) server_sock.bind(("",PORT_ANY)) server_sock.listen(1) port = server_sock.getsockname()[1] uuid = "94f39d29-7d6d-437d-973b-fba39e49d4ee" advertise_service(server_sock, "SampleServer", service_id = uuid, service_classes = [ uuid, SERIAL_PORT_CLASS ], profiles = [ SERIAL_PORT_PROFILE ]) print("Waiting for connection on RFCOMM channel %d" % port) client_sock, client_info = server_sock.accept() print("Accepted connection from ", client_info) try: while True: data = client_sock.recv(1024) if len(data) == 0: break print("received [%s]" % data.decode('utf-8')) except IOError: pass print("disconnected") client_sock.close() server_sock.close() print("all done") ``` 以上就是关于如何将HC05蓝牙模块连接到个人电脑的大致流程说明。值得注意的是实际应用过程中可能会遇到各种各样的挑战,因此建议读者仔细阅读官方文档技术手册,并参考更多在线资源加深理解。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

TENET-

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值