嵌入式机车车辆车载播放系统软件设计与实现.docVIP

嵌入式机车车辆车载播放系统软件设计与实现.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
PAGE PAGE 1 嵌入式机车车辆车载播放系统软件设计与实现   【摘要】系统使用QtCreator作为开发工具,综合嵌入式数据库SQLite、开源多媒体播放器MPlayer技术,设计并实现了一个具有良好人机交互界面的嵌入式机车车辆车载播放系统,可对主流音视频文件进行播放,且系统易于移植和扩展。   【关键词】机车车辆车载播放系统;QtCreator;SQLite;MPlayer   1.Qt简介   Qt是Trolltech公司的标志性产品(现Trolltech公司已被手机巨头NOKIA公司收购),是一个跨平台的C++图形用户界面(GUI)工具包。它既可以开发GUI程式,也可用于开发非GUI程式,比如控制台工具和服务器。Qt是面向对象语言,易于扩展,并且允许组件编程。Qt应用程序接口与工具兼容于所有支持平台,让开发员们掌握一个应用程序接口便可执行与平台非相关的应用开发与配置。   Qt支持下述平台:   1)MS/Windows-95、98、NT4.0、ME、2000、XP、Vista和Win7;   2)Unix/X11-Linux、SunSolaris、HP-UX、CompaqTru64UNIX、IBMAIX、SGIIRIX、FreeBSD、BSD/OS和其它很多X11平台;   3)Macintosh-MacOSX;   4)Embedded-有帧缓冲(framebuffer)支持的嵌入式Linux平台,WindowsCE。   Qt对不同平台的专门API进行了专门的封装(文件处理、网络等)[1]。   Qt被Nokia收购后推出了一款新的轻量级集成开发环境(IDE)QtCreator。QtCreator可带来两大关键益处:提供首个专为支持跨平台开发而设计的集成开发环境(IDE),并确保首次接触Qt框架的开发人员能迅速上手和操作。   QtCreator包含了一套用于创建和测试基于Qt应用程序的高效工具,包括:一个高级的C++代码编辑器、上下文感知帮助系统、可视化调试器、源代码管理、项目和构建管理工具。   Qt/Embedded(简称QT/E)是一个专门为嵌入式系统设计图形用户界面的工具包,是NOKIA公司的图形化界面开发工具Qt的嵌入式版本,它通过QtAPI与LinuxI/O以及Framebuffer直接交互,拥有较高的运行效率,而且整体采用面向对象编程,拥有良好地体系架构和编程模式。Qt/embedded和Qt一样,在4.5版本之后提供了三种不同的授权协议GPL,LGPL和Commercial。开发者使用QT/E开发的应用程序要移植到不同平台时,只需要重新编译代码,而不需要对代码进行修改。并可以随意设置程序界面的外观、方便地为程序连接数据库、使程序本地化、将程序与Java集成等。   2.使用QtCreator设计界面   在QtCreator中完成车载播放器工程的创建后首先是设计界面。界面可用代码生成,也可用QtDesigner辅助设计。使用QtDesigner设计界面只需将界面中所需的窗口部件拖入ui界面文件中,然后设置属性修改其显示效果,最后使用布局控件设置布局效果。通过拖放窗口部件完成的界面在布局上不够精确,因此本系统采用纯代码来完成界面开发。   本系统的界面主要包括的窗口部件有TableView、PushButton等。在界面的布局上,系统采用了手工布局方式。手工布局方式通过基类QWidget提供的setGeometry()函数来设置子窗口部件的位置和大小,当窗口大小改变的时候,重新计算窗口的大小或者变化比例,然后重载QWidget::resizeEvent(QResizeEvent*)函数,能够使得子窗口部件的大小和位置作出适应性的改变。   如图1所示为本系统的主界面:   界面设计的主要开发过程如下:   1)使基础窗口QWidget继承于主窗口QMainWindow,窗体构造函数负责模板的初始化;   2)创建MyButton类构造窗体按钮部件,并对窗口部件中使用的对象以及函数进行声明,包括图标、名称、字体、文本、坐标、画笔、按钮是否有效、重绘时间、鼠标按下事件等;   3)添加按钮的信号与槽。系统界面中每个功能按钮都对应一个信号和槽,信号和槽式Qt编程的核心技术,通过信号可以将界面上的空间所发生的事件进行发射,槽函数负责接受相应信号并作出响应处理。如播放暂停按钮,与其对应的信号是单击,它的单击信号连接一个槽处理函数,在这个函数中通过QProcess来向slave模式下的MPlayer发送命令,达到控制播放的目的。其他的控件在处理方式上都与播放暂停按钮类似,都有自己得信号和槽。   3.软件功能模块设计   机车车辆车载播放器主要由音频播放和视频播放两大部分组成,这两部分存在着很多

文档评论(0)

gmomo-lt + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档