第二章:硬件接口认知——DB9公母头引脚定义、USB转串口模块选型与接线

做嵌入式通信,第一关就是认识接口。你想想看,串口通信再牛,线接错了也是白搭。今天咱们就聊聊DB9和USB转串口模块,这两样东西,我几乎天天都在用。

2.1 DB9公母头引脚定义

DB9接头,说白了就是9针的D型接口。分公头和母头,公头带针,母头带孔。这个别搞反了,我见过有人拿公头去插公头,结果针都怼弯了。

标准定义是这样的:

引脚号 信号名称 方向 说明
1 DCD 输入 载波检测
2 RXD 输入 接收数据
3 TXD 输出 发送数据
4 DTR 输出 数据终端就绪
5 GND - 信号地
6 DSR 输入 数据设备就绪
7 RTS 输出 请求发送
8 CTS 输入 允许发送
9 RI 输入 振铃指示

核心要点:实际做三线制串口通信时,只需要接2(RXD)、3(TXD)、5(GND)三根线。其他引脚在大多数地面站场景下用不到。

我个人习惯,拿到DB9先看针脚编号。公头从左到右,第一排是1-5,第二排是6-9。母头则反过来,孔位编号是镜像的。这个细节,我第一次焊线时就栽过跟头。

2.2 USB转串口模块选型

现在笔记本基本没有串口了,所以USB转串口模块成了标配。市面上主流的方案就两个:CH340和FT232。

2.2.1 CH340 vs FT232

对比项 CH340 FT232
价格 便宜(几块钱) 贵(几十块)
驱动兼容性 Windows好,Linux/Mac需手动装 全平台免驱或自动识别
稳定性 日常够用 工业级,抗干扰强
最高波特率 2Mbps 3Mbps
适用场景 学习、调试、简单地面站 高可靠性、长距离、工业环境

我的建议:初学者先用CH340,便宜耐造。做产品或者飞无人机地面站,我建议用FT232。我曾经在飞控调试时,CH340在115200波特率下偶尔丢包,换成FT232就稳了。

2.2.2 接线方法

USB转串口模块一般引出这几个引脚:

  • VCC:5V或3.3V输出,给目标板供电用
  • GND:地线,必须接
  • TXD:模块发送,接目标板的RXD
  • RXD:模块接收,接目标板的TXD

注意:交叉连接!TXD对RXD,RXD对TXD。我见过有人直连,结果两边都在发数据,谁也收不到。嗯,这个坑我踩过不止一次。

接线示例:

USB转串口模块         目标板(如STM32)
    TXD  ————————>  RXD (PA10)
    RXD  <————————  TXD (PA9)
    GND  ————————  GND
    VCC  ————————  VCC (可选,注意电压匹配)

2.3 知识体系结构图

下面这张图,帮你理清本章的核心逻辑:

硬件接口认知体系 DB9 公母头 引脚定义:2-RXD, 3-TXD, 5-GND 公头带针,母头带孔 三线制:只接RXD/TXD/GND USB转串口模块 CH340:便宜,日常够用 FT232:稳定,工业级 接线:TXD↔RXD,交叉连接 选型与接线核心原则 1. 根据场景选芯片:学习用CH340,产品用FT232 2. 接线必须交叉:TXD→RXD,RXD→TXD 3. 共地是前提:GND不接,通信必失败

2.4 避坑指南

做硬件对接,有些坑是绕不开的。我挑几个最常见的说说:

  • 电平不匹配:我曾经用5V的USB转串口模块去接3.3V的STM32,结果烧了IO口。现在我都用支持电平切换的模块,或者加电平转换芯片。
  • 地线没接:有一次调试半天收不到数据,最后发现GND没接。嗯,这种低级错误,犯过一次就记住了。
  • 波特率对不上:模块和目标板波特率必须一致。我习惯先设115200,两边统一,省得后面排查麻烦。

小技巧:买USB转串口模块时,选带指示灯的那种。有数据收发时灯会闪,一眼就能看出通信有没有跑起来。

好了,这一章就到这里。记住DB9的引脚定义,选对USB转串口模块,接线别搞反,你的地面站硬件对接就成功了一半。


可可精品资料库