☰
CH340串口驱动安装全攻略:从驱动原理到开发板识别与调试排查
2026/10/13 14:58:45 网站建设 项目流程

很多刚接触嵌入式开发的朋友,拿到第一块开发板之后最常卡住的地方,往往不是代码,而是串口驱动。开发板插上电脑没反应,设备管理器里一个黄色感叹号,烧录软件到处找不到串口,折腾半天也不知道是哪一步出了问题。

这篇文章我就以CH340 串口驱动安装为主线,把嵌入式入门前期最容易被忽视的“驱动环节”完整梳理一遍。文章会从 CH340 是什么、为什么需要安装驱动,到 Windows / macOS / Linux 下的安装演示,再到常见报错排查和工程建议,尽量做到跟着操作就能顺利识别串口。不管你是刚开始学 51 单片机、STM32、ESP32,还是准备参加蓝桥杯嵌入式类比赛,这篇文章都能帮你省下不少折腾时间。

1. 为什么要安装 CH340 串口驱动

1.1 CH340 是什么

CH340 是南京沁恒推出的一款 USB 转串口芯片,全称通常叫“USB 转 UART 桥接芯片”。它的作用一句话就能说清楚:让电脑的 USB 接口变成单片机开发板的串口接口。

现在绝大多数笔记本电脑已经没有原生串口(DB9 接口),但单片机开发板、GPS 模块、4G 模块、调试板等设备仍然大量使用 UART(通用异步收发器)串口通信。这时候就需要一颗类似 CH340 的芯片,在电脑 USB 和单片机 UART 之间做桥接。

可以这样理解:USB 和串口是两种不同“语言”的通信接口,CH340 就是一个翻译官。电脑把数据通过 USB 发给 CH340,CH340 翻译成 UART 电平信号交给单片机;单片机发回来的数据,再由 CH340 翻译成 USB 信号交给电脑软件。

CH340 在嵌入式入门开发板中非常常见。很多 51 单片机开发板、STM32 核心板、ESP32 开发板、Arduino 兼容板,都直接板载了 CH340 芯片。此外,还有大量独立的“USB 转 TTL 模块”也会使用 CH340。

1.2 没有驱动会怎样

如果电脑没有安装 CH340 驱动,会出现下面这些典型的“新手三连”现象:

  • USB 线插上开发板后,电脑提示“无法识别的 USB 设备”;
  • 设备管理器里出现一个带黄色感叹号的“未知设备”;
  • 打开烧录软件或串口助手,找不到任何 COM 口。

原因很简单:操作系统不认识这颗芯片。CH340 芯片内部有固定的 USB Vendor ID(供应商 ID)和 Product ID(产品 ID),常见的是VID_1A86和PID_7523。系统看到这两个 ID 后,需要对应的驱动程序来解析设备功能,然后把芯片模拟成一个标准串口(COM 口)。没有驱动,操作系统就不知道该拿这个设备怎么办。

安装好 CH340 驱动后,设备管理器里会多出一个串口,例如:

USB-SERIAL CH340 (COM3)

这个 COM 口就是单片机开发板与电脑通信的通道。

1.3 什么时候会用到 CH340

CH340 串口驱动不是只在一个场景下用到,下面这些情况几乎都会碰到:

  • 开发板烧录程序:例如 STC 系列 51 单片机通过串口下载程序;
  • 串口调试:查看单片机打印的日志、调试信息;
  • 上位机通信:Qt、C#、Python 编写的上位机软件和单片机交互;
  • 物联网模块调试:ESP8266、ESP32、4G 模块的 AT 指令调试;
  • 竞赛开发板使用:蓝桥杯单片机开发板、各省嵌入式竞赛板,很多都采用 CH340。

所以 CH340 驱动安装可以看作是嵌入式入门的第一块敲门砖。它在不同电脑上表现还不完全一样,有时候插上就能免驱识别,有时候需要手动安装,有时候还要处理各种冲突,因此非常值得花时间彻底搞明白。

2. 安装前的环境准备

2.1 确认电脑上的 USB 转串口芯片型号

不同开发板使用的 USB 转串口芯片可能不同,常见的有几种:

芯片型号常见应用特点
CH340大量国产开发板、USB 转 TTL 模块价格低,入门板最常见
CP2102部分 STM32、ESP32 开发板免驱性好,Silicon Labs 出品
FT232高端调试板、工业模块稳定性好,价格偏高
CH9102新型国产开发板CH340 的升级型号

安装驱动之前,最好先看一眼开发板上 USB 口附近芯片的丝印,确认是不是 CH340。如果芯片上印着CH340G、CH340C、CH340N、CH340T等字样,那么本文介绍的驱动就适用。如果芯片是其他型号,需要去对应厂商官网下载驱动,不要硬装 CH340 驱动。

还有一种确认方法:USB 线插上开发板后,在 Windows 设备管理器中右键未知设备,选择“属性→详细信息→硬件 ID”,如果看到VID_1A86,基本可以确定是 CH340 系列芯片。

2.2 查看操作系统类型

CH340 驱动支持 Windows、macOS、Linux、Android 等系统,但不同系统的安装包不同。Windows 下安装最简单,macOS 和 Linux 需要额外注意系统版本。

在 Windows 下,可以按Win + R打开运行窗口,输入winver查看系统版本,输入msinfo32查看系统位数。在“关于本机”里也能直接看到是 32 位还是 64 位系统。

注意一个问题:虽然现在新版本的 CH340 驱动安装包通常同时包含 32 位和 64 位驱动,但下载时最好还是先确认系统架构,避免在个别老系统上安装失败。如果是 Windows 10 或 Windows 11 用户,系统基本是 64 位,正常下载官网最新版即可。

2.3 准备一块开发板和一条数据线

驱动安装验证需要真实设备,所以建议提前准备:

  • 一块带 CH340 的开发板,或一个独立的 USB 转 TTL 模块;
  • 一条能传输数据的 USB 线;
  • 一台可以联网的电脑(用于下载驱动)。

特别要强调数据线的问题。现在很多 Micro USB 线、Type-C 线只能充电不能传数据,插上开发板后电脑完全没反应。遇到这种情况,很多人以为是驱动坏了,其实换根线就解决了。建议多备几根不同品牌的数据线来交叉验证。

3. Windows 下 CH340 驱动的安装演示

3.1 下载官方驱动

安装驱动最稳妥的方式,是去芯片厂商官网下载,而不是从各种“驱动精灵”“驱动大师”下载站获取。第三方工具虽然方便,但有时会捆绑其他软件,有时还会安装到不匹配的驱动版本,反而增加排查难度。

CH340 官方驱动下载步骤如下:

  1. 打开南京沁恒官网,网址为www.wch.cn;
  2. 在首页搜索框输入“CH340”,进入 CH340 产品页面;
  3. 找到“相关下载”或“下载中心”,下载名称为CH341SER的驱动压缩包;
  4. 解压压缩包,里面会有SETUP.exe安装程序,以及多个系统对应的驱动文件夹。

这里解释一下,为什么 CH340 驱动压缩包叫CH341SER。沁恒的 CH341 芯片和 CH340 在串口驱动上是共用的,所以 CH340 的驱动文件经常以 CH341 命名,这是正常现象,直接安装即可。

3.2 方式一:让 Windows 自动安装驱动

在 Windows 10 和 Windows 11 系统中,很多情况下 CH340 驱动已经内置在系统驱动库里,插上开发板就会自动安装。

操作步骤:

  1. 将开发板通过 USB 线连接到电脑;
  2. 等待几秒钟,观察任务栏右下角是否弹出“正在安装设备驱动程序”提示;
  3. 打开设备管理器,展开“端口(COM 和 LPT)”;
  4. 如果出现USB-SERIAL CH340 (COM3)之类的条目,且没有黄色感叹号,说明驱动已经自动安装成功。

这种情况通常发生在 Windows 系统比较新、联网状态良好时。如果自动安装失败,或者设备管理器里仍然是未知设备,就需要手动安装驱动。

3.3 方式二:手动运行 SETUP.exe 安装

手动安装是最保险的方式,也推荐新手采用这种方式,因为能看到明确的安装结果。

操作步骤:

  1. 找到解压后的SETUP.exe,右键选择“以管理员身份运行”;
  2. 安装界面会出现“安装”和“卸载”两个按钮,点击“安装”;
  3. 等待界面提示驱动安装成功;
  4. 插入开发板,或者重新拔插一次 USB 线;
  5. 打开设备管理器,确认“端口(COM 和 LPT)”下是否出现USB-SERIAL CH340。

这里有个细节:如果插上开发板后再运行SETUP.exe,有时会看到提示“驱动预安装成功”,意思是驱动已经加入系统驱动库,需要拔插设备或者重启一次才能完成设备枚举。如果遇到这种情况,不用慌,重新插拔 USB 线就能让新驱动生效。

SETUP.exe安装方式实际上会同时安装系统驱动和 INF 配置信息。安装完成后,CH340 设备会在系统里被识别成一个标准 COM 串口,烧录软件和串口助手都能直接按 COM 口访问。

3.4 如何验证驱动安装成功

驱动装完不等于万事大吉,最好做一次验证。

方法一:查看设备管理器

打开设备管理器的方法很多,右键“开始菜单”选择“设备管理器”,或者按Win + R输入devmgmt.msc回车都可以。重点看“端口(COM 和 LPT)”分类下是否出现USB-SERIAL CH340 (COMx),并且图标上不能有黄色感叹号。

方法二:查看硬件 ID

在 CH340 设备上右键选择“属性→详细信息”,在“属性”下拉框里选择“硬件 ID”。如果看到VID_1A86和PID_7523,说明设备识别正确。

方法三:命令行查看串口

打开命令提示符(cmd),执行:

mode

输出中会列出系统当前存在的串口设备,例如:

状态 设备名 描述 ------------------------------------------- COM1 Communications Port COM3 USB-SERIAL CH340

不同系统版本输出格式略有不同,但只要能看到USB-SERIAL CH340对应的 COM 口,就说明驱动已经生效。

方法四:使用 PowerShell 获取串口信息

如果你更喜欢 PowerShell,也可以执行:

Get-PnpDevice -Class Ports | Format-Table FriendlyName, Status

输出示例:

FriendlyName Status ------------ ------ USB-SERIAL CH340 (COM3) OK

需要注意的是,COM 口号不一定是 COM3,它会根据电脑当前已占用的串口号动态分配。如果同时插了多个 USB 转串口设备,COM 号可能会变化,这在后面排查问题时会重点讲到。

4. 开发板接线与连通性验证

驱动安装成功以后,只是说明电脑能“看见”这个串口了。能不能和单片机正常通信,还需要接线、软件和程序的配合。这一节提供一个基于 USB 转 TTL 模块的连通性验证方法。

4.1 认识 USB 转 TTL 串口模块

如果你手里的开发板没有板载 CH340,而是使用独立的 USB 转 TTL 模块,需要先认识模块上的引脚。常见引脚有:

  • VCC:电源输出或输入;
  • GND:地线,必须与目标板共地;
  • TXD:发送端;
  • RXD:接收端;
  • DTR、RTS:用于自动下载复位的控制线,初学者可以先不关注。

接线规则有一条核心原则:交叉连接。模块的TXD接目标板的RXD,模块的RXD接目标板的TXD,GND必须连在一起。很多新手第一次接线时把 TXD 接 TXD、RXD 接 RXD,结果数据完全不通。

4.2 接线前的安全提醒

接线前一定要先断电操作,不要带电插拔信号线。模块的VCC引脚要特别注意,如果目标板是 3.3V 单片机,而模块输出的是 5V 电源,直接给VCC供电可能会烧坏板子。正确做法是:

  • 先根据目标板手册确认其工作电压;
  • 如果模块支持跳线切换 3.3V / 5V,则调到对应档位;
  • 如果不确定供电关系,可以先让目标板自己通过其他方式供电,只连接GND、TXD、RXD三根线。

还要特别强调一点:TXD 和 RXD 千万不要短接到 VCC。做回环测试时只短接 TXD 和 RXD,不要接电源,否则可能烧坏芯片。

4.3 串口助手测试

当开发板或模块连接到电脑并识别出 COM 口后,可以打开串口调试助手来测试。常见的串口助手有:

  • SSCOM
  • XCOM
  • UartAssist
  • Arduino IDE 自带的串口监视器
  • VS Code 的 Serial Monitor 插件

打开串口助手后,选择对应 COM 口,波特率设置为开发板程序使用的波特率。如果开发板出厂自带串口打印程序,打开串口往往能看到类似Hello World、温度数据等输出。

如果你想用代码方式快速验证,可以使用 Python 的 pyserial,在命令行中安装:

pip install pyserial

然后运行:

import serial try: ser = serial.Serial('COM3', 115200, timeout=1) print('串口打开成功:', ser.name) # 发送一串测试数据 ser.write(b'hello embedded\r\n') # 读取返回数据(需要单片机有回显程序) data = ser.readline() print('收到数据:', data) ser.close() except Exception as e: print('串口打开失败:', e)

注意:如果你的 COM 口号不是 COM3,需要将代码中的'COM3'改成实际端口号。这段代码只是验证串口能否正常打开和收发,需要单片机程序配合。如果单片机没有回显程序,readline()可能会阻塞或超时,属于正常现象。

4.4 串口参数与常见误区

串口通信有几项关键参数必须一致,否则即使是同一根线、同一个 COM 口,也会收到乱码:

  • 波特率:常见的有 9600、115200、57600;
  • 数据位:通常为 8;
  • 停止位:通常为 1;
  • 校验位:通常为无校验。

这个组合经常简写为8N1,即 8 个数据位、无校验、1 个停止位。开发板教程里给出的串口参数,必须和上位机设置保持一致。最典型的误区是:单片机程序用 9600 波特率打印,串口助手却设置成 115200,收到的自然是一堆乱码。

5. macOS 与 Linux 下的安装补充

5.1 macOS 下如何安装 CH340 驱动

macOS 用户在安装 CH340 驱动时,路径略有不同。首先同样从沁恒官网下载 macOS 版驱动。下载得到的安装包需要按照系统提示安装到“应用程序”或“系统扩展”中。

由于 macOS 对系统扩展和内核扩展有严格的安全校验,安装过程中可能会出现“系统扩展已被阻止”的提示。这时需要到“系统设置→隐私与安全性”中允许加载对应的系统扩展,部分系统版本提示可能需要重启电脑。

安装完成后,插上开发板,在“关于本机→系统报告→USB”中可以看到对应设备。串口设备名称一般是:

/dev/tty.wchusbserial1410

后面那串数字可能不同。在终端里执行下面的命令可以看到类似输出:

ls /dev/tty.*

macOS 各版本安全策略差异较大,具体以你正在使用的系统版本提示为准,但总体的思路是:下载官方驱动,安装,然后在隐私与安全性里放行系统扩展。

5.2 Linux 下 CH340 串口驱动说明

Linux 系统下,大多数发行版内核已经包含了 CH340 对应的ch341驱动,插上 USB 转 TTL 模块或开发板后会自动识别,一般不需要额外安装驱动。

插上设备后,执行:

lsusb

如果看到含有1a86:7523的设备,说明 USB 层面已经识别到 CH340:

Bus 001 Device 004: ID 1a86:7523 QinHeng Electronics CH340 serial converter

再执行:

dmesg | tail

如果驱动加载成功,通常能看到类似:

ch341-uart ttyUSB0: ch341-uart converter now attached to ttyUSB0

那么串口设备名就是/dev/ttyUSB0。如果普通用户没有权限访问串口,可以把当前用户加入到dialout或uucp组:

sudo usermod -aG dialout $USER

执行后需要重新登录一次生效。注意不同发行版的用户组名可能不同,dialout在 Ubuntu / Debian 系列中很常见。如果插上设备后lsusb能看到 CH340,但dmesg没有ttyUSB0输出,可能是内核缺少驱动模块,这时需要查阅当前发行版是否包含ch341内核模块,或者手动编译安装厂家提供的 Linux 驱动。

6. 常见问题与排查思路

6.1 设备管理器显示黄色感叹号

这是最常见的现象。可能原因包括驱动安装异常、驱动版本过旧、USB 接口供电不足、数据线质量差等。

排查步骤建议按下面顺序执行:

  1. 换个 USB 口,优先插在电脑主机后置 USB 口,避免前面板或 HUB 供电不足;
  2. 换一根确认能传数据的数据线;
  3. 在设备管理器中右键该设备,选择“卸载设备”,如果勾选了“删除此设备的驱动程序软件”,可以连旧驱动一起清掉;
  4. 重新运行官方SETUP.exe,先点击“卸载”,再点击“安装”;
  5. 重新插拔 USB 线。

如果仍然不行,可以在设备管理器中右键设备,选择“更新驱动程序→浏览我的电脑以查找驱动程序→让我从计算机上的可用驱动程序列表中选取”,然后手动指定 CH340 驱动。

6.2 Windows 11 安装失败或提示驱动签名问题

Windows 11 对驱动签名校验比老版本系统更严格。如果你下载到的是旧版驱动,安装时可能提示“哈希值不在指定的目录中”或“无法验证发布者”,导致安装中断。

解决方法:

  1. 去官网重新下载最新版 CH340 驱动,新版驱动通常已经适配 Windows 11;
  2. 如果仍然不行,可以暂时禁用驱动程序强制签名再安装。

进入禁用驱动签名方式的方法是:按Win + I打开设置,进入“系统→恢复”,点击“高级启动”下的“立即重新启动”。也可以在执行任何操作前先保存好工作,然后在命令提示符中运行:

shutdown /r /o /t 0

电脑重启后会进入蓝色高级启动界面,依次选择“疑难解答→高级选项→启动设置→重启”,重启后按数字键或 F7 选择“禁用驱动程序强制签名”。

这里必须重点提醒:禁用驱动签名是为了解决驱动安装问题的临时手段,安装完成后建议重启电脑恢复正常启动模式,不要长期关闭系统的驱动签名校验。

6.3 识别到了 CH340 但串口助手打不开

如果设备管理器里已经能看到USB-SERIAL CH340 (COM3),但打开串口助手时提示“端口被占用”或“打开失败”,通常原因不是驱动:

  • 串口被其他软件占用,例如某个上位机、下载工具还没退出;
  • 虚拟机软件占用了 USB 串口设备;
  • 串口助手本身没有管理员权限;
  • COM 口号被系统分配成一个奇怪的编号,和某些虚拟串口冲突。

排查时可以先关闭所有可能占用串口的软件,拔插一次 USB 线,然后重新打开串口助手。如果还是不行,可以在设备管理器中把 CH340 的 COM 号换成一个空闲的号码,例如 COM5、COM6。

换 COM 号的操作:设备管理器→端口(COM 和 LPT)→右键 CH340→属性→端口设置→高级→COM 端口号,选择一个系统提示“使用中”的端口,确定后重新打开串口助手。

6.4 下载程序失败,不一定是驱动问题

很多新手在 Keil、STC-ISP、FlyMcu 等软件中下载程序失败时,第一反应是“驱动没装好”。但实际上,设备管理器中已经能识别到 CH340 串口,驱动层面通常没问题。

常见的下载失败原因还包括:

  • 没有选择正确的 COM 口;
  • 开发板没有进入下载模式;
  • STC 系列单片机需要“冷启动”,即先点下载再给单片机上电;
  • STM32 部分开发板需要将 BOOT0 拉高,进入系统存储器模式才能下载;
  • 串口线接线错误,TXD 和 RXD 方向接反。

遇到下载失败时,先回到基础排查:确认串口选择正确、确认下载模式、确认芯片型号和波特率设置。驱动表现正常但下载失败,大概率问题出在“流程”而不是“驱动”。

6.5 常见问题速查表

问题现象常见原因解决思路
插上开发板完全没反应数据线只能充电、USB 口损坏换线、换 USB 口
设备管理器显示未知设备驱动未安装或安装异常重新安装官方驱动
设备管理器有黄色感叹号驱动版本冲突或安装不完整卸载后重新安装
设备管理器显示 COM 口不固定系统自动分配串口号手动固定 COM 号
串口助手提示端口被占用其他软件占用串口关闭占用程序或换 COM 号
打开串口成功后收到乱码波特率不一致、接线虚接统一波特率、检查共地
能识别 CH340 但下载失败下载模式或复位时序问题按开发板手册重新下载流程
Windows 11 安装报错驱动版本过旧、签名校验失败更新驱动或临时禁用签名强制

7. 最佳实践与工程建议

7.1 驱动与软件使用规范

嵌入式开发环境很容易因为驱动管理混乱而变得不可控,建议从入门第一天就养成好习惯:

  • 优先从芯片原厂官网下载驱动,不依赖第三方驱动工具;
  • 把常用的驱动安装包、烧录工具固定放在一个工具目录下,并备份到网盘或团队共享盘;
  • 重装系统后,先安装 CH340 之类的基础调试驱动,再开始开发工作;
  • 尽量避免同时安装多个版本的 CH340 驱动,防止版本冲突。

还有一个容易被忽略的点:在团队协作或比赛环境中,不同电脑上 CH340 的 COM 口号可能不同,编写自动化烧录脚本时不要硬编码 COM 口,最好允许手动指定。

7.2 硬件连接安全建议

串口调试涉及真实硬件,安全规范非常重要:

  • 接线前先断电,先接 GND 再接信号线;
  • 信号线连接时注意 TXD / RXD 交叉;
  • 不确定模块输出电压时,不要贸然用 VCC 给目标板供电;
  • 使用带过流保护的 USB HUB 或开发板自带的稳压电路;
  • 做回环测试时,只短接 TXD 和 RXD,不短接 VCC。

本文略去对专业电路设计的展开,但从嵌入式入门的实际操作来看,接线安全比“能跑起来”更重要。一根线接错,轻则通信失败,重则烧毁芯片,一定要谨慎。

7.3 串口调试的工程化思维

串口是嵌入式系统最重要的调试出口,建议在项目中把串口日志当成正式代码来管理:

  • 统一波特率,项目组内默认 115200;
  • 日志格式统一为“时间戳 + 级别 + 内容”;
  • 发布版本保留必要的错误日志输出,方便现场定位;
  • 串口调试时注意区分printf重定向到哪个串口,避免在多个串口共用时打印信息混乱。

在以后学习 FreeRTOS、RT-Thread、Linux 驱动时,串口日志更是分析系统运行状态的关键工具。现在养成好习惯,后面写复杂项目会少走很多弯路。

7.4 初学者如何避免“装好了却打不开”

把问题分层,是嵌入式调试中最重要的一种能力。遇到串口相关问题时,按照下面的层次来定位:

  1. 驱动层:设备管理器是否识别到 CH340?没有,先解决驱动和 USB 连接;
  2. 软件层:串口助手能否打开 COM 口?打不开,查端口占用和权限;
  3. 接线层:模块和目标板的 TXD / RXD / GND 是否连接正确?是否共地?
  4. 参数层:波特率、数据位、停止位、校验位是否与程序一致?
  5. 程序层:单片机程序是否真的初始化了串口并输出数据?

这五个层面逐渐排查,就不会在一个错误方向上反复折腾。

8. 总结与下一步学习路线

8.1 本篇真正要掌握的内容

  • 理解 CH340 作为“USB 转串口桥接芯片”的作用;
  • 能在 Windows 下熟练安装和验证 CH340 驱动;
  • 能独立处理驱动安装失败、设备管理器感叹号、串口占用等常见问题;
  • 知道 macOS 和 Linux 下 CH340 驱动的基本处理方式;
  • 明白驱动安装之后,串口链路仍然需要从接线、参数、程序等多个维度配合。

驱动安装只是嵌入式入门的“第 0 步”,但它直接决定了后续开发和调试能不能顺利展开。这一步走通之后,才算真正准备好进入单片机世界。

8.2 后续嵌入式入门学习路线建议

建议下一步按以下顺序继续学习:

  1. 点亮 LED:理解 GPIO(通用输入输出)的基本操作;
  2. 按键输入:学习读引脚电平、消抖处理;
  3. 串口通信:用串口打印调试信息,进一步理解 CH340 在开发中的作用;
  4. 中断与定时器:掌握单片机事件驱动的基本机制;
  5. 常用外设:LCD1602、PWM、ADC、I2C、SPI;
  6. 综合小项目:温湿度监控、智能小车、电子时钟等。

如果你用的是 51 单片机,可以从 Keil C51 和 STC-ISP 开始;如果是 STM32,可以从 CubeMX 加 HAL 库入手;如果是 ESP32,可以直接走 Arduino 或 ESP-IDF 路线。只要第一步串口驱动走通了,后面很多流程都会顺畅很多。

如果这篇文章对你有帮助,可以点赞收藏备用,也欢迎在评论区分享你在 CH340 驱动安装过程中遇到的问题,很多经典问题其实都是新人反复踩过的坑。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询