嵌入式电子飞行仪表系统的软件结构与实现.docx
《嵌入式电子飞行仪表系统的软件结构与实现.docx》由会员分享,可在线阅读,更多相关《嵌入式电子飞行仪表系统的软件结构与实现.docx(12页珍藏版)》请在优知文库上搜索。
1、嵌入式电子飞行仪表系统的软件结构与实现北京航空航天大学电子信息工程学院39020818徐广毅电子飞行仪表系统(EIeCtrOniCFlightInstrumentSystem)下列简称EFIS为了实现基于嵌入式电子飞行仪表系统的数据综合显示,我们选取了基于IntelStrongARM1110的JingWei开发平台,进行核心部分包含数据接收,解码,综合计算与综合显示,与黑匣子部分的数据记录的软件开发。为了缩短开发时间,降低开发难度,我们在操作系统的选取上使用了Microsoft公司优秀的嵌入式操作系统WindowsCE3.0o开发工具选用了EmbeddedVisualC,结合JingWei的S
2、DK与PIatformBuiIder进行整个硬件平台上软件部分的设计与开发。飞机上各路传感器的数据通过我们所设计的综合数据采集系统的采集后,通过串口编帧发送,JingWei通过串口1接收到数据后进行解码与校验,将正确的数据后通过系列的计算后,调用绘图函数以图形方式综合显示在彩色LCD上。另外,所同意到的数据还会储存在我们所设计的固定格式的二进制文件中,储存在JingWei的SDRAM中实现黑匣子部分的数据记录,借助我们所开发的基于X86系统的黑匣子回放软件,能够分析回放黑匣子的储存数据。在软件上,PIatformBuiIder关于专有硬件平台的操作系统的定制与裁减,EmbeddedVisual
3、C+关于系统平台上应用软件的开发均提供了极大的便利,CPU的强大的数据处理能力,彩色LCD显示屏的综合图形显示,也为整个以显示为核心的系统提供了充分的保证。关于EFIS系统的扩展部分,诸如VFR(虚拟飞行法则)与ILS(仪表着陆系统)与EFIS系统的结合等,由于时间紧迫,任务繁重,都只在理论上与实验中实现,并没有真正加入到系统中。软件系统方案论证1 .操作系统方案一百心的操作系统部分选用开放源码的UCLinUX来实现,我们能够直接修改系统的源码,通过裁减后直接编译出自己的Linux内核,接着基于这个系统来设计开发应用程序部分。这样的工作量无疑是非常大的,关于UCLinUX操作系统的陌生与整个开
4、发时间的安排与核心的EFIS部分的工作量使我们在这个平台上的计划止步,Linux下不是十分便利的开发环境也限制了我们的能力。因此,本设计没有使用这个方案。方案二操作系统选用MicrosoftWindowsCE3.0。MicrosoftWindowsCE3.0在众多的嵌入式操作系统的平台中一直比较优秀。WindowsCE是支持多平台的可定制的嵌入式操作系统,尽管在图形界面上与WindoWSX86家族系列长得很像,让人们误以为是WindowsX86平台的移植产品。但在实际上,WindowsCE的代码全部是重新设计并编写的。它同样支持多线程,完全抢先执行与多任务的操作系统。系统在设计上使用完全的模块
5、化结构,非常有利于裁减与编译。另外,完备的驱动程序与便利的开发环境IDE也非常有利于我们在限期内设计开发出我们所制定的较为完整的EFIS系统的目标。基于WindowSCE的应用程序Shell模块附加技术对象存储:文件系统图形句柄窗口句柄事件句柄数据库注册表通讯模块设备管理模块OEM层OEM适配层本地设备驱动数据流接口驱动基于WindoWSCE的目标设备图一MicrosoftWindowsCE系统配置及基本组织图使用PIatformBuiIder3.0结合适用于JingWei的bsp包,外加模块的裁减编译后导出适合开发应用程序的SDK,使用EmbeddedVisualC+便能够开发编译出在这个平
6、台上运行的软件。将我们所开发的软件与操作系统直接编译成为一个镜像文件,通过JTAG口烧写进JingWei的Hashrom便实现嵌入式系统的软件硬件化。2 .开发环境选择好了操作系统平台之后,所要做的便是如何选择应用软件的开发环境,摆在我们面前有两个方案:方案一使用EmbeddedVisualBasic。使用Platformbuilder能够输出EVB使用的SDK,EVB的开发环境相对直观简洁,开发难度相对较小,但是编译生成的目标代码过于繁琐,编译效率相对较低,程序运行速度较慢。关于EFlS实时显示各项数据的要求完成的并不是非常好,在熟悉过EmbeddedVisualC+之后,我们放弃了这个方案
7、。方案二应用程序开发使用EmbeddedVisualC+结合SDK使用API函数直接编写WIN32程序的方式进行编码,这点不仅大大提高了编译效率,减小了目标程序的大小,C同时也具备强大的开发底层设备驱动的能力,程序执行速度更快,更加符合嵌入式系统实时性的高水平要求。当我们自行裁减WindOWSCE模块到处SDK后,很多的MFC类库所封装的函数将不可能被包含在SDK中,因此我们放弃了MFC直接使用API编写。另外,使用APl方式编码所编译出的代码会更加的精简。设计与论证1 .系统镜像档的设计EFIS系统中关于图形的要求很高,GDI函数支持这部分必不可少。关于黑匣子功能的实现在JingWei平台上
8、是依靠于可靠的文件系统。关于通讯部分又是整个系统数据传输的主干。因此综合了以上的模块后,我们在PlatformBUilder中选择了MAXALL的最小配置,包含了用户图形接口GUI与文件系统。在基于JingWei的BSP包上,选取TCom1,DiSPIay与ToUChPad的驱动模块,结合我们的应用程序部分作为用户模块,将整个系统编译为了一个单独的镜像档。我们修改了这个系统的文件结构与程序的分布位置,构造出了应用于这个平台固化代码的应用程序。实现了系统复位或者者重新加电后能够迅速进入EFIS系统的目的,无需任何人工干涉。实现了简单的固化与专有。另外,在不断的试验中,我们发现导致JingWei死
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 嵌入式 电子 飞行 仪表 系统 软件 结构 实现