基于CH341A的USB串口通讯设计
2.2 MCU与PC之间USB通讯适配
该适配电路适用于计算机无RS232接口,却需进行RS232通讯的数据采集系统,MCU进行底层相关数据的采集与存储,然后在上位机的控制下通过适配电路进行数据的传递。MCU与PC机通过USB接口进行通讯的适配器原理电路如图5所示,在本设计中MCU采用microchip公司的PIC1 6F877A,利用MCU的串口模块,可以与CH341A直接构成3线串口通讯方式,经过CH341A转换后,通过USB接口与PC机相连。当PC串口通讯波特率较高或者单片机来不及接收,利用MCU的RD0引脚控制CH341A的TEN#引脚,当MCU空闲且可以接收串口数据时置TEN#为低电平,当单片机较忙或者不便于接收串口数据时置TEN#为高电平。使CH341A暂停发送下一个字节,实现速率控制。本文引用地址:https://www.eepw.com.cn/article/172896.htm
单片机软件流程如图6所示,系统初始化完成I/O口、看门狗等设置;串口初始化进行波特率、检验位、通讯方式等设置。
上位机软件向单片机发送一个指令,当单片机检测到该指令后判断是否有键按下,如果有,则进行相应键值的判断,根据键值的不同向上位机发送不同的数据。在对本电路测试中,上位机指令代码为“CCh”,单片机发送的数据与键值相对应,如按下1号键,发送数据“01h”,测试结果如图7所示。
上述两种产品结构紧凑,体积小巧,通讯可靠,可以满足绝大多数应用场合的需求,但在通讯速率的设置上,应尽量采用CH341推荐的波特率,否则可能出现通讯异常的情况。
实际上,CH341推荐的波特率基本涵盖了各类通讯软件及产品所采用的波特率,也与51系列MCU采用11.059 2 MHz晶振时设置的波特率相兼容,因此,推荐波特率也可以满足各种场合的需求。
3 结束语
CH341A作为一种新型的、功能强大的USB接口转换芯片,可以工作在多种模式,且接线简单、控制方便、使用灵活,可满足用户的多种需求。由于CH341A屏蔽了USB接口的底层协议,可以方便地在嵌入式系统中增加USB接口,无需电平转换器件,在驱动程序的控制下直接与PC机通讯,极大地方便了用户,缩短开发周期、减少研发费用。
数字通信相关文章:数字通信原理
通信相关文章:通信原理
评论