RS422-USB接口转接装置的设计与实现
张耀峰1,2,张会新1,2*,李大全3
【摘 要】设计的装置实现RS422接口和USB接口的转接,采用FPGA作为连接RS422接口与USB接口的控制单元,对数据进行串并转换和两种接口数据传输速率匹配;转接装置采用USB单片机CY7C68013作为数据按照USB协议转换的单元,实现FPGA通过CY7C68013与PC机的双向通信。下面阐述转接装置的原理,并附有数据测试结果。 【期刊名称】电子器件 【年(卷),期】2016(039)006 【总页数】4
【关键词】RS422;USB;FPGA;CY7C68013;转接
随着电脑外设和数码产品的不断发展、不同通信总线的提出,信息通讯领域有了迅猛发展,各种通讯总线由于自身特点的不同,均有着广泛的应用领域及前景;其中USB接口具有双向传输、传输速度快、支持热拔插等特点使之在计算机接口及终端电子产品中占据主导地位,有逐渐取代其他标准接口的趋势[1];RS422接口采用差分方式传输数据,在通讯距离、抗共模干扰能力等方面性能都比较好,传输距离可达1 200 m[2],使得工业及民用大量设备装置采用RS422接口传输数据。RS422接口的不足之处在于传输速度慢,这给很多传统的以RS422为通信接口的外围设备面临着巨大的考验,而USB接口却能弥补这一缺点[3];设计的转接装置目的在于解决RS422接口与USB接口互联的问题,使带有这两种接口的设备可以正常通信。
1 总体方案设计
转接装置采用模块化设计的思路,各个模块既相互独立又相互配合[4],主要由电源转化模块、RS422接口模块、FPGA控制模块、USB单片机数据处理模块组成。FPGA控制单元还需要配置PROM和晶振来发挥其主控作用。RS422接口芯片选用DS26C32,FPGA选用Xilinx公司生产的Spartan-3AN系列的可编程芯片XC3S1400AN,USB单片机选用CY7C68013。为了匹配USB接口与RS422接口的数据传输速率,在FPGA内部构建两个RAM缓存。PC机通过串口调试助手分析数据传输的正确性。总体结构如图1所示。
2 模块化设计
2.1 电源模块
电压转换模块外接28 V电压,首先经过EMI滤波模块,输出的电压在DC/DC转换模块的作用下产生5 V电压,再经过TPS70345产生3.3 V、1.2 V电压。FPGA供电电压为3.3 V和1.2 V,USB单片机CY7C68013供电电压为3.3 V,RS422接口芯片DS26C32供电电压为5 V。电压转化模块如图2、图3所示。 EMI滤波模块对系统输入的28 V电压进行滤波处理,这不但能够抑制系统自身产生的EMI噪声,同时可以为FPGA以及其他芯片提供无衰减的直流输入电压,滤除由电网加进来的各种干扰信号,使设备不受EMI噪声干扰[5]。 2.2 RS422接口模块
数据传输选用PCM数据。RS422接口芯片选用DS26C31J、DS26C32J。PCM数据经过DS26C32J接收,将接收到的从上游DS26C31J发送的差分信号MTB+/-、PCM+/-还原成原来的MTB(码同步)、PCM信号平[6],输出至FPGA写入缓存;PCM数据经DS26C31J发送,将MTB、PCM信号转换成差分信号MTB+/-、PCM+/-传输给外围设备。接收接口电路如图4所示,
发送接口电路如图5所示。 2.3 USB单片机数据处理模块
USB接口作为与PC机通信的接口,当FPGA给USB接口发送数据或PC机通过USB接口给FP?GA发送数据时,USB单片机CY7C68013通过运行固件代码将接收到的数据按照USB2.0的协议转化。CY7C68013的固件代码通过外部配置的E2PROM芯片24C64来运行[7],固件代码存储在24C64中,单片机上电时固件代码自动从24C64下载到CY7C68013中并执行固件程序。CY7C68013的数据可通过它的DPLUS和DIMINUS管脚与PC机的USB接口的D+、D-连接,实现指令和批量数据的传输;PC机经过USB接口给CY7C68013发送的指令可通过PE0-PE7管脚发送至FPGA进行处理,CY7C68013的数据可通过管脚GPIF0-GPIF7与FPGA传输;CTL0与CTL2、RDY0与RDY2管脚分别作为数据发送和数据接收的控制管脚[8]。电路如图6所示。
2.4 FPGA控制模块
当PCM数据的传输方向为RS422接收接口到USB接口时,FPGA将从RS422接收接口接收到的PCM数据串行转并行存入到缓存1中,然后输出给USB单片机CY7C68013进行数据处理,处理后可通过USB接口传送给PC机;当PCM数据的传输方向为USB接口到RS422发送接口时,FPGA将从USB单片机CY7C68013输出的并行数据存入到缓存2中,然后并行数据转串行数据输出至RS422发送接口;缓存1、缓存2起到两种接口之间数据传输速率匹配的作用。PCM数据帧格式如表1所示[9]。
3 数据测试结果
RS422-USB接口转接装置的设计与实现



