CH340 的替代者:CH343

南京沁恒的 CH340 是非常好用的USB 转串口芯片,在日常使用中完全可以替代FT232R。美中不足的是CH340 虽然在 Datasheet中标明可以支持2 000 000的高速波特率,但是在实际测试中这个波特率会有丢失数据的问题(该问题可以使用 LoopBack 的方式看到)。CH340C 和CH340B 同样都是内置晶振的,但是C 表现会比B 的好一点。我用逻辑分析仪确认过,问题发生在接收的时候,概率性丢失数据。理论上这种问题可以通过通讯协议来克服,但这样做会导致代码复杂性增高可靠性降低。

经过和沁恒的工程师交流,更新的 CH343(貌似是21年6月新出品的)能够支持2000000的波特率,于是尝试之。新型号基本特性和CH340 一样:


●全速 USB 设备接口,兼容 USB V2.0。
●内置固件,仿真标准串口,用于升级原串口外围设备,或者通过 USB 增加额外串口。
● 计算机端 Windows 操作系统下的串口应用程序完全兼容,无需修改。
● 支持免安装的操作系统内置 CDC 类驱动程序或者多功能高速率的 VCP 厂商驱动程序。
● 硬件全双工串口,内置独立的收发缓冲区,支持通讯波特率 50bps~6Mbps。
● 可选自动识别和动态自适应在 115200bps 及以下的常用通讯波特率。
● 串口支持 5、6、7 或者 8 个数据位,支持奇校验、偶校验、空白、标志以及无校验。
● 支持常用的 MODEM 联络信号 RTS、DTR、DCD、RI、DSR、CTS。
● 支持 CTS 和 RTS 硬件自动流控。
● 支持半双工,提供正在发送状态 TNOW 支持 RS485 切换。
● 通过外加电平转换器件,支持 RS232 接口。
● USB 端支持 5V 电源电压和 3.3V 电源电压。
● 串口 I/O 独立供电,支持 5V、3.3V、2.5V、1.8V 电源电压。
● 内置上电复位,内置时钟,无需外部晶振。
● CH343P 内置 EEPROM,可配置芯片 VID、PID、最大电流值、厂商和产品信息字符串等参数。
● 芯片内置 Unique ID(USB Serial Number)。
● 提供 SOP16 和 ESSOP10 及 QFN16 无铅封装,兼容 RoHS。

CH343 这个型号有三种封装,基本功能相同。其中的 CH343P 还提供了修改定制VID,PID 以及其他信息的功能(对标 CH340B)。

CH343 三种型号

这次尝试自己制作了一个  CH343P 的开发板,PCB 如下:

设计的 PCB 验证板

焊接之后发现无法工作,经过了3天的调试最终成功。总结如下:

  1. 务必准备热风枪,电烙铁焊接可靠性不强;
  2. 要想使这款芯片工作,只需要下面4个电设置正确即可
芯片的4个电

首先 VBUS, 需要接到USB接口上面的 VCC(5V);其次,VDD 是芯片供电输入位置,需要输入5V;接下来V3 是芯片内部将5V转为3.3V输出的Pin;最后 VIO 是用来决定UART 信号电平的输入Pin,如果这里是 3.3V 那么 TXD RXD 将会是3.3V,如果是5V 那么TXD RXD 将会是5V 电平。在DetaSheet中有如下描述:

特别注意:如果VIO给的是 3.3V ,而其他 VUART 送入了 5V,那么你的芯片就会损坏(我因为这个原因损坏了2个芯片)。

TXD RXD 工作电平为3.3V 最稳妥的电路如下:

  1. VBUS 和 VDD5 都使用 USB接口上的5V 供电
  2. V3 和 VIO 在一起,这样TXD RXD都是3.3V
电路

当然更稳妥的是跟着参考电路设计(官网可以下载)

官方电路

焊接时建议先焊接 USB 接口,然后焊接上这个芯片,焊接完成后即可插入PC 进行实验,在没有外围电容的情况下,这个芯片是能够正常工作的,确认之后再进行其他外围元件的焊接。

最终调试成功的开发板(上面有一粒大米用于比较尺寸)

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注