蓝牙模块接线方法:手把手教你轻松搞定

最近在家捣鼓智能小车,想用手机控制它前进后退,就买了个常见的HC-05蓝牙模块。拆开包装一看,背面一排小针脚,标着VCC、GND、TXD、RXD,有点懵。其实搞清楚这几个接口的作用,接线就没那么难了。

认识常见蓝牙模块的引脚

市面上大多数用于单片机通信的蓝牙模块,比如HC-05、HC-06,都是四针设计:

  • VCC:接电源正极,一般是3.3V或5V,看模块说明
  • GND:接地,连开发板的GND就行
  • TXD:发送数据端,要接到主控芯片(如Arduino)的RX口
  • RXD:接收数据端,要接到主控芯片的TX口

很多人一开始容易把TXD和RXD接反,结果串口没数据。记住一句话:你发我收,我发你收。蓝牙模块发数据,就得让主控去“听”,所以它的TXD连主控的RX;反之,主控发指令,蓝牙模块就得接在自己的RXD上。

以Arduino UNO为例的实际接法

拿最常见的Arduino UNO来说,数字口0和1是串口通信口(RX/TX)。但直接占用了下载程序会冲突,建议用软件串口接其他引脚,比如D2和D3。

#include <SoftwareSerial.h>

// 定义软串口:D2为RX,D3为TX
SoftwareSerial btSerial(2, 3); 

void setup() {
  Serial.begin(9600);      // 启动硬件串口,用于调试输出
  btSerial.begin(9600);    // 蓝牙串口通信速率
}

void loop() {
  if (btSerial.available()) {
    char c = btSerial.read();
    Serial.print("收到:");
    Serial.println(c);
  }
}

对应接线方式如下:

  • 蓝牙模块 VCC → Arduino 5V
  • 蓝牙模块 GND → Arduino GND
  • 蓝牙模块 TXD → Arduino D2
  • 蓝牙模块 RXD → Arduino D3

注意:TXD和RXD之间最好串一个分压电路,因为蓝牙模块RXD引脚最大承受3.3V,而Arduino输出是5V。简单做法是用两个电阻搭成分压器,比如4.7k和10k串联,中间接到蓝牙的RXD。

通电前检查清单

接完线别急着上电,先确认几件事:

  • 电源电压是否匹配?有些蓝牙模块只支持3.3V,接5V会烧
  • TXD和RXD有没有接反?这是最常见的错误
  • 地线有没有共地?GND必须连在一起,不然信号对不上
  • 如果使用软件串口,代码里引脚定义对不对?

我家第一次接的时候忘了共地,串口一直乱码,折腾半小时才发现是GND没连。这种低级错误谁都犯过,慢慢来就行。

手机端装个“蓝牙串口助手”App,搜到设备配对后就能发字符了。看到Arduino串口监视器显示“收到:A”,那一刻特别有成就感,感觉整个屋子都联通了。