学生党一枚,前段时间跟着导师做的项目因为上面用到USB转串口芯片FT232R迟迟买不到,所以打算更换成国产USB转串口芯片CH340,对CH340的认识也很早了,很多年前开始直到现在各种开发板上基本都会标配一颗CH340,像某宝上的STC 51的板子,STM32开发板。串口这种通讯接口基本是MCU必备的,所以通过USB转串口实现MCU和计算机之间的连接十分便捷好用。
言归正传,CH340芯片量产了这么多年,一直以来也没有对这个芯片和其他系列进行过多研究,最近有时间逛了下芯片原厂官网,不看不知道,仅仅USB转串口芯片就更新迭代了这么多型号。单串口和多串口芯片都有很多款可选。
因为咱也不是专门研究这类芯片的,专业的事儿交给专业的人处理,直接发邮件给官方咨询关于芯片选型的问题,主要目的是替代FT232芯片,功能参数方面可以满足我们项目需求即可。意想不到的是,上面表格中的CH9101芯片和FT232RL、FT232RQ、FT230XS、FT230XQ系列的是PinToPin引脚兼容的型号。先去官网看了下芯片手册(说实话,因为懒,很多FT芯片特性的英文资料也没有好好理解,这次有了中文资料和国内技术支持就可以好好研究一番了)。这次主要研究下一些新的特性,直接上图:
串口基本特性一目了然,有几个点:
- 串口波特率可以支持高达3Mbps
- 提供RS485收发使能控制引脚,可以直接接RS485转化芯片的收发使能。
- 提供了串口I/O独立供电功能,具体呢就是指无论芯片供电电压是多少,除了USB和电源引脚以外的串口和其他IO口的信号都由单独的VIO引脚的供电电压决定,这个在实际使用中就很方便了,串口可以方便连接1.8V~5V的串口设备,不需要单独的电平转换器件。
官方参考设计上,还特别预留了选择VIO供电电压的插针,在使用3.3V串口的时候,VIO直接连接V3引脚就可以了,不用再单独用3.3V电压转换芯片了。
除了串口功能以外,CH9101有很多标注为GPIO的引脚,意思指这些都可以作为单独的GPIO引脚来使用的。只需要配合动态库操作就行,具体使用场景嘛大家可以自行脑补。
常规的功能了解清楚后,注意到还有很多其他信号引脚,接着看手册说明和引脚描述。
关于SUSPEND引脚是和芯片的工作状态相关的,芯片挂起只是USB挂起,比如在计算机睡眠后芯片就会进入此状态。这个时候就可以用SUSPEND的输出状态引脚来控制板上其他外设关闭电源或者执行其他操作了,除了芯片自身挂起节约电流外,还可以通过这个引脚功能进一步节约电流。ACT引脚用于指示芯片USB通讯是否在正常运行,一般也可用于对端检测CH9101的工作状态。
RXS和TXS引脚,手册上写的比较少,是串口接收和发送数据的状态输出引脚。这个我实际测试了下,比传统的直接在TXD和RXD上接LED的准确直观的多。传统方式下受到串口波特率以及通讯间隔的影响,LED闪烁效果不好。
还有个WAKEUP引脚,用于USB唤醒,也就是说当计算机睡眠的时候外部的设备可以通过给WAKEUP一个低电平来唤醒计算机。想了下,这个功能在无人值守的场景下比较实用。比如车间电子看板设备,白天定时通过通过WAKEUP唤醒设备启动工作,下午下班计算机自动睡眠。这样就可以在无人值守情况下系统自动运作,最最重要的是可以极大节约计算机和显示设备的使用寿命。
研究测试完CH9101的这些功能后,也可以看出即使是传统通讯接口,也是在不断发展和与时俱进的,如果大家还发现了什么新玩法,可以一起讨论补充哈~