FC-AE-1553协议桥接MIL-STD-1553和UART的通讯处理方法技术

技术编号:31376870 阅读:17 留言:0更新日期:2021-12-15 11:14
本发明专利技术涉及一种航电测试系统中FC

【技术实现步骤摘要】
FC

AE

1553协议桥接MIL

STD

1553和UART的通讯处理方法


[0001]本专利技术属于FC

AE

1553总线、MIL

STD

1553总线和UART通讯
,具体涉及一种航电测试系统中FC

AE

1553协议桥接MIL

STD

1553和UART的通讯处理方法。

技术介绍

[0002]参考图1,在航电测试系统的桥接器中将FC

AE

1553协议与MIL

STD

1553进行相互转换,NC节点端通过光纤交换机并基于FC

AE

1553协议向桥接器中的NT设备发送数据,NT设备将收到的数据通过MIL

STD

1553总线向RT设备转发;RT设备通过MIL

STD

1553总线向桥接器中的NT设备发送数据,NT设备将收到的数据基于FC

AE

1553协议通过光纤交换机向NC节点端转发。同时,桥接器将FC

AE

1553协议与通用异步收发装置(UART)实现桥接,NC节点端通过光纤交换机向桥接器中的NT设备发送数据,NT设备将收到的数据通过串行接口向通用异步收发装置转发;通用异步收发装置通过串行接口向桥接器中的NT设备发送数据,NT设备将收到的数据通过光纤交换机向NC节点端转发。
[0003]一方面,由于“命令/响应”通讯方式与“对等收发”通讯方式(串口通讯)在通讯机制上是不兼容的,因此,为实现FC

AE

1553协议与UART之间的桥接,必须解决好命令/响应通讯方式与对等收发通讯方式的“合理共存”问题,否则就会出现NC端(主控制器)接收到错误的数据报文,导致NC端和通用异步收发装置通讯超时或失败。
[0004]另一方面,航电测试系统的NC节点端设备软件由NC端主机程序和NC端FPGA程序构成,NC端主机程序接收并解析上位机发送的报文(1553B报文和串口报文),并将这些指令以消息的方式配置给NC端FPGA程序;NC端FPGA程序通过FC

AE

1553总线将消息发送给NT设备。由于NC端主机程序尚不能在和上位机通讯前获悉接收到报文的信息量(RT地址、RT子地址以及同时和几路串口进行通讯),因此,NC端主机程序在初始化时需要向NC端FPGA程序配置N条消息,每条消息序号不重复。由于NC端FPGA程序的消息堆栈中能够容纳的消息个数有限(可能小于N条),因此,按照上述方法进行配置,一旦NC端主机程序配置的消息个数大于消息堆栈容量,NC端FPGA程序就会丢失FC

AE

1553消息,最终导致通讯失败。

技术实现思路

[0005](一)要解决的技术问题
[0006]本专利技术要解决的技术问题是:为了使航电测试系统中NC端和RT设备以及通用异步收发装置能够正常通讯,防止出现FC

AE

1553消息被覆盖或丢失的现象,并提高NC端和NT端通讯传输的实时性和可靠性,设计一种FC

AE

1553协议桥接MIL

STD

1553和UART的通讯处理方法。
[0007](二)技术方案
[0008]为了解决上述技术问题,本专利技术提供了一种航电测试系统中FC

AE

1553协议桥接MIL

STD

1553和UART的通讯处理方法,包括以下步骤:
[0009]S1:设计通讯报文长度和NC端控制命令的发送频率;
[0010]S2:基于步骤S1,NC端主机程序接收上位机指令并向NC端FPGA程序发送握手信号;
[0011]S3:基于步骤S2,NC端主机程序根据FC

AE

1553协议完成每条消息的配置;
[0012]S4:基于步骤S3,NC端主机程序通知NC端FPGA程序消息配置完成,并启动消息发送;
[0013]S5:NC端主机程序通过中断完成数据报文接收工作。
[0014]优选地,步骤S1中设置NC端每次读取NT数据缓冲区中的数据长度为固定值L,设置串口通讯协议中NC端接收数据报文的长度必须为长度L的正整数倍,设置1553B总线通讯协议中NC端接收数据报文的长度为64字节。
[0015]优选地,步骤S1中设置NC端发送“NT

>NC控制命令”的频率大于通用异步收发装置UART周期发送的频率,该命令的发送时间间隔小于通用异步收发装置接收串口数据的超时时间。
[0016]优选地,步骤S2具体为:NC端主机程序将接收到的上位机指令存储在消息队列中,所述上位机指令包括1553B报文和串口报文;NC端主机程序从消息队列中取出一条消息,对报文中的RT地址、RT子地址、数据长度、数据内容以及报文类型进行解析处理,将报文分为NC

>NT类型和NT

>NC类型两种报文;NC端主机程序通过PCIE总线向NC端FPGA程序发送握手信号,通知其准备接收新的消息。
[0017]优选地,所述NC端主机程序通过PCIE总线向NC端FPGA程序发送握手信号,并完成以下工作:通知NC端FPGA程序停止对当前消息栈的操作;收到NC端FPGA程序反馈信号后,清空当前消息栈内容;初始化NC端设备;设置消息栈中消息运行次数为1次;初始化消息栈中的所有消息序号为无效;消息栈中消息计数清零。
[0018]优选地,步骤S3具体为:NC端主机程序在接收到NC端FPGA程序反馈的“接收消息准备好”信号后,按照如下步骤完成向NC端FPGA程序的消息配置:
[0019]NC端主机程序在初始化时动态分配一块内存空间,将理论上有可能向NC端FPGA程序配置的N条消息存储在该空间内,并初始化每条消息的序号,N表示消息个数的最大值;
[0020]NC端主机程序按照FC

AE

1553协议配置每条消息的消息类型、消息发送的源ID、消息发送的目的ID、消息发送的源地址、消息发送的目的地址、消息长度、消息内容和消息间隔时间,并将这些信息存储在每条消息对应的存储空间内;
[0021]NC端主机程序从消息队列中每解析出一条消息,将接收消息计数加一,并将该条消息的真实消息序号保存在以本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种航电测试系统中FC

AE

1553协议桥接MIL

STD

1553和UART的通讯处理方法,其特征在于,包括以下步骤:S1:设计通讯报文长度和NC端控制命令的发送频率;S2:基于步骤S1,NC端主机程序接收上位机指令并向NC端FPGA程序发送握手信号;S3:基于步骤S2,NC端主机程序根据FC

AE

1553协议完成每条消息的配置;S4:基于步骤S3,NC端主机程序通知NC端FPGA程序消息配置完成,并启动消息发送;S5:NC端主机程序通过中断完成数据报文接收工作。2.如权利要求1所述的方法,其特征在于,步骤S1中设置NC端每次读取NT数据缓冲区中的数据长度为固定值L,设置串口通讯协议中NC端接收数据报文的长度必须为长度L的正整数倍,设置1553B总线通讯协议中NC端接收数据报文的长度为64字节。3.如权利要求2所述的方法,其特征在于,步骤S1中设置NC端发送“NT

>NC控制命令”的频率大于通用异步收发装置UART周期发送的频率,该命令的发送时间间隔小于通用异步收发装置接收串口数据的超时时间。4.如权利要求3所述的方法,其特征在于,步骤S2具体为:NC端主机程序将接收到的上位机指令存储在消息队列中,所述上位机指令包括1553B报文和串口报文;NC端主机程序从消息队列中取出一条消息,对报文中的RT地址、RT子地址、数据长度、数据内容以及报文类型进行解析处理,将报文分为NC

>NT类型和NT

>NC类型两种报文;NC端主机程序通过PCIE总线向NC端FPGA程序发送握手信号,通知其准备接收新的消息。5.如权利要求4所述的方法,其特征在于,所述NC端主机程序通过PCIE总线向NC端FPGA程序发送握手信号,并完成以下工作:通知NC端FPGA程序停止对当前消息栈的操作;收到NC端FPGA程序反馈信号后,清空当前消息栈内容;初始化NC端设备;设置消息栈中消息运行次数为1次;初始化消息栈中的所有消息序号为无效;消息栈中消息计数清零。6.如权利要求4所述的方法,其特征在于,步骤S3具体为:NC端主机程序在接收到NC端FPGA程序反馈的“接收消息准备好”信号后,按照如下步骤完成向NC端FPGA程序的消息配置:NC端主机程序在初始化时动态分配一块内存空间,将理论上有可能向NC端FPGA程序配置的N条消息存储在该空间内,并初始化每条消息的序号,N表示消息个数的最大值;NC端主机程序按照FC

A...

【专利技术属性】
技术研发人员:赵昶宇黄庆海刘振业
申请(专利权)人:天津津航计算技术研究所
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1