航空总线协议--MIL-STD-1553B

前言

        最近在开发调试一款有关1553B协议的项目,这里对1553B数据帧格式进行一个详细的介绍。对于1553B一些应用场景、发展以及和其他协议的对比可以参考下面这位博主的文章,这里只对1553的数据帧进行介绍。

        MIL-STD-1553B(1553B)详解_1553b总线-优快云博客

        对于文章中有错误的内容,请大家踊跃指正错误,一起进步(评论区留言)

一、消息帧基本结构

  • 1553B协议中,一次完整消息传输称为消息帧(Message Frame),由以下部分组:
    • 命令字(必选):1个(BC→RT或RT→BC)或2个(RT→RT传输)
    • 数据字(可选):0-32个(由命令字中的字计数域指定)
    • 状态字(条件必选):0-2个(非广播消息至少1个)

二、核心字格式

  1. 命令字(Command Word)

    • 同步头:3位(前1.5位高电平+后1.5位低电平)非曼彻斯特Ⅱ型编码,与16位数据域做区分,命令字与状态字同步头格式一样,数据字同步头是相反的,注意

    • 数据域

      位域位数说明
      远置终端地址5目标RT地址(0-30),31表示广播
      收发位11=RT发送数据,0=RT接收数据
      子地址51-30为数据区,0/31表示方式命令
      字计数/方式码5数据字数(1-32,0=32)或方式命令编码
    • 奇校验位:1位

  2. 数据字(Data Word)

    • 同步头:3位(前1.5位低电平+后1.5位高电平)
    • 数据域:16位用户数据(无控制信息)
    • 奇校验位:1位
  3. 状态字(Status Word)

    • 同步头:同命令字

    • 数据域

      关键位域作用
      消息错误位1=命令非法(如子地址/字计数不匹配)
      服务请求位1=RT需异步服务(需矢量字方式命令配合)
      终端特征位1=硬件故障
    • 奇校验位:1位

三、典型消息帧示例

  1. BC→RT传输(接收消息)这里的接收与发送只针对RT来说,对应命令字数据域收发位,
    T/R=1:RT发送数据,T/R=0:RT接收消息

    • 实例:BC向RT5的子地址3发送2个数据字
      • 命令字:RT地址=00101收发位=0子地址=00011字计数=00010
      • 数据字:32位用户数据(分2个16位字传输)
      • 状态字:RT5返回操作状态(如消息错误位=0表示成功)
  2. [命令字] → [数据字1] → ... → [数据字N] → [状态字]
    
  3. RT→BC传输(发送消息)

    [命令字] → [状态字] → [数据字1] → ... → [数据字N]
    
    • 特点:状态字在数据字之前返回(用于BC确认RT就绪)
  4. RT→RT传输

    [接收命令字] → [发送命令字] → [状态字(发送RT)] → [数据字] → [状态字(接收RT)]
    
    • 冗余控制:双命令字确保收发同步,字计数必须一致
  5. 广播消息

    • BC→RTs广播

      [命令字(RT地址=31)] → [数据字]  (无接收状态字返回)
      
    • RT→RTs广播

      [接收命令字(RT地址=31)] → [发送命令字] → [状态字(发送RT)] → [数据字]
      

四、特殊帧—方式命令消息

  1. 无数据字方式命令(如复位RT):

    [命令字] → [状态字]
    
  2. 带数据字发送方式命令(如发送矢量字):

    [命令字] → [状态字] → [数据字]
    
  3. 带数据字接收方式命令
    [命令字] → [数据字] → [状态字]
  4. 无数据字广播方式命令(广播无接收状态字)
    [命令字] 
  5. 带数据字广播方式命令(广播无接收状态字)
    [命令字] → [数据字]

五、消息帧总结

六、错误处理机制

  1. 校验失败:奇校验错误触发消息错误位(状态字)
  2. 超时无响应:BC记录为"RT无应答"故障
  3. 双冗余总线切换:A总线故障时自动切换至B总线

七、协议栈定位

1553B消息帧对应数据链路层规范,物理层特性包括:

  • 曼彻斯特Ⅱ型编码
  • 差分信号(±6V电平)
  • 屏蔽双绞线传输

八、资料、源码

        未完,待更新!!!正在调试

欢迎各位大佬阅读文章、指正错误、探讨技术(欢迎评论区留言)!​

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值