HC-05 与 HC-06 蓝牙模块:差异、规格和 Arduino 应用

10月 28 2025
来源: DiGi-Electronics
浏览: 1038

HC-05 和 HC-06 蓝牙模块是为 Arduino 和嵌入式项目添加无线通信的最受欢迎选择之一。虽然两者都提供简单、经济高效的 UART 连接,但它们的角色、功能和灵活性有所不同。

Figure 1. HC-05 vs HC-06 Bluetooth Modules

HC-05 与 HC-06 蓝牙模块概述

HC-05 和 HC-06 是蓝牙 SPP(串行端口协议)模块,通常用于在微控制器、PC 或移动设备之间实现无线 UART 通信。它们具有成本效益、易于集成,并广泛应用于原型设计、嵌入式系统和基于 Arduino 的项目。

Figure 2. HC-05

• HC-05:一个灵活的模块,既可以作为主模块(启动连接)也可以作为从站(响应连接)。这种双模功能使其成为更高级应用的理想选择,例如多设备网络或微控制器需要与其他蓝牙设备启动通信时。

Figure 3. HC-06

• HC-06:一个更简单的模块,配置为仅作为从机运行,这意味着它可以接受连接,但不能启动连接。其即插即用特性降低了复杂性,使其成为仅需要单个设备到设备链路的应用的理想选择。

主从角色和连接行为

Figure 4. HC-05 Master Mode vs HC-06 Slave Mode

HC-05 和 HC-06 之间的主要区别在于它们的固件角色以及它们如何建立蓝牙链路。

HC-05 可以担任任一角色。在主模式下,它会扫描附近的设备并启动连接,这对于必须主动与传感器或其他蓝牙模块链接的机器人或控制器等自主系统非常有用。在从属模式下,它等待主设备(例如智能手机或 PC)连接,使其适用于各种设置。

HC-06 永久锁定在从属模式。它无法搜索或启动连接,而是等待主设备配对。这种即插即用的简单性降低了复杂性,但限制了在需要多设备网络或自主启动的项目中的使用。

简而言之,HC-05 支持自动重新连接到最后配对的设备,并且在某些设置中可以在多个从设备之间切换(一次一个)。HC-06 仅在被主设备发现时连接,没有重新连接或多设备功能。

HC-05 与 HC-06 AT 命令灵活性

AT 命令允许在部署前配置蓝牙模块,这里 HC-05 和 HC-06 之间的差距最为明显。

HC-05:完整的命令集

提供广泛的命令来调整:

• 模块名称

•波特率

• PIN/密码

• 角色(主或从)

• 调试和连接测试

这使得 HC-05 非常适合需要定制和灵活性的高级或不断发展的项目。

HC-06:有限的命令

仅支持少数命令,通常用于更改名称和波特率。角色固定为从属模式。这种简单性对于快速 Arduino 项目很有吸引力,但限制了扩展或复杂网络的选项。

波特率和通信参数

两个模块均使用 UART(通用异步接收器/发射器)进行微控制器通信,确保广泛的 Arduino 兼容性。

HC-05:默认值为 9600 bps,但通过 AT 命令支持更快的速率(38400、57600、115200 bps)。这种灵活性对于需要更高吞吐量的应用(例如实时传感器流)非常有价值。

• HC-06:许多版本出厂时锁定为 9600 bps,但有些版本允许有限的更改。您必须在性能敏感型系统中围绕此限制进行规划。

• 共享参数:两者使用相同的帧格式(8 个数据位、1 个停止位、无奇偶校验),确保直接串行集成。

HC-05 和 HC-06 的引脚配置

将 HC-05 或 HC-06 连接到微控制器时,引脚配置是首先要检查的事情之一,因为两个模块之间存在细微差别。正确的接线可确保稳定的通信并防止意外损坏。

Figure 5. HC-05 and HC-06 Pinout

引脚名称HC-05 (6 针)HC-06 (4–5 针)
VCC的3.3–5 V 电源3.3–5 V 电源
接地接地接地
TXD的UART 数据输出UART 数据输出
RXDUART 数据输入UART 数据输入
CN/密钥用于启用 AT 命令模式或更改模块状态有时不存在,并非在所有版本上都可用
状态指示连接状态(连接时为高电平,空闲时为低电平)有时不存在,尤其是在更简单的分线板中

HC-05和HC-06的技术规格

特征HC-05HC-06
蓝牙版2.0 + 电子数据处理2.0 + 电子数据处理
支持的角色主从(Master & Slave)仅从属
默认波特率9600 bps(可更换)9600 个基点(可能固定)
AT 命令支持全套有限
引脚可用6 (EN/KEY、VCC、GND、TX、RX、STATE)4–5(VCC、GND、TX、RX,有时是 STATE)
范围 (LOS)室外 20–30 m,室内 5–10 m室外 20–30 m,室内 5–10 m
价格(平均)\$5–8\$3–5

HC-05和HC-06的蓝牙范围和数据性能

在范围和数据处理方面,HC-05 和 HC-06 模块提供几乎相同的性能,因为两者都是基于蓝牙 2.0 + EDR 标准构建的。它们的功能非常适合大多数短距离嵌入式项目,但不适用于需要长距离连接的应用。

状况HC-05HC-06
室内靶场5-10 米5-10 米
户外LOS20-30 米20-30 米
数据速率高达 3 Mbps (EDR)高达 3 Mbps (EDR)
天线PCB走线/外部PCB走线/外部

HC-05 和 HC-06 蓝牙模块的局限性

模块主要限制
HC-05与HC-06相比,成本略高;由于额外的引脚和 AT 命令选项,设置和配置可能更加复杂。
HC-06仅限于从模式,可用的 AT 命令较少;更高级项目的灵活性降低;大多数分线板上的引脚更少。
两者基于较旧的蓝牙 2.0 + EDR 标准构建,这意味着: • 不支持蓝牙低功耗 (BLE) • 功耗高于现代 BLE 模块 • 不适合电池供电的低能耗应用。

HC-05 与 HC-06 与 WF-05 和 HM-10 比较

Figure 6. HC-05 vs HC-06 vs WF-05 and HM-10

随着蓝牙和无线技术的进步,出现了超越经典 HC-05 和 HC-06 的更新模块。将它们与 WF-05 和 HM-10 进行比较,可以发现它们最适合的地方。

模块类型主要特点最佳用例
HC-05蓝牙 2.0支持主从角色,完整的AT命令集可定制需要灵活连接的机器人、物联网项目
HC-06蓝牙 2.0仅从属,最少的 AT 命令,成本极低且易于设置初学者 Arduino 项目,简单的传感器到控制器链接
WF-05WiFi + 蓝牙提供双连接(用于互联网访问的 WiFi + 用于本地配对的蓝牙)需要本地控制和云连接的物联网项目
HM-10蓝牙 4.0 BLE低功耗,长续航,支持BLE(低功耗蓝牙)可穿戴设备、移动配件和现代物联网应用

HC-05 和 HC-06 的应用

HC-05 和 HC-06 模块是 Arduino 和微控制器项目中最受欢迎的附加组件之一。它们提供了一种添加蓝牙无线通信的简单方法。以下是这些模块闪耀的一些实用且富有创意的应用程序:

Figure 7. Robot Control with Smartphone

• 使用智能手机进行机器人控制:在从属模式下使用 HC-05 接收来自 Android 应用程序的移动命令。 非常适合跟线机器人、机械臂或移动机器人。

Figure 8. Wireless Sensor Data Logging

• 无线传感器数据记录:使用 HC-06 将传感器数据(温度、湿度、GPS)从 Arduino 发送到笔记本电脑或手机。非常适合 DIY 气象站或环境监测器。

Figure 9. Home Automation Projects

• 家庭自动化项目:通过与手机的 HC-05 蓝牙配对远程控制灯、风扇或电器。简单的命令可以切换连接到微控制器的继电器。

Figure 10. Remote RC Car or Drone Communication

• 远程遥控汽车或无人机通信:在主模式下使用 HC-05 向配备 HC-06 的车辆发送方向命令。低成本构建远程控制系统的方式。

结论

在 HC-05 和 HC-06 之间进行选择取决于您项目的复杂性和灵活性需求。HC-05 提供完整的 AT 命令支持和双主从模式,使其适用于高级系统。HC-06 为简单的项目提供了一种更简单、即插即用的方法。通过了解它们的优势和局限性,开发人员可以在各种 Arduino 和嵌入式应用中实现可靠的无线通信。

常见问题 [FAQ]

HC-05 或 HC-06 可以连接到 iOS 设备吗?

HC-05 和 HC-06 模块通常可以轻松连接到 Android 和 Windows 设备。iOS 设备对蓝牙 SPP(串行端口配置文件)的支持有限,因此如果没有额外的硬件或 BLE 兼容模块,它们通常无法连接。

HC-05 和 HC-06 是否支持蓝牙低功耗 (BLE)?

不,HC-05 和 HC-06 都使用蓝牙 2.0 + EDR。他们不支持 BLE。对于低功耗或现代移动应用,HM-10 (BLE 4.0) 等模块是更好的选择。

两个HC-06模块可以直接通信吗?

不可以,HC-06 模块无法相互通信,因为两者都处于从模式。至少需要一个支持主站的模块(如 HC-05)来建立链路。

如何将 HC-05 或 HC-06 重置为出厂设置?

HC-05 可以通过 AT 命令进行复位,例如恢复默认波特率和 PIN。HC-06 的 AT 命令选项非常有限,如果配置问题仍然存在,通常需要重新刷新固件或购买新模块。

哪种模块更适合电池供电的项目?

两者消耗的电流相似 (~30–40 mA),但由于两者都不支持 BLE,因此它们对于长期电池使用来说并不节能。对于低能耗应用,首选基于 HM-10 或 ESP32 的解决方案等 BLE 模块。