[发明专利]基于1553B总线防读写冲突的数据产生及传输方法有效
申请号: | 201610285856.7 | 申请日: | 2016-04-29 |
公开(公告)号: | CN105974837B | 公开(公告)日: | 2018-08-28 |
发明(设计)人: | 孙雨;董树冰 | 申请(专利权)人: | 西安航天精密机电研究所 |
主分类号: | G05B19/042 | 分类号: | G05B19/042 |
代理公司: | 西安智邦专利商标代理有限公司 61211 | 代理人: | 王少文 |
地址: | 710100 陕*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明涉及一种基于1553B总线防读写冲突的数据产生及传输方法,设计了发送查找表指针和两个缓存区,指针所指向的缓存区只能读数据,指针未指向的缓存区只能写数据,从而实现了1553B总线发送双缓存功能;其中,1553B数据包前2个字节为陀螺与加速度计数据的状态值,10ms更新一次,从而实现了陀螺与加速度计数据状态实时检测功能。本发明在数据采集过程中,时刻判断BC端是否有非周期指令,如有,则将当前状态值组成1553B数据包,同时将指针指向该数据包存入的缓存区,便于BC端实时获取陀螺与加速度计的状态。 | ||
搜索关键词: | 基于 1553 总线 读写 冲突 数据 产生 传输 方法 | ||
【主权项】:
1.一种基于1553B总线防读写冲突的数据产生及传输方法,其特征在于:包括以下步骤:1)初始化RT端两个数据缓冲区,将发送查找表指针指向子地址8的其中一个缓冲区;2)检测0.5ms数据采集中断,若无,重复步骤2;若有,进入步骤3;3)读取陀螺、加表计数器的输出脉冲值及状态值,对输出脉冲值进行增量计算和16阶FIR数字滤波处理;4)将陀螺、加表计数器的输出脉冲值分别与上一次读取数据累加,检测是否有10ms同步信号中断,若无,返回步骤2;若有,进入步骤5;5)判断BC端是否有非周期指令,如有,将当前状态值组成1553B数据包,再将该数据包存入子地址2的数据缓存区,将发送查找表指针指向子地址2,BC端根据发送查找表指针读取RT端准备好的数据包;如无,则进入步骤6;6)将最后一次的状态值和输出脉冲值累加数据组成1553B数据包,写入子地址8中指针未指向的一个缓冲区,待数据写入完成后将发送查找表指针切换至该缓冲区;所述1553B数据包中的状态值为前2个字节,输出脉冲值累加数据为后30个字节;7)BC端根据发送查找表指针读取RT端准备好的数据;8)返回步骤2;所述增量计算的步骤如下:3.1)读取上次计数和本次计数,读取陀螺和加速度计的极性;3.2)判断本次计数是否大于等于上次计数,如是,则执行步骤3.4,如否,则执行步骤3.3;3.3)判断上次计数与本次计数的差值是否小于等于32768;如是,则执行步骤3.6,如否,则执行步骤3.5;3.4)判断本次计数与上次计数的差值是否小于等于32768;如是,则执行步骤3.8,如否,则执行步骤3.7;3.5)按下式计算脉冲增量,然后执行步骤3.9;脉冲增量=65536‑上次计数+本次计数;3.6)按下式计算脉冲增量,然后执行步骤3.9;脉冲增量=本次计数‑上次计数;3.7)按下式计算脉冲增量,然后执行步骤3.9;脉冲增量=65536‑本次计数+上次计数;3.8)按下式计算脉冲增量,然后执行步骤3.9;脉冲增量=本次计数‑上次计数;3.9)修改极性,结束本次增量计算。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安航天精密机电研究所,未经西安航天精密机电研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201610285856.7/,转载请声明来源钻瓜专利网。