1553b总线控制器设计与调试

1553b总线控制器设计与调试

ID:15382303

大小:109.50 KB

页数:10页

时间:2018-08-03

1553b总线控制器设计与调试_第1页
1553b总线控制器设计与调试_第2页
1553b总线控制器设计与调试_第3页
1553b总线控制器设计与调试_第4页
1553b总线控制器设计与调试_第5页
资源描述:

《1553b总线控制器设计与调试》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、1553B总线控制器设计与调试丁明亮 庄喜盈 王虎锋(中国空空导弹研究院,河南洛阳471009)    摘 要 本文分析了1553B的工作原理,提出了总线控制器控制方法的设计和总线控制器控制软件的设计,给出了部分中断代码,并结合笔者经验分析了1553B系统连接与调试应注意的一些问题。   关键词 1553B总线;总线控制器;调试1 引言   1553B总线是美国军用标准MIL-STD-1553B定义的一种串行总线的传输形式。由美国于20世纪70年代提出,总线的组成包括一个总线控制器(BC),若干个(

2、最多31个)远程终端(RT),如果需要的话还可以加上负责监视总线信息的总线监视器(BM),1553B总线通讯之所以得到如此广泛的应用,就是其具有以下特点:   (1)强调实时性,1553B的传送速率为1Mb/s,传输速率快。   (2)1553B总线按指令/响应的方式异步操作,即总线上所有的消息传输都由总线控制器发出的指令来控制,相关终端对指令应给予回答并执行操作。这种方式非常适合集中控制的分布式处理系统。   (3)1553B总线是双冗余的传输线,总线都是双备份的,如果总线通讯不通,系统将会根据B

3、C初始化时候的设定自动选择通讯重试,增强了系统的可靠性。总线控制器是总线信息通讯的发起者和组织者,因此对BC控制的好坏将直接影响到总线通讯的质量。2 总线的控制方法设计   总线控制器是总线信息通讯的发起者,同时总线上所有信息的传输又均由BC来控制和激励,其简单的通讯过程为:BC向RT(或多个RT)发送一个发送或者接收指令,如果为接收指令,指令后会携带需要RT接收的数据字,RT接收到命令字后,在给定的相应时间范围内返回一个状态字,并执行相应动作。如果为发送指令,RT只需接收BC发送的数据字,然后返回

4、状态即可。   在1553B总线上通讯的信息多种多样,所以针对不同的背景要有不同的总线设计方法,对于结构单一、数据量较少系统,总线上数据的活动不是很频繁,可以采取比较简单的方法:对周期性传输的消息采用固定周期来定时传输,对一次性消息采用命令插入的方式,要求RT返回数据的采用查询方式向RT的子地址下达命令字来获取数据。   如果通讯比较复杂,甚至有多个RT时,这时再采用上面的方式就使得BC需要同时发送大量命令字来查询多个RT的子地址,这样势必给通讯带来沉重负担,因此可以采用另外一种矢量字方式,将发送消

5、息的主动权交还给发送方(RT),具体的实现方法就是:RT在接收到BC的命令之后,完成相应动作(例如自检),动作完成后将数据字写到相应的子地址BUF中,然后按照协议构造矢量字,再把矢量字发送到RT的0/31号子地址(只能是0或31号子地址),BC在发送完一次性消息后就可以向0/31号字地址发命令字,然后读得该子地址内存放的矢量字,然后根据协议解析矢量字,从而向从矢量字中得到的子地址发送命令,从而得到BC想要得到的RT数据。这样处理既可保证通讯数据量明显较小,又可以保证消息传输实时性,同时又使软件的设计

6、具有更多的灵活性。   为了保证1553B通讯能够适应更多更复杂的情况,BC还提供了很多特殊的功能给用户,使用户可以根据自己的需求来使用这些特殊功能,以满足特殊的系统要求:   (1)自动重试:BC进行初始化的时候可以进行设定,根据需求来设定BC的重试条件。   (2)动态总线控制:总线控制器向一个有执行总线控制能力的远程终端发送一个转让控制的指令字,如果远程终端接受总线控制,总线控制权就交给了这个远程终端。   (3)启动自检测:总线控制器可以用指令使远程终端激活其内部的自检电路。3 总线控制器的

7、软件设计   由于BC在总线上面的特殊性,其软件设计的好坏将直接影响整个系统通讯的流畅、可靠,软件设计归结起来有以下几个注意的地方:   (1)中断方式的选择:对于总线消息而言,都是总线控制器将这些消息组织成一个一个的总线帧来传输的,一帧也就是平时说的一个总线周期。在设计软件中断时可以采用单个消息触发一次中断,也可以选择一个总线周期进一次中断,当然最快的就是单个消息就进入中断,这样可以保证每个消息结束后就能够马上得到处理,实时性好。但是每条消息都执行中断程序无疑对软件运行效率也是有影响的,所以减少中

8、断次数对软件系统还是有利的,但是减少进中断次数又是以牺牲系统实时性为代价的,两者相比较笔者建议如果通讯数据量不是很大的情况下尽量采用单条消息中断的方式,同时尽量简化中断程序执行的代码,提高程序的效率。如果有多个RT且数据量很大,可以考虑一个周期进行一次中断。   (2)总线的重试与消息重复:当消息中出现状态地址错,字计数错,同步类型错,校验错时总线会进行标记,所以设计程序时应当打开错误检测位。同时由于1553B总线是多余度总线,当某一个总线出现差错时,系统会根据设定在

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。