您的位置 首页 开关

根据USB的ARINC429航空总线接口模块规划

引言ARINC429总线由美国航天无线电设备公司所资助,是广泛应用于当前航空电子设备中的一种数据总线传输标准。与传统的航空电子设备间的模拟传输相比,ARINC429总线具有抗干扰能力强、传

  导言

  ARINC429总线由美国航天无线电设备公司所赞助,是广泛应用于当时航空电子设备中的一种数据总线传输规范。

  与传统的航空电子设备间的模仿传输比较,ARINC429总线具有抗干扰能力强、传输精度高、传输线路少以及本钱低一级长处。ARINC数据总线协议规则一个数据由32位组成,选用双极性归零码,以12.5Kb/s或100Kb/s码速率传输。本规划使用USB即插即用、FPGA可灵敏装备等特色,规划了依据USB总线的ARINC429总线接口模块。

  接口模块总体规划结构

  接口模块总体规划包含硬件规划和软件规划两部分。硬件规划由USB接口芯片,FPGA和调制/解调电路三部分组成。硬件规划全体框图如图1所示。USB接口芯片选用CYPRESS公司的USB2.0接口芯片CY68013,首要完结PC机和FPGA之间的数据传输,起到接口模块的桥梁效果。FPGA选用ALTERA公司的CyclONeⅡ系列EP2C5Q208,首要担任将32位429数据字依照ARINC429数据总线协议串行输出,当检测到ARINC429总线上的数据时,将数据组装成32位429数据字发送给PC机。调制/解调电路首要担任将FPGA输出的LVTTL电平调制为满意ARINC429总线电气特性的电平(即高电平为+10V,低电平为-10V,0V为本身时钟脉冲),并将输入的ARINC429电平解调为FPGA可接纳的LVTTL电平。

  软件规划首要包含USB-ARINC仪器驱动程序,USB设备驱动程序以及底层USB固件程序的规划。软件规划全体框图如图2所示。USB-ARINC仪器驱动程序首要将应用程序与驱动程序之间的通讯协议以及接口模块的硬件操控进行再次封装,并为应用程序供给接口,即API函数。USB设备驱动程序首要担任PC机与接口模块之间的数据传输。USB固件程序首要担任发送接口模块的操控指令,32位429总线数据字以及接纳到32位429数据字后的中止处理。

  接口模块硬件规划

  接口模块硬件部分由USB接口芯片,FPGA和调制/解调电路三部分组成。下面以一路429设备为例来介绍接口模块的发送和接纳部分的硬件规划。

  发送部分硬件规划

  发送部分硬件规划框图如图3所示。发送部分首要担任将ARINC429数据字依照设置的发送形式传输给ARINC429总线。

  USB接口芯片CY68013担任接纳PC机传来的32位429数据字,并传输给PC机所指定的429总线设备。由于要传输给多路429总线设备,所以PC机还有必要给每一个429数据字加上一个设备通道号。图3中接口芯片内的Buffer用来存储要发送的429数据字。当8051处理器检测到Buffer中有数据后,先将设备通道号写给FPGA中发送操控模块,然后再将429数据字写到FPGA的RAM中。

  由于在测验ARINC429电子设备中,经常要求多路ARINC429总线一起传输数据。为了完成接口模块多路ARINC429总线一起作业,本规划选用了一个大局start/stop信号。当PC机传下start信号后,FPGA中各路的发送操控模块开端将RAM中数据取出并传输给移位寄存器。移位寄存器再将并行输入的32位429数据字串行输出给外围的发送调制电路。FPGA中时钟操控模块用来操控发送ARINC429数据字的速率。

  由于FPGA输出信号是LVTTL电平,并不满意ARINC429数据总线的电气特性,所以有必要加上发送调制电路对FPGA输出的LVTTL A和LVTTL B两路信号进行调制,以满意ARINC429数据总线的电气特性。

  接纳部分硬件规划

  接纳部分硬件规划框图如图4所示。接纳部分首要效果是检测ARINC429总线上是否有数据,并当有数据时将并行的32位429数据字组装成并行的4个字节数据发送给PC机。

  首要,PC机设置接纳部分的传输速率,即设置FPGA中时钟操控模块输出的读操控时钟信号r_clk,它以16倍于传输速率进行采样。当LVTTL A和LVTTL B任一路为高电平,即为有用数据的开端。在FPGA中,同步字头接纳模块担任这部分作业。当有用数据开端后,接纳32个串行输入数据,并将数据发送给接纳数据检测模块,一起data_en信号有用。接纳数据检测模块检测到data_en信号,锁存32位429数据字。在对数据进行奇校验无误后,向USB接口芯片发送一个中止信号。

  当USB接口芯片呼应中止信号后,先判别是哪一路ARINC429总线数据,并将此路总线的通道号写入芯片的Buffer中。USB接口芯片再发送读信号读取FPGA中寄存器的429数据字,共4个字节。本规划选用双缓冲Buffer方法来存储接纳到的429数据字。这种规划方法能有用进步接口模块传输数据的安稳性和准确性。

  接纳解调电路首要担任将ARINC429总线输入的电平解调为FPGA可接纳的LVTTL电平。

  接口模块软件规划

  接口模块软件由USB-ARINC429仪器驱动程序、USB驱动程序和USB固件程序等三部分组成。USB-ARINC429仪器驱动程序首要将应用程序与驱动程序之间的通讯协议以及应用程序与硬件之间的数据传输指令进行封装。仪器驱动程序在Visual C++6.0下开发,能够供给给应用程序显式或隐式调用。在本文中不具体介绍仪器驱动程序的开发进程。下面将介绍USB固件程序及驱动程序的规划。

  USB固件程序规划

  USB接口芯片是底层硬件的根底,是接口模块与PC机通讯的硬件桥梁,杰出的USB固件程序规划是接口模块能够安稳牢靠作业的确保。USB固件程序规划结构如图5所示。

  USB固件程序规划由主程序(Main.c),写数据程序(Function.c),读数据中止服务子程序(Isq)以及操控传输(Vendor)等四部分组成。

  主程序Main.c首要担任USB接口芯片的初始化作业。首要有端口的初始化、中止的初始化、USB设备的罗列和重罗列等作业。Main.c的规划结构如图6所示。

  写数据程序Function.c选用了USB接口芯片CY68013数据总线操作方法,将图3 Buffer中的ARINC429数据字写到FPGA的RAM中。

  读数据中止服务子程序(Isq)首要担任接口模块读取ARINC429总线数据,并依据USB接口芯片的中止引脚来符号429数据字的通道号。

  操控传输(Vendor)首要是灵敏地操控接口模块的发送形式。接口模块共有单次发送、屡次发送以及循环发送等三种发送形式。三种发送形式能够满意多种ARINC429数据发送需求。其间,屡次发送形式和循环发送形式能够设定ARINC429数据字与数据字之间的字距离,并能够设定一组ARINC429数据字的循环周期。这种规划方法表现了接口模块的灵敏便利特性。

  USB设备驱动程序规划

  USB设备驱动程序是使用Compuware公司的DriverStudio 3.2开发的。DriverStudio 3.2首要用来开发Windows 2000和Windows XP的驱动程序。使用这个东西的开发导游,能够生成一个USB驱动程序结构。USB驱动程序规划简化结构如图7所示。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/dianyuan/kaiguan/160243.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部