[发明专利]一种1553B总线控制方法有效
| 申请号: | 202011103073.5 | 申请日: | 2020-10-15 |
| 公开(公告)号: | CN112231259B | 公开(公告)日: | 2023-03-14 |
| 发明(设计)人: | 王雨龙 | 申请(专利权)人: | 天津津航计算技术研究所 |
| 主分类号: | G06F13/40 | 分类号: | G06F13/40;G06F13/42 |
| 代理公司: | 中国兵器工业集团公司专利中心 11011 | 代理人: | 刘二格 |
| 地址: | 300308 天津*** | 国省代码: | 天津;12 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 1553 总线 控制 方法 | ||
1.一种1553B总线控制方法,其特征在于,包括以下步骤:
STEP1:设置1553B总线控制器的表体TableBlock,将1553B总线控制器初始化为远程终端RT模式,定义控制器表体类型的接收数据空间变量RxSAn、发送数据空间TxSAn、矢量字接收变量RxMCn和矢量字发送变量TxMCn;
STEP2:对内存空间清零,定义内存的基地址、起始地址标识、结束地址标识,并将起始地址至结束地址的内存区域进行清零操作;
STEP3:在控制寄存器地址上写入启动配置,配置远程终端1使能寄存器RT1ENA使能,配置远程终端2使能寄存器RT2ENA使能;
STEP4:对数据接收空间进行配置;
STEP5:对数据发送空间进行配置;
STEP6:对矢量字发送空间进行配置;
STEP7:填充远程终端RT到总线控制器BC的数据,计算数据空间的偏移地址以及跳转消息字和时标字两个地址,根据数据长度轮询计算,再次计算使偏移地址的值为原有值上加2,使用寄存器写方法Write1553Reg()将数据值写到缓冲区中;
STEP8:获取总线控制器BC到远程终端RT的数据,计算数据空间的地址以及跳转消息字和时标字两个地址;使用Read1553Reg读出内存地址为offset+i处的值;
STEP9:设置矢量字,矢量字为VectorWord,使用内存地址写方法Write1553Reg()将矢量字写到内存中,远程终端1描述表发送矢量字空间偏移地址RT1_DESCRIP_TABLE_TXMC_OFFSIZE至向后偏移16*4+3的地址中,BC即可获取该远程终端的矢量字;
所述步骤STEP1中,1553B总线控制器的表体TableBlock包含四个成员变量,控制字CtrlWord,描述字2descWord2,描述字3descWord3,描述字4descWord4;
所述步骤STEP2中,内存的基地址为H6130_BASE,设置值为0xf3000000;起始地址标识为H6130_RAM_START_OFFSIZE,设置值为0x200;结束地址标识为H6130_RAM_END_OFFSIZE,设置值为0x7FFF;
所述步骤STEP3中,控制寄存器地址值为0xf1000006,写入的启动配置值为0x18;
所述步骤STEP3中,将主控配置寄存器MASTER_CONFIG_REG配置为0x004C,远程终端1配置寄存器RT1_CONFIG_REG设置为0x81f0,读出远程终端1操作状态寄存器RT1_OP_STATUS_REG的值到局部变量regval,将远程终端子地址RTAddr的值赋值到变量regval中,将赋值后的regval写入到远程终端1操作寄存器RT1_OP_STATUS_REG中;
所述步骤STEP3中,将时标配置寄存器TTAG_CONFIG_REG配置到0x0007,配置硬件中断使能寄存器HDW_INT_ENABLE_REG值为0x7018,配置硬件中断输出使能寄存器HDW_INT_OUTPUT_ENABLE_REG值为0x7018,配置RT1描述表基地址寄存器RT1_DESC_TBL_BASE_ADDR_REG值为0x0400,配置远程终端RT中断使能寄存器RT_INT_ENABLE_REG值为0x00f0,配置RT中断输出使能寄存器RT_INT_OUTPUT_ENABLE_REG值为0x00f0;
所述步骤STEP4中,对数据接收空间进行配置的过程为:
设置接收空间结构为RxSAn,配置RxSAn中控制字CtrlWord值为0x0000,配置RxSAn中描述字2descWord2为RXSUB_MEM,其值设置为0x1a00,配置RxSAn中描述字3DescWord3值为0x0000,配置RxSAn中描述字4DescWord4值为0x1a36;远程终端1描述表接收空间偏移地址RT1_DESCRIP_TABLE_RXSUB_OFFSIZE,设置其值为0x400,从此地址一直向后轮询,轮询长度为块数量BLOCK_NUM,其值为32,依次将接收空间结构RxSAn中控制字ctrlWord的值写入到内存中,将接收空间RxSAn描述字2descWord2偏移40的值写入到内存中;将接收空间结构RxSAn中描述字3descWord3的值写入到内存中,将接收空间中RxSAn中描述字4descWord4的值写入到内存中;
所述步骤STEP5中,对数据发送空间进行配置的过程为:
设置发送空间结构为TxASn,将TxASn中控制字ctrlWord的值设置为0x0000,TxASn中描述字2descWord2的值设置为TXSUB_MEM作为接收空间内存区域,设置其值为0x2a00;发送空间结构TxASn中描述字3descWord3设置为0x0000,发送空间结构TxASn中描述字4descWord4设置为0x2A36;设置远程终端1描述表发送空间偏移地址RT1_DESCRIP_TABLE_TXSUB_OFFSIZE值为0x480,从此地址一直向后轮询,设置轮询块长度为BLOCK_NUM,其值设置为32,依次将发送空间TxSAn中控制字ctrlWord的值写入到内存中,将发送空间TxSAn中描述字2descWord2偏移40后的值写入到内存中;将发送空间TxSAn中描述字3descWord3的值写入到内存中,将发送空间TxSAn中描述4descWord4的值写入到内存中;
所述步骤STEP6中,对矢量字发送空间进行配置的过程为:
矢量字发送空间TxMcn中控制字ctrlWord的值设置为0x0000,矢量字发送空间TxMcn中描述字2descWord2的值设置为0x0000,矢量字发送空间TxMcn中描述字3descWord3设置为0x0000,矢量字发送结构TxMcn中描述字4descWord4设置为0;计算矢量字所在空间的地址为RT1_DESCRIP_TABLE_TXMC_OFFSIZE+16*4,其中RT1_DESCRIP_TABLE_TXMC_OFFSIZE表示远程终端1描述表发送矢量字空间偏移地址,设置其值为0x580;将矢量字发送结构TxMCn中控制字ctrlWord的值写入到内存中,将矢量字发送结构TxMCn中描述字2descWord2的值写入到内存中;将矢量字发送结构TxMCn中descWord3的值写入到内存中,将矢量字发送结构TxMCn中描述字4descWord4的值写入到内存中。
2.如权利要求1所述的1553B总线控制方法,其特征在于,所述步骤STEP7中,填充远程终端RT到总线控制器BC的数据时,传入的参数包括远程终端RT子地址subRt、数据长度dataLen和数据指针pdata;数据空间的偏移地址为:offset=TXSUB_MEM+40*subRt;从0到dataLen-1轮询计算,再次计算使offset的值为原有值上加2;
所述步骤STEP8中,获取总线控制器BC到远程终端RT的数据时,传入的参数有子地址subRt和数据指针data;数据空间的地址为offset=RXSUB_MEM+40*subRt,使用读寄存器方法Read1553Reg()方法将偏移地址为offset+i数据读出;从0到dataLen-1轮询计算,再次计算使offset的值为原有值加2。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于天津津航计算技术研究所,未经天津津航计算技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011103073.5/1.html,转载请声明来源钻瓜专利网。





