24小时论文定制热线

咨询电话

热门毕设:土木工程工程造价桥梁工程计算机javaasp机械机械手夹具单片机工厂供电采矿工程
您当前的位置:论文定制 > 毕业设计论文 >
快速导航
毕业论文定制
关于我们
我们是一家专业提供高质量代做毕业设计的网站。2002年成立至今为众多客户提供大量毕业设计、论文定制等服务,赢得众多客户好评,因为专注,所以专业。写作老师大部分由全国211/958等高校的博士及硕士生设计,执笔,目前已为5000余位客户解决了论文写作的难题。 秉承以用户为中心,为用户创造价值的理念,我站拥有无缝对接的售后服务体系,代做毕业设计完成后有专业的老师进行一对一修改与完善,对有答辩需求的同学进行一对一的辅导,为你顺利毕业保驾护航
代做毕业设计
常见问题

汽车全液晶仪表开发(QNX+Flash+AS)

添加时间:2018/07/29 来源:哈尔滨工业大学 作者:孙振众
通过对当前主流嵌入式操作系统内核架构,上下文切换速度,可靠性等分析,选择了QNX系统作为汽车全液晶仪表的软件平台。QNX系统的微内核架构和内存保护机制让各个任务之间相互独立,不会因为某一个模块的崩溃造成系统的重启。
  以下为本篇论文正文:

摘 要

  全液晶仪表采用 TFT-LCD 屏代替了传统的机械结构,解决了指针式仪表内容单一,可扩展性差的问题,逐渐开始在高端车型上得到应用。目前国内全液晶仪表的开发多处于实验阶段,采用通用处理器和开源嵌入式系统的开发方式,有很大的局限性。与消费电子类相比,汽车电子对嵌入式系统的可靠性,安全性提出了更高的要求。QNX 是一种微内核的实时嵌入式操作系统,具有结构清晰,功能稳定,可靠性和实时性高的优势。本文实现了一种基于 QNX 操作系统的汽车全液晶仪表的开发方案。

  QNX 的微内核架构将驱动和应用程序均放在用户态执行,有效避免了程序错误或者驱动崩溃引起的系统故障;采用基于抢占式的调度方式并能进行快速的上下文切换,保证了系统的实时性;采用消息传递作为任务之间最基本的通信方式;提供了多种人机界面组件。

  基于 QNX 的微内核结构,对仪表软件进行了层次化设计。驱动程序与底层硬件进行交互,并在 QNX 资源管理器架构下为应用程序提供标准接口;应用程序采用标准化的通信和调用方式,提高了系统的可移植性;为方便程序的升级和维护,采用了多进程多线程的软件结构;选择了先入先出和轮转调度相结合的调度方式来保证实时性和系统的效率;对关键应用程序给出了线程实现方案。

  QNX 下的资源管理器为驱动程序提供了标准的文件接口,方便应用程序的移植。对资源管理器的工作方式和体系结构进行了分析,针对硬件平台的 CAN控制器,开发了相应的驱动程序。分析了 QNX 系统的启动过程,并将仪表软件系统进行了镜像封装。

  分析车辆信息在液晶仪表上的显示需求,根据显示类型的不同,分为持续性显示,动态显示,数字显示和缓动显示四类。对每一类型的显示给出了在 QNX下的解决方案。基于 flash 的方式能够减少工作量。在 flash 开发环境中进行仪表界面的绘制,能够更直观的看出显示效果。采用 ActionScript 语言进行图形的动态控制,控制结构更加清晰。针对仪表指针的缓动要求,提出了采用 actionscript类文件和 OpenGL 语言描述的两种方案,并给出了实现方式,对两种方案的效果进行了对比。

  关键词 全液晶仪表;QNX 操作系统;多任务;资源管理器;图形界面

Abstract

  With the TFT-LCD screen replacing the traditional mechanical structure on the instruments, full-blown graphical dashboard solve the requirements of contents and expansibility, began to be applied in the high-end models gradually. The domestic development is still in the experimental stage, general-purpose processor and open source embedded operate system are not suitable for the application environment of automotive instrument. Compared to consumer electronics, automotive electronics has a higher demand of reliability and security. As a kind of micro-kernel real time operate system , QNX has a clear structure, stability function and high reliability. This paper presents a development program of full-blown graphical dashboard based on the QNX system.

  On the QNX microkernel structure, each process runs in a separate address space and avoids system crashes due to application problem. Preemptive scheduling and fast context switching guarantee real-time. Based on message passing, QNX provides a variety of interprocess communicate.

  Based on the structure of QNX , the instrument software is designed hierarchically. Drivers interact with the underlying hardware and provide a unified interface for applications in the structure of the QNX; applications use standard communication and call, to improve the portability of the system; the modules are divided and each module uses the structure of multi-threads. The combination of RR and FIFO is set as the scheduling policy.

  Resourse manger provides a standard interface for drivers, and it is convinent for transplantation of application progressed. The architecture and work way are analysised. The driver of CAN controller is developed in the way of resourse manger. The boot peocess of QNX is analysised and package the instrument softeware in system image. Analysis the display needs of vehicle information, divided display types into persistent display, dynamic display, digital display and easing show, display solution of each type under QNX.The drawing of instrument interface on the flash development environment is more convenient and intuitive. The structure is clearer using ActionScript for dynamic control of the graphics. According to the moving of pointers, two programs are proposed , the class file of actionscript and OpenGL. The effects are compared in the final.

  Keywords:graphical instrument, QNX operate system, multi - task, resourse manager , graphical interface

  本文针对某厂商正在开发的实际电动车型,对汽车仪表的功能需求进行了深入分析,设计了一种基 QNX 嵌入式系统的全液晶仪表软件开发方案。文章整体结构如下:

  对 QNX 操作系统的分析:包括微内核结构及其在车载系统中的必要性;QNX 下多进程多线程的软件结构,各个线程的调度方式和线程间的互斥机制;各个进程间的通信方式和消息传递的实现;最后与当前主流的嵌入式操作系统进行了对比。

  软件的整体设计:根据 QNX 的系统特点,进行了进程划分,并将每个进程根据任务的类型分为多个线程,线程间采用消息传递的方式进行通信;根据各个任务对安全性和实时性的要求,确定了优先级,调度方式以及调度周期;对关键的数据处理进程任务给出了解决方案。

  驱动程序的开发:基于 AM3517 微处理器和 QNX 下的驱动开发方式,设计出具有标准接口的 CAN 总线驱动进程,方便了程序的移植。将仪表的功能模块进行封装整理成系统镜像,实现了仪表软件的加载。

  图形界面的开发:分析了全液晶仪表的显示需求,将显示内容分为持续性显示,动态显示,数字显示和缓动显示四类,并进行了软件方案的设计与实现。

  系统的封装和结果:分析了 QNX 系统的启动过程,对系统进行裁剪并生成系统镜像,实现了仪表系统的自动加载。最后给出了汽车全液晶仪表显示结果。

Flash 图形
Flash 图形

仪表指针的显示效果
仪表指针的显示效果

图片的位置和形状的调整
图片的位置和形状的调整

仪表的 CAN 节点
仪表的 CAN 节点

目 录

  摘 要
  Abstract
  第 1 章 绪论
    1.1 课题背景与意义
    1.2 国内外研究现状
    1.3 本文主要研究内容与组织结构
  第 2 章 QNX操作系统的分析
    2.1 引言
    2.2 QNX微内核结构
    2.3 任务调度与实现
      2.3.1 线程调度方式
      2.3.2 线程调度的实现
      2.3.3 数据的同步与互斥
    2.4 进程间通信
      2.4.1 QNX进程间通信机制
      2.4.2 消息传递的实现
    2.5 操作系统的对比
    2.6 本章小结
  第 3 章 基于QNX的仪表软件结构设计
    3.1 引言
    3.2 软件的结构设计
    3.3 任务的划分
      3.3.1 进程的划分
      3.3.2 进程间的消息传递
      3.3.3 优先级设置原则
      3.3.4 线程划分结果
    3.4 关键线程的实现
    3.5 本章小结
  第 4 章 接口与驱动软件的开发
    4.1 引言
    4.2 硬件系统
    4.3 驱动程序的设计
      4.3.1 驱动程序的结构
      4.3.2 资源管理器的体系结构
    4.4 驱动程序的实现
      4.4.1 资源管理器初始化
      4.4.2 硬件设备的初始化
      4.4.3 消息处理函数
    4.4.4 POSIX接口函数
    4.5 实验结果及分析
      4.5.1 单个节点测试
      4.5.2 CAN网络测试
    4.6 本章小结
  第 5 章 基于QNX操作系统的图形显示技术
    5.1 引言
    5.2 全液晶仪表的显示需求
    5.3 仪表的设计方法
      5.3.1 持续性图片显示
      5.3.2 动态显示
      5.3.3 数字显示
      5.3.4 缓动显示
    5.4 全液晶仪表的开发实现
      5.4.1 flash播放的实现
      5.4.2 Flash文件的制作
      5.4.3 AS类的编写
      5.4.4 接口文件的编写
    5.5 指针的OpenGL实现
      5.5.1 初始化配置
      5.5.2 图形的绘制
    5.6 本章小结
  第 6 章 系统封装与实验结果
    6.1 引言
    6.2 系统的封装和加载
      6.2.1 系统的启动过程
      6.2.2 镜像文件的制作
    6.3 软件开发的实验结果
    6.4 本章小结
  结 论
  参考文献
  攻读硕士学位期间发表的学术论文
  哈尔滨工业大学硕士学位论文原创性声明
  哈尔滨工业大学硕士学位论文使用授权书
  致 谢

    相关内容
    好优论文定制中心主要为您提供代做毕业设计及各专业毕业论文写作辅导服务。 网站地图
    所有论文、资料均源于网上的共享资源以及一些期刊杂志,所有论文仅免费供网友间相互学习交流之用,请特别注意勿做其他非法用途。
    如有侵犯您的版权或其他有损您利益的行为,请联系指出,论文定制中心会立即进行改正或删除有关内容!