摘 要:介绍了一种USB总线接口芯片FT245AM及其在航空ARINC429总线测试仪中的应用方法,同时介绍了FT245AM的内部结构、管脚说明以及与微处理器的接口电路,给出了航空ARINC429总线测试仪的总体框图、部分原理和接口逻辑的Verilog HDL源代码及仿真时序。 关键词:USB总线;ARINC429总线;FT245AM;CPLD;MCU 随着计算机的广泛应用,与计算机通信的方式也越来越多,对通信速度和易用性要求也越来越高,这使得USB通信方式显得越来越突出,应用领域也越来越广泛。因此,在鼠标、键盘、游戏杆、数据采集卡、数码相机、掌上电脑中都有USB的应用。 FT245AM是美国FTDI公司生产的一种USB专用芯片。它具有功能强、体积小、传输速度快、符合USB1.1技术规范、易于与微处理器接口等特点,因而倍受用户的青睐。笔者采用FT245AM成功地开发了航空ARINC429总线测试仪。 FT245AM集成了USB1.1通信协议和外设接口,可以方便地实现USB主机与外设MCU、CPLD的接口,其数据传输速率可达1MB/s。FT245AM内部128字节的接收FIFO和384字节的发送FIFO大大提高了USB主机与外设的通信质量。另外,FT245AM还具备3.3V的LDO调整器、8倍频器、USB数据时钟恢复PLL、USB数据收发器,且EEP-ROM接口逻辑单元可外接串行存储器93C46,以实现USBVID、PID、序列号和设备说明字符串的存储。使用FT245AM可大大简化其外围电路,使用户设备更趋于小型化。 1 FT245AM简介 1 .1 FT245AM内部结构和引脚功能 FT245AM芯片的内部结构如图1所示。该芯片采用QFP32封装,其各管脚说明如下: USBDP(7脚): USB差分数据正端; EEDATA(2脚):串行存储器数据; USBDM(8脚):USB差分数据负端; TEST(5脚):厂商测试管脚; 3V3OUT(6脚):3.3V电源输出; D[7:0](25~18脚):外设接口数据总线;
XTIN(27脚):晶体振荡器输入; (16脚):外设读数据信号输入; XTOUT(28脚):晶体振荡器输出; WR(15脚):外设写数据信号输入; RCCLK(31脚):RC定时器; (14脚):发送FIFO空标志输出; (4脚):芯片复位输入; (12脚):接收FIFO非空标志输出; EECS(32脚):串行存储器片选; (11脚):串行存储器读取请求; EESK(1脚):串行存储器时钟; (10脚):串行存储器读取允许; VCC,AVCC(3、13、26、30脚):分别为芯片电源和电路模拟电源; GND,AGND(9、19、29脚):芯片地和模拟地。 1.2 FT245AM与外设的数据传输方法 FT245AM具有外设接口控制单元,可以方便地与MCU、CPLD接口来实现数据交换。 当外设从FT245AM中读取USB主机数据时,如果FT245AM的管脚为高电平,则表明FT245AM没有接收到USB主机发送的数据,此时外围MCU(CPLD)不能读取数据。而当MCU(CPLD)检测到为低电平时,表明FT245AM的接收FIFO中已有USB主机发送的数据,此时外围MCU(CPLD)便可以通过外设数据总线读取数据。外设通过FT245AM读取USB主机数据的时序图如图2所示。 当外设通过FT245AM写数据到USB主机时,如果FT245AM的管脚为高电平,则表明FT245AM内部正忙,外围MCU(CPLD)不能向FT245AM的发送 FIFO中写数据。而当外围MCU(CPLD)检测到TXE为低电平时,则表明FT245AM的发送FIFO空闲,外围MCU(CPLD)可以向FT245AM中写数据到USB主机。图3所示是外设通过FT245AM向USB主机发送数据的时序图。
2在ARINC429总线测试仪中应用 ARINC429总线在航空领域有着广泛的使用,该总线采用差分数据传输方式,支持12.5kbps和100kbps两种传输速率。由于ARINC429总线设备的应用领域比较特殊,因此需要较高的可靠性,同时其测试设备也显得尤为重要。为了方便该总线设备的测试,摆脱专用测试设备的不灵活性,急需一种方便快捷的通信方式来实现计算机与该总线设备的互连,使该总线设备的测试可以在计算机中自动完成,从而提高测试设备的灵活性和通用性。因此,提出了基于USB总线的ARINC429总线测试仪。
2.1基于USB的ARINC429总线测试仪结构 考虑到USB总线为自供电方式,{zd0}可驱动500mA电流,故ARINC429测试仪选取4路接收、2路发送的结构。当然,如果允许外接电源,还可以实现更多的收发路数,但这样会降低USB总线的方便性。由于ARINC429总线的传输速率{zd0}为100kbps,而USB1.1的通信能力可达12Mbps。因此,考虑到协议的额外开销,一路USB总线同时可完成2路AR-INC429总线的发送和4路接收。 为了提高ARINC429总线测试仪的实时性,可选用高速MCU控制USB接口芯片FT245AM,但MCU没有足够的I/O数,无法满足与ARINC429控制芯片连接的I/O管脚,因此,可选用CPLD-EPM7128S来完成FT245AM的控制和数据传输。 基于USB的ARINC429总线测试仪结构如图4所示。图5所示是FT245AM部分的外围电路。 在该测试仪电路中,EPM7128S用于完成AR-INC429总线控制芯片DEI1016与USB控制FT245AM的逻辑变换,以使USB主机可以发送数据到ARINC429总线设备,并实时接备返回的数据,以供主机中的测试软件进行检测,从而满足设备故障的诊断和定位之需.
2.2 EPM7128S与FT245AM的接口实现 EPM7128S与FT245AM的接口电路主要从FT245AM的接收FIFO中读数据和向FT2的发送FIFO中写数据。采用纯硬件实现方使FT245AM的接口延时和整个测试仪通信的延时达到最小。 EPM7128S可与FT245AM共享工作时钟,它使用12条I/O与FT245AM相连,分别对应于FT245AM的D0~D7、等。 对EPM7128S的编程可采用VerilogHDL语言,并采用Synplify综合,{zh1}使用MAXPlusⅡ进行布线和仿真。与FT245AM的接口设计代码如下:
3结束语 本文介绍了USB接口芯片FT245AM的原理和在航空ARINC429总线测试仪中的具体应用实例方法。笔者将EPM7128与FT245AM的接口逻辑在MAXplusⅡ环境下进行了仿真,结果表明:使用该设计xx可满足实际要求,因此,使用USB通信接口的航空AR-INC429总线测试仪,大大便利了429总线设备与计算机的通信,有效提高了429总线设备的检测效率。 参考文献 [1]徐志军,徐光辉.CPLD/FPGA的开发与应用[M]. 北京:电子工业出版社,2002. [2]Universal Serial Bus Specification.Compaq Intel Microsoft NEC,1998. [3]FT245AM Data Sheet.FDTI,1999. [4]MAX7000 Programmable Logic Device Family Data Sheet.Altera,2001.