基于CH340,从零开始制作自己的USB转串口工具(附开源PCB工程)

基于CH340,从零开始制作自己的USB转串口工具(附开源PCB工程)
1.引言作为嵌入式开发领域必不可少的协议USARTUART的应用场景非常广泛通信只需3根线TX,RX,GND就可以完成近场通信。是嵌入式工程师调试的必备神器本篇博客就教大家如何制作自己的USB转串口工具。目录1.引言2. 芯片选型2.1 芯片简介2.2 芯片数据手册3.原理图及电路设计3.1 电路原理3.2 典型电路3.3 原理图设计4. PCB设计2. 芯片选型2.1 芯片简介市面上常见的USB转串口芯片有很多例如CH340FT232,CP2102等。笔者这里使用CH340是市面上最常见的转串口芯片。它具有一路UART一路USB同时部分型号也支持其他协议。2.2 芯片数据手册如何绘制芯片原理图第一步就是阅读手册先搞清楚每个引脚的功能查看官方的典型电路最后才是自己绘制原理图。这里给出原理图的链接。接下来我们来看芯片的子系列有哪些值得注意的是部分子系列内置了晶振部分没有晶振需要外置晶振。手册上也有注明。什么是晶振晶振相当于一个节拍器他决定芯片的运行频率等是整个系统的心跳。市面上的晶振基本都是由石英制作。石英具有很好的稳定性可以稳定的输出正弦波通常使用无源晶振搭配负载电容。这在单片机最小系统设计中非常重要。这里不做赘述。这里我们采用CH340C市面上常见很容易购买到且不需要外接晶振。PCB设计相对容易些。确定好芯片后我们进入电路设计。3.原理图及电路设计3.1 电路原理介绍一下这里用到的电路模块首先是电源设计电源是整个电路的血液电源需要干净不能有太大的纹波。设计中通常使用非线性元器件的特性 电容的电压不能突变电感的电流不能突变的特性进行滤波。电容同时还有退耦的作用这里芯片的V3就是退耦端。电源采用直流DC供电USB提供供电接口市面上常用的接口为USB-A和Type-C所以本次设计中两个接口都有设计。USB的供电电压为5VType-C特殊的一点在于多出的几个引脚大家可以使用6PIN的接口笔者采用的为16pin焊接难度对新手并不友好电路如下多出来的几个接口分别是CC1,2SBU12这两个是负责快充协议的识别的这里我们连接电脑采用USB-A转Type-C连接Type-C不需要识别快充ID所以这四个引脚自然不需要悬空或者连接电阻到GND都可以。通信用到的是DP和DN对应D和D-。本次采用3.3V供电电源要输出3.3V就需要把5V降压这就需要DC-DC开关电源芯片或者LDODC-DC通常用在电压差较大的地方原理是通过拓补电路降压感兴趣的读者可以查找buck降压电路。LDO则是通过分压电阻实现。相对的LDO的功耗会更高但体积也会更小。我们这里采用经典的AMS1117-3.3的LDO芯片。电路如图当然市面上有更多更好的芯片但这一款芯片完全够用也相对便宜容易购买。可以看到左右各加了一个1UF的电容它的作用就是滤波将电压稳定在一个范围内滤除电磁感应出来的杂波。电源部分在这里结束接下来是主控芯片的设计。主控芯片的引脚作用分别为这里我们用到了VCC,GND,V3,TX,RX,D,D-引脚其他引脚悬空。其中TX与RX走线相对轻松D和D-是差分走线我们的PCB较小所以可以采用类差分的走线速率不高的情况下也不需要等长走线也可以使用。这里给出外围设计的电路图最后来到引脚引出的地方这里我们放置了3个指示灯分别指示TX,RX以及5V注意限流电阻的选择不能太大也不能太小要在LED的承受范围内。输出了一排排母一排排针这样可以很方便的适配公母、母母、公公杜邦线。同时增加一个开关这样可以很方便的冷启动ISP烧录的芯片方便STC系列这些单片机的下载。电路基本就是这样。3.2 典型电路这里给出官方给出的电路设计作为参考3.3 原理图设计本次原理图的设计比较简单所以没有分很多个模块直接放出原理图给大家参考接下来进入PCB的设计4. PCB设计PCB设计中首先要确保连接器件的朝向不要把Typc-C的接口面朝板内主要元器件放在顶层采用两层板设计电源的LDO可以放在板子底层节约空间方便走线。这里放出布局供大家参考CH240C是作者的笔误应该是CH340C图中包含了走线这里要注意电源的走线要加粗避免大电流烧毁线路。同时注意D,D-走线需要走类差分从引脚出来后靠近着走这样就算有电磁干扰也不会影响电压差。这里给出走线参考结束后打上丝印标注好引脚接口就可以打样了。这里打样可以用嘉立创免费打样。最后焊接完成后就可以进行测试了。连接一个单片机发送串口在电脑的上位机上显示则制作成功5.开源工程教程比较简短这里放出笔者的开源工程大家可以参考也可以直接保存打样焊接。USB转串口——CH340C - 立创开源硬件平台