基于μC/OS-Ⅱ的1553B和ARINC429总线实时协议转换系统的设计
安排代码段和数据段的位置,从而确定用户自由空间的起始地址;②用目标板(LF2407)内存最高端地址减去起始地址得到用户自由空间的大小;③在自用空间中建立和使用内存分区,分配好任务堆栈、事件控制块和消息队列等各自内存大校
(3) 堆栈的使用和管理
在μC/OS-II中,各任务的堆栈在逻辑上是相互独立的,这样在分配每一个任务堆栈区的大小时,不但要考虑本任务中的局部变量和函数嵌套所需要的堆栈空间,还要考虑系统中所可能发生的最大层数的中断嵌套所需的堆栈空间,从而要占用较多的RAM空间,在系统中有多个任务同时存在时尤其严重。如果对此考虑不足,则可能会出现运行中的任务堆栈空间不足、溢出的情形,从而导致系统崩溃。
针对上述问题,本系统采用以下方法使用和管理堆栈:各任务栈相互分离,且不考虑中断使用;另外分配一个工作栈,可满足所需堆栈空间最大的任务在最大可能层数的中断嵌套下使用。运行时,将当前任务的任务堆栈内容拷贝至工作栈中,在工作栈中运行;当发生任务切换时,先将工作栈中的有用内容保存到当前任务栈,然后将待运行任务的任务栈调入工作栈,在工作栈中运行。在此过程中,堆栈指针始终指在工作栈区域内。
5 协议转换系统的软件设计
协议转换系统是一个多任务系统,并且各个任务之间很可能同时进行,其整个软件按功能可以分成两个模块:导弹加温、准备工作子程序和导弹发射子程序。流程图分别如图5、图6所示。
6 协议转换系统的测试和验证
系统参数和设置如下:晶振频率为11 059.2kHz,锁相环(PLL)倍增器值设置为4,存储器加速开启,中断类型为IRQ中断。在此条件下,其中断响应时间即为从中断发生起,到执行中断处理程序的第一条指令所用的时间,约为0.76μs;飞机控制指令发出到导弹动作实际执行,最大时间延迟约为1.43μs,系统实时性完全符合要求。将该协议转换系统安装在发射架内,进行实际的联机验证,实际运行结果表明,能有效实现参数、数据的传输和转换以及飞机对导弹的实时控制等。
1553B和ARINC429总线实时协议转换系统硬件部分采用"MCU+FPGA+外围芯片"进行构建;软件部分是将嵌入式实时内核μC/OS-II移植到DSP控制器上从而构建一个低成本的通用嵌入式实时软件平台,基于此平台以C语言和汇编语言在DSP集成化软件开发环境CCS上加以实现。协议转换系统在满足实时性和可靠性要求的前提下,软、硬件尽可能地简化;在结构上尽量模块化,同时便于监测、安装、维护和检修。为了验证协议转换系统的功能和性能是否完全符合要求,对协议转换系统进行了测试,并最终实现了联机验证。结果表明,该系统完全符合设计要求,完成了系统所应具有的所有功能。
实时协议转换 1553B ARINC429总线 相关文章:
- 基于DSP的1553B总线系统设计与实现(10-08)
- FPGA/DSP技术的1553B飞机总线系统通讯软件的设计(01-15)
- 基于LXI总线的1553B通讯模块设计与开发(11-24)
- 基于1553B总线的航天大功率电动舵机控制器设计(12-21)
- 基于FPGA的1553B总线接口设计(12-20)
- 1553B总线系统的可靠性研究(12-20)