CH343等第3代USB串口芯片常见问题解答

news2024/12/28 20:29:33

一、概述

CH343、CH9101、CH9102等系列芯片,是沁恒推出的第三代USB转单串口产品,基于经典版CH340系列芯片进行技术革新,实现USB转高速异步串口,波特率支持最高6Mbps。芯片内部高度集成,外围精简,均提供VIO电源引脚,串口I/O支持独立供电。

第三代USB转串口芯片支持使用系统集成的CDC串口驱动或VCP厂商驱动。VCP厂商驱动能更齐全,支持全功能串口、硬件流控、GPIO、USB参数配置等功能、支持高波特率下持续稳定传输。优先推荐使用VCP驱动程序,支持Windows、Linux、Android、macOS等操作系统。

本文所列常见问题同样适用于特性相近的USB转多串口芯片CH342、CH9103等。相较于USB转串口经典版CH340和CH341系列芯片,第三代USB转串口产品主要特点如下:

二、电源设计

USB转串口芯片有3个电源端分别是VDD5、V3和VIO,芯片内置3.3V的LDO电源调节器。

VDD5是内部LDO的输入端;

V3是内部LDO的输出端,USB收发器和内核电源均从该引脚输入;

VIO是单独的串口IO等引脚的电源输入。

常见问题1—VDD5和V3如何连接

VDD5支持5V或3.3V电源电压供电。

  1. 当VDD5引脚输入5V工作电压(实际上大于3.8V)时,内部LDO工作,V3引脚会输出3.3V电源供芯片内部USB收发器使用。
  2. 当VDD5引脚输入3.3V工作电压(实际上小于3.6V)时,V3引脚需要和VDD5连接,同时输入外部的3.3V工作电压。

VDD5和V3引脚需要外接电源退耦电容,默认104规格(即104规格),且PCB布局时靠近芯片引脚放置。V3引脚的电容用于电源退耦,来改善USB传输过程中的EMI。此外,VDD5供电电源上建议同时并联10~22uF大电容。

常见问题2—VIO如何连接

USB转串口芯片的VIO引脚用于为串口I/O和其他如RST引脚提供I/O电源,支持电压范围1.8V~5V。

默认情况下VIO引脚应该与芯片所连接的串口设备采用同一电压,此时双方串口电压匹配。VIO引脚支持的电压输入范围是线性的,在如上范围内可随意调节。例如,可直接使用芯片实现USB转1.8V串口,USB转2.5V串口,USB转3.3V串口,USB转5V串口等。

芯片V3引脚在芯片5V供电时可以输出3.3V电压,因此使用3.3V串口时,VIO也可以直连V3引脚节省一个外部LDO。

常见问题3—VBUS如何连接

芯片的VBUS引脚电源来自于V3,该引脚用于芯片USB电源检测。默认应该连接到USB总线的电源,当检测到失去USB电源,芯片将关闭USB并睡眠。当芯片的VDD5采用非USB 主机的电源而使用板载电源供电时,VBUS也可以和VDD5使用同一电源。

常见问题4—芯片与串口外设(如MCU)的电源连接方案

三、串口设计

芯片的串口引脚包含数据传输引脚和MODEM信号引脚。数据传输引脚包括:串口数据发送引脚TXD、串口数据接收引脚RXD。MODEM信号引脚包括:RTS、CTS、DTR、DSR、RI、DCD。

常见问题1-TTL串口设计

常规情况下使用TTL串口通讯,仅需要使用TXD和RXD信号即可,部分场合需要硬件流控功能时还需要使用RTS和CTS信号。其余MODEM信号引脚若使用不到可直接悬空处理。

常见问题2-RS232串口设计

USB转串口芯片配合RS232电平转换芯片组合使用可以实现全MODEM信号的RS232串口,也可以仅使用部分串口信号实现简版RS232串口,和TTL类似,不使用的信号悬空处理。

常见问题3-RS485串口设计

使用提供TNOW信号的芯片型号配合RS485电平转换芯片可以实现RS485串口通信,RS485收发转换芯片需要单独进行收发方向控制,TNOW用于该方向的控制,线路上TNOW直连RS485收发器的发送使能DE和接收使能RE即可。

注:部分芯片型号TNOW功能和其他功能复用,电路设计上需要在DTR引脚外接一个下拉电阻,默认推荐4.7K。

四、其他辅助引脚说明

ACT引脚说明

芯片的ACT引脚为USB设备配置完成状态输出(当芯片接收到主机的设置配置请求并操作完成时会输出低电平,默认该引脚上电为高电平),该引脚可用作芯片的USB工作状态指示,也可以用于通知MCU等串口设备USB转串口芯片的工作状态。也可以用于控制后级电路的电源通断,如USB转RS232串口应用,当计算机睡眠ACT输出无效电平可用于控制RS232电平转换芯片关断电源以节约功耗。

五、IO电流倒灌问题

USB转串口芯片和串口负载(MCU、CPU、其他串口外设等)的供电方式可以分为2个大类:统一供电和独立供电。

统一供电是指USB芯片和串口负载使用同一电源,上下电同步,此时不会存在彼此之间电流倒灌的问题。

独立供电是指USB芯片和串口负载使用不同的电源,对于包含VIO电源引脚的芯片,需要单独考虑VIO引脚电路接法,当VIO和串口负载使用同一电压源不会存在问题,当VIO和串口负载未使用同一电压源时,需注意上电时序。

电流倒灌为非正常应用,在实际使用中应尽量避免。若确有非同时上电的工作需求,需注意电路设计,如下为推荐使用的电路设计方案。

方案一、统一供电

USB芯片与串口负载使用同一电源,USB芯片采用以下供电方式:

VDD5=VBUS=VIO=VMCU:使用板载电源/USB口的VBUS或VBUS经过LDO降压后的电源。

V3:VDD5=5V下连接退耦电容,VDD5=3.3V下V3与VDD5短接。

如上电路设计,当芯片VDD5/VBUS/VIO均无电时USB连接计算机,芯片不会工作。

方案二、独立供电

USB芯片与串口负载使用独立的电源,USB芯片采用以下供电方式:

VDD5=VBUS:USB口的VBUS或VBUS经过LDO降压后的电源。

V3:VDD5=5V下连接退耦电容,VDD5=3.3V下V3与VDD5短接。

VIO=VMCU:使用板载电源同时给VIO和串口负载供电。

如上电路设计,当芯片USB口接入计算机,但串口负载未上电时,即VDD5与VBUS有电但VIO无电,此时芯片USB单元正常工作,会直接进行枚举生成串口。

该供电方式适用于以下应用场景:需要冷启动串口下载的MCU/CPU,监控MCU/CPU/串口外设上电时的串口日志,产品低功耗需求即USB芯片耗电越低越好。

六、如何提高USB通讯稳定性和抗干扰能力

USB信号属于模拟信号,所以在USB 芯片内部包含数字电路和一些模拟电路,另外,USB 芯片中还包含时钟震荡及PLL倍频电路,电路的公共地端在芯片内部已经连接在一起并连接到芯片的GND引脚。

如果GND芯片有时工作不正常、或者GND数据传输随机性失败、或者抗干扰能力差,那么就应该考虑GND芯片是否稳定工作。以下为常见的一些注意事项:

  • USB 信号线 D+ 与 D- 尽量对称平行布线,保证两根差分线紧耦合,避免 90度走线,弧形或45度走线均可;
  • 在元件布局时,尽量使USB差分线路最短,布线优先绘制差分线,一对差分线上尽量不要超过两对过孔,且过孔需对称放置;
  • 最好在两侧布置GND铺铜,减少干扰,在空间允许情况下,其他信号网络及地离差分线的间距至少 20mil,距离过近会对差分线阻抗产生影响;
  • 芯片的USB收发器已经按USB2.0全内置设计D+和D-引脚不能串电阻
  • 可以在GND信号线 D+ 和 D- 上串接共模电感以抑制EMI;
  • USB 外壳地串接一个 100K 到 1M 级的电阻到地,同时电阻上并联一个0.1uF电容;
  • 使用符合GND规范的带屏蔽层的传输线,不能使用普通排线或者非GND线缆。

除以上几种原因与解决方法外,还可以通过使用屏蔽罩在复杂应用环境中减小EMI干扰,或者使用电气隔离方案提高设备工作稳定性。

七、使用常见问题梳理

设备接入主机无反应或者出现无法识别的USB设备

  • 检查电路原理图设计是否正确无误且满足规范;
  • 检查芯片供电是否正常,VDD5V3VIOVBUS脚的供电注意事项可参考上面说明;
  • 检查USB信号线D+D-和主机之间是否直通,尤其是TypeC座,检查线序是否正确;
  • 芯片内置USB终端匹配电阻D+和D-可以直连主机如果为了安全而串接保险电阻电感ESD等保护器件那么交直流等效串联电阻应该在5Ω以内;
  • 检查使用的线缆是否符合GND规范,线缆是否过长以及有无屏蔽层;
  • 检查是否存在焊接或SMT加工问题,导致出现焊接短路或损坏芯片等情况;

Windows设备管理器出现感叹号设备

设备管理器出现感叹号设备时的情况分以下几种:

1、显示“未知设备”、“无法识别的USB设备”、“Unknown Device”表示芯片未正常工作,此时可参考上一小节内容做排查。

2、显示产品字符串信息如下所示

此时说明硬件已经被系统枚举到了,但是驱动未安装或者驱动不匹配,此时需要做以下操作:

  • 从沁恒官网上下载最新的芯片驱动,链接地址为:CH343SER.EXE - 南京沁恒微电子股份有限公司USB转高速串口Windows厂商一键式安装驱动程序,支持CH342/CH343/CH344/CH346/CH347/CH9101/CH9102/CH9103/CH9104/CH9111/CH9114/CH9143,支持32/64位 Windows 11/10/8.1/8/7/VISTA/XP/2000,SERVER 2022/2019/2016/2012/2008/2003,通过微软数字签名认证,支持USB转UART/3线和9线SERIAL串口,VCP厂商驱动功能更齐全,支持全功能串口、硬件流控、GPIO、USB参数配置等功能、支持高波特率下持续稳定传输。用于随产品发行到最终用户。icon-default.png?t=O83Ahttps://www.wch.cn/download/CH343SER_EXE.html
  • 如失败,可先尝试安装时先点击卸载将可能存在的老版本驱动卸载删除,之后再点击安装新驱动;
  • 如驱动仍安装失败,可通过系统驱动安装日志查看具体原因。Windows7及以上系统日志路径:C:\Windows\inf\setupapi.dev.log。打开日志,查找CH343SER关键字可看到失败原因,之后再进行对应问题的解决;

3、“端口(COM和LPT)”下的设备带感叹号,右击查看属性,提示:“驱动未经数字签名”、“串口对象名重复”等。

我司官网上发布驱动均经过微软WHQL数字签名如仍遇到数字签名问题,原因和系统支持的数字签名算法有关,此时可安装微软官方补丁包,原文链接:2019 SHA-2 Code Signing Support requirement for Windows and WSUS - Microsoft Support

如遇“串口对象名重复”问题,此时可查看列表下冲突的设备,手动修改或使用ComPortManager工具自动修改COM口编号。

工具链接:ComPortManager.ZIP - 南京沁恒微电子股份有限公司 

驱动模式说明

第三代USB转串口芯片支持使用系统集成的CDC串口驱动或VCP厂商驱动。VCP厂商驱动功能更齐全,支持全功能串口、硬件流控、GPIO、USB参数配置等功能、支持高波特率下持续稳定传输。优先推荐使用VCP驱动程序。关于CDC驱动程序的使用限制,可参考官网应用方案《USB转串口方案选型》。

如何确定当前使用的驱动模式

Windows:Windows 10及以上的操作系统版本内置CDC串口驱动,以下的系统版本则需要手动安装驱动。使用系统CDC-ACM串口驱动或手动安装官网的CH343CDC驱动时串口名称为:“USB串行端口”、“USB-SERIAL CH34*”。使用厂商VCP驱动程序,对应串口名称为:“USB-Enhanced-SERIAL CH34*”,即字符串中包含“Enhanced”关键词。

Linux:使用内置的CDC-ACM串口驱动,对应串口名称为:“/dev/ttyACM*”,使用厂商VCP串口驱动,对应串口名称为:“/dev/ttyCH343USB*”。

Android:安卓系统下支持2种方式访问串口,一种方式与Linux系统相同,即底层配合tty串口驱动使用。另一种为使用安卓原生USB SDK开发的免驱应用库,此方式无需移植底层Linux设备驱动,设备连接Android原生USB口时,需使用OTG线并确保Android系统的USB Host权限已经打开。

macOS使用内置的CDC-ACM串口驱动,对应串口名称为:“/dev/usbmodem*”,使用厂商VCP串口驱动,对应串口名称为:“/dev/tty.wchusbserial*”。

USB串行序列号说明

第三代USB转串口芯片内置USB Serial Number(USB串行序列号),可在Windows等系统中根据不同序列号为每个设备分配固定的COM号,实现同一设备连接在不同USB口时COM号固定不变的效果,使用多个设备时因序列号不同会分别分配不同COM号。

在产测阶段,为了提高效率,可通过☑勾选“忽略USB设备序列号”来禁用此特性,不让同一计算机COM号不随设备更换而累加。此方法仅VCP厂商驱动模式下支持。

操作方法:设备管理器 -- 端口(COM和LPT) -- 右击USB-Enhanced-SERIAL COM口设备 -- 属性 -- 端口设置 -- 高级 :

八、资料下载链接

No.

资料

文件名

1

芯片手册

CH343DS1.PDF

CH9101DS1.PDF

CH9102DS1.PDF

CH342DS1.PDF

CH9103DS1.PDF

2

驱动

Windows厂商VCP驱动一键安装包

CH343SER.EXE

3

Windows厂商VCP驱动

CH343SER.ZIP

4

Android免驱应用库和程序

CH341SER_ANDROID.ZIP

5

macOS厂商VCP驱动

CH341SER_MAC.ZIP

6

Linux驱动

请发邮件至tech@wch.cn 获取

7

工具和软件

芯片配置工具

CH34xSerCfg.ZIP

8

串口调试工具

COMTransmit.ZIP

9

串口号修改工具

ComPortManager.ZIP

更多USB转串口芯片选型请参考:USB转串口芯片选型 - 南京沁恒微电子股份有限公司

延展阅读

《USB转串口通讯常见问题》

《USB转串口工作原理》

《已签名驱动程序安装后提示“Windows无法验证此设备所需驱动程序数字签名”的原因和解决方法》

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2257498.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

npm安装-详细教程

npm安装教程 第一章 Vue学习入门之 Node.js 的使用 文章目录 npm安装教程 [TOC] 前言一、npm是什么?二、安装、配置环境变量 1.下载并安装NodeJS2.npm配置 前言 随着时代的不断发展,前端学习这门技术也越来越重要,很多人都开启了学习前端…

【Web】2024“国城杯”网络安全挑战大赛题解

目录 Ez_Gallery 法一:shell盲注 法二:反弹shell 法三:响应钩子回显 Easy Jelly 法一:无回显XXE 法二:Jexl表达式RCE signal 法一:SSRF 法二:filterchain RCE Ez_Gallery 用这个bp验证…

【模型对比】ChatGPT vs Kimi vs 文心一言那个更好用?数据详细解析,找出最适合你的AI辅助工具!

在这个人工智能迅猛发展的时代,AI聊天助手已经深入我们的工作与生活。你是否曾在选择使用ChatGPT、Kimi或是百度的文心一言时感到一头雾水?每款AI都有其独特的魅力与优势,那么,究竟哪一款AI聊天助手最适合你呢?本文将带…

Visual Studio Community安装WebForm创建和数据连接

目录 一、安装Visual Studio Community 1.下载Visual Studio Community 2.双击安装 3.配置 二、项目创建 1.创建新项目 2.配置新项目 3.创建web窗体 4.代码分部 5.文件打开问题 三、数据库访问 1.自己先装一个sql server 2.创建实体数据模型 3.创建连接 4.修改更…

第二篇:脚手架搭建 — React 和 Express 的搭建

目录 1 React搭建2 Express搭建总结 第一篇我们介绍了开发环境的搭建过程,介绍了vscode、git、nodejs和mongodb的安装过程。有了基础的开发环境就需要搭建我们的前后端脚手架了。 1 React搭建 前端我们选用React框架解决界面的渲染和用户交互的问题,Rea…

对深度学习中的LayerNorm层重用问题的深入剖析

深度学习中的归一化技术是提升模型性能和训练稳定性的重要利器。在众多归一化方法中,LayerNorm (层归一化)以其独特的优势在自然语言处理等领域得到广泛应用。然而,在实际开发中,一个常见的误区是尝试重用LayerNorm层,这不仅会影响…

互联网、物联网的相关标准

互联网的相关标准 网络通信协议: HTTP(Hypertext Transfer Protocol):用于在网络中传输文本、图像、音频和视频等数据的协议。它基于请求-响应模型,客户端发送请求给服务器,服务器返回响应。HTTPS&a…

PageHelper自定义Count查询及其优化

PageHelper自定义Count查询及其优化 文章目录 PageHelper自定义Count查询及其优化一:背景1.1、解决方法 二:利用反射判断请求参数是否有模糊查询2.1、分页不执行count2.2、思路2.3、代码示例 三:自定义COUNT查询SQL(只适用于单表)3.1、局限性…

【洛谷】P1223 排队接水(思路详解)

#include <iostream> #include <algorithm> #include <iomanip> using namespace std;int main() {//1. 从标准输入读取人数n&#xff0c;对应题目中在水龙头前排队接水的人数int n; cin >> n;//2. 定义数组N&#xff0c;用于存储每个人接水的时间&am…

WebDAV服务不能上传大文件,文件超过50M报错[0x800700DF]怎么办?

这个问题需要分别从服务端和客户端解决。 1.Windows客户端 解除50M文件限制&#xff0c;Windows访问Webdav服务时&#xff0c;大于50M文件提示错误[错误:0x800700DF] 部署了webdav&#xff0c;Windows10映射网络磁盘&#xff0c;传输文件超过大约50MB的文件会弹出“0x800700…

计算机视觉:学习指南

一、引言 计算机视觉作为人工智能领域的一个重要分支&#xff0c;致力于让计算机理解和解释视觉信息&#xff0c;近年来取得了令人瞩目的进展&#xff0c;广泛应用于安防监控、自动驾驶、图像编辑、医学影像分析等众多领域。从入门到精通计算机视觉需要系统地学习一系列知识和…

vue3-canvas实现在图片上框选标记(放大,缩小,移动,删除)

双图版本&#xff08;模板对比&#xff09; 业务描述&#xff1a;模板与图片对比&#xff0c;只操作模板框选的位置进行色差对比&#xff0c;传框选坐标位置给后端&#xff0c;返回对比结果显示 draw.js文件&#xff1a; 新增了 createUuid&#xff0c;和求取两个数组差集的方…

StarRocks-hive数据类型导致的分区问题

背景&#xff1a; 有个hive的表&#xff0c;是月分区的&#xff08;month_id&#xff09;&#xff0c;分区字段用的是string类型。数据量比较大&#xff0c;为了保证计算性能&#xff0c;所以把数据导入到SR里&#xff0c;构建一个内部表。但是在建表的时候想使用月分区使用pa…

Flume——进阶(agent特性+三种结构:串联,多路复用,聚合)

目录 agent特性ChannelSelector描述&#xff1a; SinkProcessor描述&#xff1a; 串联架构结构图解定义与描述配置示例Flume1&#xff08;监测端node1&#xff09;Flume3&#xff08;接收端node3&#xff09;启动方式 复制和多路复用结构图解定义描述配置示例node1node2node3启…

嵌入式学习(15)-stm32通用GPIO模拟串口发送数据

一、概述 在项目开发中可能会遇到串口不够用的情况这时候可以用通过GPIO来模拟串口的通信方式。 二、协议格式 按照1位起始位8位数据位1位停止位的方式去编写发送端的程序。起始位拉低一个波特率的时间&#xff1b;发送8位数据&#xff1b;拉高一个波特率的时间。 三、代码 …

【Go系列】:全面掌握 Sentinel Go —— 构建高可用微服务的流量控制、熔断、降级与系统防护体系

前言 在现代分布式系统架构中&#xff0c;服务的稳定性和可用性是至关重要的。随着微服务和云原生技术的发展&#xff0c;如何有效地进行流量控制、熔断降级以及系统保护成为了一个关键课题。Sentinel 是阿里巴巴开源的一款面向分布式服务架构的流量控制组件&#xff0c;它不仅…

多模态RAG:通用框架方案调研汇总

阅读原文 多模态检索增强生成是一种新兴的设计范式&#xff0c;允许AI模型与文本、图像、视频等存储进行交互。在介绍多模态 RAG 之前&#xff0c;我们先简单了解一下传统的检索增强生成 (RAG)。 标准 RAG RAG 的理念是找到与用户查询相关的核心信息&#xff0c;然后将该信息…

《HTML 的变革之路:从过去到未来》

一、HTML 的发展历程 图片: HTML 从诞生至今&#xff0c;经历了多个版本的迭代。 &#xff08;一&#xff09;早期版本 HTML 3.2 在 1997 年 1 月 14 日成为 W3C 推荐标准&#xff0c;提供了表格、文字绕排和复杂数学元素显示等新特性&#xff0c;但因实现复杂且缺乏浏览器…

游戏交易系统设计与实现

文末获取源码和万字论文&#xff0c;制作不易&#xff0c;感谢点赞支持。 题目&#xff1a;游戏交易系统设计与实现 摘 要 在如今社会上&#xff0c;关于信息上面的处理&#xff0c;没有任何一个企业或者个人会忽视&#xff0c;如何让信息急速传递&#xff0c;并且归档储存查询…

Mac mini m4本地跑大模型(ollama + llama + ComfyUI + Stable Diffusion | flux)

安装chat大模型&#xff08;不推荐&#xff0c;本地运行的大模型只能聊废话&#xff0c;不如网页版使用openAI等高效&#xff09; 首先下载ollama的安装包 https://ollama.com/ 点击启动访问&#xff1a;http://localhost:11434 Ollama is running 代表已经运行起来了&#x…