第二章:硬件接口认知——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 知识体系结构图
下面这张图,帮你理清本章的核心逻辑:
2.4 避坑指南
做硬件对接,有些坑是绕不开的。我挑几个最常见的说说:
- 电平不匹配:我曾经用5V的USB转串口模块去接3.3V的STM32,结果烧了IO口。现在我都用支持电平切换的模块,或者加电平转换芯片。
- 地线没接:有一次调试半天收不到数据,最后发现GND没接。嗯,这种低级错误,犯过一次就记住了。
- 波特率对不上:模块和目标板波特率必须一致。我习惯先设115200,两边统一,省得后面排查麻烦。
小技巧:买USB转串口模块时,选带指示灯的那种。有数据收发时灯会闪,一眼就能看出通信有没有跑起来。
好了,这一章就到这里。记住DB9的引脚定义,选对USB转串口模块,接线别搞反,你的地面站硬件对接就成功了一半。
可可精品资料库