2、硬件准备与连接:开发板、调试串口线、网线、电源的连接方法,串口引脚定义(TXD/RXD/GND)
做嵌入式开发,说白了就是跟硬件打交道。很多朋友软件写得溜,一到接线就懵了。我见过不少新手,折腾半天连不上,最后发现是串口线接反了。
这一章,咱们就把硬件连接这件事彻底讲清楚。你跟着我走一遍,以后闭着眼睛都能接对。
2.1 你需要准备哪些硬件?
先列个清单,缺一不可:
| 硬件 | 说明 | 注意事项 |
|---|---|---|
| 开发板 | 比如 i.MX6ULL、STM32MP157、RK3568 等 | 确认板子有网口和串口引出 |
| USB 转 TTL 串口线 | CH340G、CP2102、FT232 芯片的都可以 | 一定要买带杜邦头的,方便插拔 |
| 网线 | 超五类或六类直通线 | 交叉线现在基本用不上了,交换机/路由器自动翻转 |
| 电源 | 5V/2A 或 12V/1A,看板子规格 | 电流不够会导致启动异常,别问我怎么知道的 |
| 电脑 | 带 USB 口,Windows/Linux 都行 | 建议用笔记本,方便移动调试 |
我的习惯:我会在工具箱里常备三根不同颜色的杜邦线(黑、白、红),黑色接 GND,白色接 TXD,红色接 RXD。这样一眼就能分清,省得每次都要重新对线。
2.2 串口引脚定义:TXD、RXD、GND
串口调试是嵌入式开发者的「眼睛」。没有它,你连内核启动到哪一步了都不知道。
串口通信其实就三根线:
- TXD(Transmit Data):发送数据。开发板通过这根线把数据发出来。
- RXD(Receive Data):接收数据。开发板通过这根线接收电脑发来的指令。
- GND(Ground):地线。共地是通信的基础,不接 GND 绝对通不了。
千万注意:串口线要「交叉连接」——开发板的 TXD 接 USB 转 TTL 的 RXD,开发板的 RXD 接 USB 转 TTL 的 TXD。我曾经带过一个实习生,他把 TXD 接 TXD、RXD 接 RXD,折腾了一下午没反应,最后发现是线接反了。
为什么会这样?因为通信是「你发我收」:开发板 TXD 发数据,电脑这边 RXD 收数据。如果两边 TXD 对 TXD,那就成了两个人同时说话,谁也听不见谁。
2.3 连接步骤:一步一步来
别急着通电。我习惯按这个顺序操作:
- 先接串口线:把 USB 转 TTL 模块插到电脑 USB 口,杜邦头那端接开发板的调试串口。记住:GND 对 GND,TXD 对 RXD,RXD 对 TXD。
- 再接网线:一头插开发板网口,另一头插路由器/交换机,或者直接插电脑网口(如果电脑有双网卡)。
- 最后接电源:确认电压和极性正确后,再给开发板上电。
上电顺序有讲究:先接好所有线,最后上电。不要带电插拔串口线,容易烧坏串口芯片。我手上有块板子就是这么废的,教训深刻。
2.4 常见开发板串口引脚位置
不同板子的串口引脚定义不一样。我列几个常见的:
| 开发板型号 | 调试串口位置 | 引脚排列(从板子标记看) |
|---|---|---|
| 正点原子 i.MX6ULL | J1 排针 | GND、TXD、RXD(3pin) |
| 野火 i.MX6ULL | UART1 接口 | GND、TXD、RXD、VCC(4pin,VCC 不用接) |
| 友善 NanoPi NEO | Debug Port | GND、TXD、RXD(3pin,间距 2.54mm) |
| 树莓派 4B | GPIO 排针 | Pin 6(GND)、Pin 8(TXD)、Pin 10(RXD) |
拿到新板子,第一件事就是看原理图或丝印。别凭经验猜,每块板子的定义都可能不同。
2.5 连接示意图
下面这张图展示了整个硬件连接的关系:
2.6 避坑指南:我踩过的那些坑
做硬件连接,细节决定成败。分享几个我亲身经历的问题:
- 串口没反应? 先量一下 GND 通不通。用万用表蜂鸣档测开发板 GND 和 USB 转 TTL 的 GND,不通就是线断了或者没接好。
- 乱码? 波特率没对上。开发板 Uboot 默认一般是 115200,你电脑串口工具设成 9600 肯定乱码。
- 网线灯不亮? 先看网口有没有被静电打坏。我有一块板子,网口灯从来不亮,后来发现是 PCB 走线被刮断了。
- 上电后板子没反应? 量电源电压。有些劣质 USB 线压降大,5V 到板子上只剩 4.2V,根本起不来。
重要提醒:千万不要在开发板通电的情况下插拔串口线!热插拔容易产生瞬间高压,烧坏串口芯片。我手上有块板子的串口就是这么废的,后来只能换芯片。
2.7 快速验证连接是否正常
线接好了,怎么知道对不对?
打开电脑上的串口工具(比如 PuTTY、MobaXterm、minicom),设置好波特率 115200、数据位 8、停止位 1、无校验。给开发板上电,如果串口窗口里能看到 Uboot 的启动信息,恭喜你,连接成功了。
如果屏幕上啥也没有,别慌。按这个顺序排查:
- 检查串口线是否交叉连接
- 检查 GND 是否接好
- 检查串口工具设置的波特率是否正确
- 检查电脑设备管理器里是否识别到了 USB 转串口设备
嗯,基本上 90% 的问题都出在这四个环节里。