论文题名: | 基于QNX操作系统的汽车全液晶仪表开发 |
关键词: | QNX操作系统;汽车全液晶仪表;嵌入式系统;消息传递;人机界面 |
摘要: | 全液晶仪表采用TFT-LCD屏代替了传统的机械结构,解决了指针式仪表内容单一,可扩展性差的问题,逐渐开始在高端车型上得到应用。目前国内全液晶仪表的开发多处于实验阶段,采用通用处理器和开源嵌入式系统的开发方式,有很大的局限性。与消费电子类相比,汽车电子对嵌入式系统的可靠性,安全性提出了更高的要求。QNX是一种微内核的实时嵌入式操作系统,具有结构清晰,功能稳定,可靠性和实时性高的优势。本文实现了一种基于QNX操作系统的汽车全液晶仪表的开发方案。 QNX的微内核架构将驱动和应用程序均放在用户态执行,有效避免了程序错误或者驱动崩溃引起的系统故障;采用基于抢占式的调度方式并能进行快速的上下文切换,保证了系统的实时性;采用消息传递作为任务之间最基本的通信方式;提供了多种人机界面组件。 基于QNX的微内核结构,对仪表软件进行了层次化设计。驱动程序与底层硬件进行交互,并在QNX资源管理器架构下为应用程序提供标准接口;应用程序采用标准化的通信和调用方式,提高了系统的可移植性;为方便程序的升级和维护,采用了多进程多线程的软件结构;选择了先入先出和轮转调度相结合的调度方式来保证实时性和系统的效率;对关键应用程序给出了线程实现方案。 QNX下的资源管理器为驱动程序提供了标准的文件接口,方便应用程序的移植。对资源管理器的工作方式和体系结构进行了分析,针对硬件平台的CAN控制器,开发了相应的驱动程序。分析了QNX系统的启动过程,并将仪表软件系统进行了镜像封装。 分析车辆信息在液晶仪表上的显示需求,根据显示类型的不同,分为持续性显示,动态显示,数字显示和缓动显示四类。对每一类型的显示给出了在QNX下的解决方案。基于flash的方式能够减少工作量。在flash开发环境中进行仪表界面的绘制,能够更直观的看出显示效果。采用ActionScript语言进行图形的动态控制,控制结构更加清晰。针对仪表指针的缓动要求,提出了采用actionscript类文件和OpenGL语言描述的两种方案,并给出了实现方式,对两种方案的效果进行了对比。 |
作者: | 孙振众 |
专业: | 控制工程 |
导师: | 刘志远 |
授予学位: | 硕士 |
授予学位单位: | 哈尔滨工业大学 |
学位年度: | 2012 |
正文语种: | 中文 |