USB接口转换器的设计研究
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
USB接口转换器的设计研究
作者:郭锐添
来源:《科学与财富》2018年第17期
摘要:随着计算机产业的不断发展,高速、高性能的USB接口模式已逐步成为其主流外围接口。本研究设计了一种多功能的USB接口转换器,并就其总体设计、硬件设计以及软件设计进行了详细的介绍,实践表明,该转换器能够集成多种转换器的功能,具有广阔的应用前景。
关键词:USB;转换器;总体设计;硬件设计;软件设计
前言
USB总线具有即插即用,支持多种传输速率,总线供电,应用灵活及易于扩展的特点,从诞生至今已经十多年了。这十多年间,USB在不断完善,并走向成熟,得到了诸多厂商的认可。同时,随着USB应用领域的扩大,如何使USB的连接更加高效、便利,满足工业应用现场对多种接口间互相通信的需求,成为新的研究课题。下面,提出一种USB接口转换器的设计以及实现方式。
1.总体设计
在使用功能上,通过软硬件结合的方式,自动选择不同的接口转换类型,通信的波特率、数据位、校验方式可灵活配置。考虑到多功能USB接口转换器使用环境,外壳采用绝缘和防水防潮性能优良的ABS材质,体积尽量小巧,外形美观。每个外露的接口都要具备必要的防护,减少人体静电或外部导电体对设备的损坏。
2.硬件设计
多功能USB接口转换器的硬件电路包括电源、CPU、接口、配置四个组成部分。
2.1电源部分
多功能USB接口转换器使用时,插在便携式设备的主USB接口上。根据USB接口的相关规范,该主USB接口能够对外提供+5V/500mA的电源,可以作为多功能USB接口转换器的工作电源。+5V电源进入多功能USB接口转换器后,在接口处串联保险管,避免内部故障损坏便携式设备。多功能USB接口转换器中的芯片工作电源为+3.3V,在本设计中,采用LDO 器件SPX3819M5-3.3来实现+5V到+3.3V的转换。SPX3819M5-3.3是一种高性能的工业级低压差输出稳压芯片,为降低生产制造时对焊接工艺的要求,本设计选择5脚的SOT-23封装,该封装人工焊接和流水线自动贴装均可。输入电容和输出电容一般采用陶瓷贴片电容,容量为10μF和0.1μF,二者成对使用可以达到滤除纹波和高频毛刺的效果。
2.2CPU部分
多功能USB接口转换器的核心处理单元是一个最小的系统,包括核心CPU、电源引脚退耦电容、晶振、复位电路等。
1.核心CPU。核心CPU选用意法半导体公司的STM32F103RCT6,该芯片工作电压
+3.3V,具有5个UART口,满足转换器的多通信口需求,芯片封装为LQFP64,工作频率可达到64M,内部RAM容量为46K,内部FLASH容量为256K,有多个16位的定时器、SPI接口、I2C接口、I2S接口、CAN总线、AD/DA功能、PWM输出等。
2.3晶振电路
晶振电路是CPU正常工作必不可少的部分,为整个系统提供时序基准。虽然CPU的内部集成有RC晶振回路,但是精度不高,可满足对时序要求不是很苛刻的应用。本系统中,通信过程对时序的要求较高,因此使用外部晶振。CPU上电后,将外部晶振产生的震荡信号,通过内部的倍频锁相环电路,倍频到合适的高频,作为各种外设和看门狗模块的时钟源。
2.4复位电路
STM32F103RCT6芯片是低电平复位,由电阻和电容组成上电复位电路。设备上电后,
+3.3V通过电阻给电容充电,在上电瞬间,由于电容上电压不能突变,因此连接到电容的复位引脚为低电平,并持续到CPU的内核复位完成后,电容充满电,电容两端电压上升到系统电压+3.3V,系统进入正常工作状态。
2.5接口部分
转换器的对外通信接口有5个:主USB接口、RS232电平接口、RS485电平接口、无线接口、TTL电平接口。这些接口逻辑上分别对应CPU的UART1--UART5,通过内部程序进行软件映射,建立对应关系。
2.6主USB接口
主USB接口部分使用FT232RL芯片实现,该芯片内集成有EEPROM和主时钟发生器、3.3VZLDO调节器、复位发生器和USB终端电阻。芯片内部的两个双口FIFO缓冲区,用于USB数据和RS232数据的交换缓冲区,分别为128字节和256字节大小。本应用中使用RXD 和TXD两线制串口,与CPU的UART1口连接,USBDM和USBDP引脚连接到标准的USB 从机插座上,第17脚输出的电压作为I/O口电源,与第4脚的VCCIO相连。
2.7 RS232电平接口
RS232接口电平的转换使用MAX3232芯片来实现,该芯片提供2路的TTL-232转换电路,本设计选用其中的一路来实现功能需求。外围电路使用5个0.1μF的瓷片电容来完成倍压及电源退耦。在RS232线上串接电阻R4,R5对接口限流保护,连接器采用标准的DB9母头,2脚接收,3脚发送,5脚接地。
2.7 RS485电平接口
RS485接口具有优异的抗干扰性能,广泛在工业设备现场应用,在此选用比较主流的MAX3485芯片。接收和发送控制端由CPU的一个I/O口控制,并接下拉电阻,常态时出于接收状态,发送时由程序对该引脚拉高。在A,B两线上并接保护器件TVS1、TVS2,同时串接热敏电阻RT1、RT2,磁珠RCZ1、RCZ2,防止通讯线上的浪涌、静电和群脉冲信号对芯片造成损坏。
2.8无线(WL)接口
无线接口(WL)部分为一个TTL-WL的无线模块,与CPU通过UART口连接,空中的波特率和编码解码等由模块自身实现,无线模块提供电源(VCC)、地(GND)、发送(TXD)、接收(RXD)和复位(RST)5个引脚。使用无线接口进行数据通信,可以避免接线,在布线难度较大的环境中使用,有非常显著的优势。
2.9TTL接口
接口转换器的TTL电平接口是一个两芯的接线端子,CPU的UART口从引脚输出后,通过串联电阻直接与接线端子连接,这个接口用于对方设备是TTL电平接口的场合。
2.10转换类型配置部分
本部分电路采用拨码开关实现,拨码开关的一端接下拉电阻后,与CPU的I/O口连接,另外一端接+3.3V。通过拨动拨码开关,使得I/O口对应不同的高低电平,CPU程序判断这些不同的电平组合,在相应的接口之间切换,包括输出不同的数据格式:波特率、数据位、停止位、校验方式等。
3.软件设计
软件架构采用模块化,每一个功能模块相对独立,结构清晰,方便查错和以后的功能扩展。本设计的功能模块有:芯片初始化模块,用于对芯片进行基本配置,完成芯片初始化;USB接口芯片驱动模块,用于识别出USB接口,将通信虚拟为串口;配置类型识别模块,用于采样拨码开关的电平状态,形成参数类型组;UART接口驱动模块,用来配置UART接口参数,完成数据转发。软件开发环境选择Keil,该环境提供强大的开发支持,能够加速代码的编写过程。