ARINIC429总线测试装置

网络协议

14人已加入

描述

  ARINIC429航空总线简介

  ARINIC429总线是上个世纪80年代商务飞机所广泛使用的一种航空总线。其信息内容综合了200多种航空参数,主要是为了解决航空设备中点对点的数据交互。

  ARINIC429总线数据编码方式可以划分为二进制位数据编码(BNR)和二到十进制8421编码(BCD),使用32位的双极性非递归“1”“0”组成,其中最高32位为奇偶校验位,每一帧的尾部加上4位静寂间隔位,码速率分为100Kbps和12.5Kbps两种。一般正常情况下接收端电平为+6V。+5V~+13V被认为是逻辑“高”;-6.5V~-13V被认为是逻辑“低”;-2.5V~+2.5V被认为是逻辑“空”,为数据无效状态。

  每一帧ARINIC429数据都由五个部分组成,分别为:标号(LABEL)、识别符(SDI)、数据域(DATA)、符号矩阵状态位(SSM)和奇偶校验位(P)。具体意义为:

  标号(LABEL): ARINIC429总线数据对每一个航空参数都规定了一成不变的标号,如真空速度标号永远是230。

  识别符(SDI):标识数据来自什么数据源,发往哪个目的设备。

  数据域(DATA):用于具体说明参数值,使用BCD或BNR编码填充。

  符号矩阵状态位(SSM):说明数据属性和发送装置的工作状态。

  奇偶校验位(P):ARINIC429数据的奇数校验。

  硬件设计说明

  如图1所示为ARINIC429总线接收测试装置原理框图,整个设备设计了两路ARINIC429总线收发通道。可以同时发送2路ARINIC429信号,中断接收4路ARINIC429信号。

  

LPC2210

 

  图1 接收测试装置原理框图

  装置核心处理器采用了ARM7T内核的LPC2210。LPC2210具有开放式外部总线结构和JTAG下载调试仿真功能,支持ADS1.2开发环境仿真下载,这些都极大地方便了用户对于实际产品的开发。芯片内部集成16K的RAM,144引脚LQPF封装。外围3.3V供电,核电压1.8V。外部还集成了I2C、PWM、UART等接口总线。

  如图2所示,LPC2210使用了11.0592MHz晶振,经过内部PLL控制寄存器,倍频成为60MHz以上的时钟主频。外部存储总线上配置了一片4Mb的SRAM(IS61VL25616编址Ox80000000- Ox8007ffff)和1片16Mb的FLASH(SST39VF160编址Ox81000000- Ox811fffff)。为了方便调试,LPC2210的CE0和CE1片选都加了跳针。如图3所示。调试时程序代码映射到片外SRAM中运行,产品定型后,将程序固化到片外的FLASH运行。系统的总线宽度BOOT[1:0]由跳线控制。

  

LPC2210

 

  图2 LPC2210处理器部分原理框图

  

LPC2210

 

  图3 外部存储器件原理图

  整个ARINIC429发送环节由HS3182和HS3282器件组成一个ARINIC429收发通道。HS3282是ARINIC429的协议芯片,HS3182是ARINIC429物理层的驱动芯片,工作时需要±15V的差动电压。LPC2210通过一片可编程逻辑器件EPM3064ATC100-6对处理器的数据线、地址线进行编址,并访问外部HS3282芯片。由于LPC2210引脚接口电压为+3.3V,而可编程逻辑器件等其它外围器件I/O引脚电压是+5V,因此每一个引脚串接了一个470W电阻,进行威廉希尔官方网站 保护。EPM3064ATC100-6具体逻辑设计如图4描述。

  

LPC2210

 

  图4 HS3282逻辑控制框图

  LPC2210片选CE3用作地址的锁存控制信号,地址通过锁存器后开始进行逻辑译码。分别使HS3282的CWSTR(命令字读写)、LD1、LD2(发送使能)等关键控制信号有效,完成对ARINIC429收发的时序使能操作。LPC2210数据总线直接连接HS3282的数据线。此外,EPM3064ATC100-6还将外部一个4MHz的时钟源分频成为两路1MHz的时钟供HS3282芯片使用。HS3282发送出TTL电平的信号驱动HS3182,将信号电压抬升至符合ARINIC429总线要求的标准。HS3182工作时需要+15V、-15V电压。

  为了便于同用户的交互测试,装置设计了LCD显示屏和操纵键盘。LPC2210的片选CE2编址控制一块240×128点阵T6963控制器的单色液晶显示屏,其接口原理如图5所示,命令字和数据字编址分别为0x82000002、0x82000000。LPC2210操纵T6963控制器进行点阵式的图形显示。

  

LPC2210

 

  图5 LCD显示器接口原理图

  软件设计

  本测试装置的软件设计主要流程图如图6所示。

  

LPC2210

 

  图6 软件流程图

  一些主要环节的代码如下:

  #include "config.h"

  #define t6963COM (*((volatile uint8 *)0x82000002))

  #define t6963DAT (*((volatile uint8 *)0x82000000))

  #define CHA_ld1 (*((volatile uint8 *)0x83000000))

  #define CHA_ld2 (*((volatile uint8 *)0x83000002))

  #define CHA_cwstr (*((volatile uint16 *)0x83000004))

  #define CHA_oe1 (*((volatile uint8 *)0x83000006))

  #define CHA_oe2 (*((volatile uint8 *)0x83000008))

  #define CHB_ld1 (*((volatile uint8 *)0x8300000A))

  #define CHB_ld2 (*((volatile uint8 *)0x8300000C))

  #define CHB_cwstr (*((volatile uint16 *)0x8300000E))

  #define CHB_oe1 (*((volatile uint8 *)0x83000010))

  #define CHB_oe2 (*((volatile uint8 *)0x83000012))

  ……

  /*通道A数据发送*/

  CHA_ld1 = 429data1;/*高字*/

  CHA_ld2 = 429data2;/*低字*/

  /*写入6963命令字节*/

  void wirteT6963com(uint8 com){

  t6963COM = com;

  结语

  整个测试装置采用直流+28V机载电源供电,配备+24V备用电源接口,内部集成DC-DC电源模块进行变压,产生+5V、±15V电压供硬件威廉希尔官方网站 使用,功耗5.2W,满足国家军事标准机载B类设备的电源特性要求。通过尖峰冲击、过压和欠压浪涌等电源特性的考核,精度满足多数外场测试的要求。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分