0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于Linux嵌入式操作系统实现掌上娱乐系统的设计

电子设计 来源:郭婷 作者:电子设计 2019-08-22 08:03 次阅读

在UP-TECH S3C2410 DVK1.1 开发平台下,提出了一个触摸式的嵌入式掌上娱乐系统设计方案。本系统主要包括多媒体播放器和游戏的基本功能。本系统可以播放现有的大多数的音频视频文件;设计了嵌入式游戏,增加了系统的娱乐性。使用触摸屏方便作为人机交互的平台。采用跨平台性能良好的Qt4 设计了应用程序和人机界面,界面友好,汉化显示,美观,操作简便,运行流畅。整个系统模块化设计,充分考虑了软件系统自身所占的存储空间以及可扩展性,具有广阔的市场前景。

嵌入式系统是以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。近年来,随着微处理器技术、DSP 技术、多媒体编解码技术以及嵌入式技术的发展,多媒体娱乐终端已经成为消费性电子产品的热点。同时,逐渐成熟的市场随着MP3 在市场上取得的巨大成功,以及MP4、数字电视、3G 通讯等相关技术的起步,在未来几年内都将会得到快速发展。多媒体终端正是数字信息产业的一个重要组成部分, 所以在这个背景下,MultimediaTerminal 蕴含着极大地发展潜力。本文是基于Linux 嵌入式操作系统在UP-TECHS3C2410 DVK1.1 开发平台下设计并实现了一个高性能、低功耗、低成本的嵌入式掌上娱乐系统。

1 系统概述

本系统以UP-TECH S3C2410 DVK1.1 为开发平台,使用嵌入式linux 作为操作系统。

本系统的实现包括两个方面,一是底层系统的搭建。本系统是在通用的嵌入式Linux 操作系统上进行适当的裁剪,使其符合系统的硬件平台,并且初始化开发底层的驱动,实现了对系统的控制以及数据的存储和传输。二是应用层的实现。

系统的底层包括文件系统的搭建以及各种接口部件的驱动程序,这些驱动程序通过嵌入式Linux 操作系统进行调用,然后完成应用的功能,为上层的接口层和应用层提供服务[5]。

中间的嵌入式GUI 为接口层,采用QT4 作为用户GUI 的界面库。QT4 是基于服务器-客户端的一种用户界面中间件,提供了丰富的功能控件和精美的界面设计功能,可以便捷的设计出所需要的各种功能模块。

系统的最上层就是直接面向用户的应用层。该层采用QT4 设计,向用户提供了精美的用户界面,用户可以通过触摸屏方便的调用相关功能。系统的软件结构框图如图1 所示:

基于Linux嵌入式操作系统实现掌上娱乐系统的设计

图2 系统硬件结构框图

2.2 软件开发平台介绍

在系统层,由于UP-TECH S3C2410 DVK1.1 开发板提供原始的系统(vivi、linux-2.4、root.cramfs)版本低,因此,针对多媒体娱乐系统,裁剪移植了适合本系统的Uboot-1.1.6、linux-2.6.24 内核和yaffs 文件系统。该系统使用较为通用的bootloader:UBoot,网络资源较多的内核linux2.6 和可读可写的yaffs 文件系统,易于系统的开发。并配置了LCD 屏驱动、网卡驱动、SD 卡等驱动。

在应用层,采用QT SDK 设计所有的应用程序。

Qt 是一个跨平台的C++图形用户界面(GUI)库,包括跨平台类库、集成开发工具和跨平台IDE.使用Qt“一次开发,多次编译”,无须重新编写源代码,便可跨不同桌面和嵌入式操作系统部署这些应用程序。

3 实现原理

应用层软件的设计主要包括两个模块:多媒体播放器以及游戏模块。用户主界面设计了一个主框架,然后将其他功能模块的图标放在该框架内,完成了整体的规划设计。下面详细介绍这两个功能模块的设计与实现。

3.1 播放器的实现

对于音频和视频的播放,本系统使用QT 设计一个前端播放、控制界面,并使用Mplayer 作为后端程序,能播放mp3、ogg、ogm、wma、wav、asf、au、avi、mpeg、mpg、mv1、mov、wmv、pls、m3u、mp4、 m4a 等音频和视频格式。播放器模块的结构图如图3 所示,播放器使用Mplayer 作为后端程序(红色部分),使用QT4开发前端程序(绿色部分)。

基于Linux嵌入式操作系统实现掌上娱乐系统的设计

图4 播放器软件流程图。

通过定义一个QProcess 对象调用已编译好的Mplayer。

QProcess *process = new QProcess();

process-》setProcessChannelMode(QProcess::MergedChannels);

Process-》start(“mplayer –ac –mad xxxxx”);

在命令中添加 -slave 和 -quiet 就可以通过命令设置Mplayer 实现相应的功能。Process-》start(“mplayer–slave –quiet –ac –mad xxxxx”)。

下面对播放器的暂停播放功能和音量调节进行介绍。

① 播放暂停功能设计

通过这段代码可以设置Mplayer 暂停:process-》write(“pause ”);执行这段代码的时候在播放状态下就会暂停,暂停状态下就会继续播放。

② 音量调节

下面代码即可实现音量调节的功能:

Process-》write(“volume -1 ”); //音量减小;

Process-》write(“volume +1 ”); //音量增加;

Process-》write(“volume XX 1 ”); //音量设置成指定值

该系统使用如下代码实现音量调节:

QString cmd=“volume” +QString::number(value)+“ 1 ”;

process-》write(cmd.toLocal8Bit()。data());

系统最终实现的实验效果图如图5 所示:

图6 游戏模块实验结果图

4 总结

本系统采用开源的Linux 操作系统和QT4 界面设计工具,整个系统采用模块化设计,具有良好的可扩展性。硬件平台采用的是 UP-TECH S3C2410 DVK1.1嵌入式系统,该芯片采用ARM 架构,其独特的架构设计具有功耗低、功能强的特点,因此非常适合用于手持式设备;采用LCD 触摸屏与用户进行交互,使用简单,符合便携式终端的发展趋势。


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式
    +关注

    关注

    5073

    文章

    19038

    浏览量

    303596
  • Linux
    +关注

    关注

    87

    文章

    11233

    浏览量

    208983
  • 操作系统
    +关注

    关注

    37

    文章

    6748

    浏览量

    123207
收藏 人收藏

    评论

    相关推荐

    嵌入式掌上娱乐系统实现原理是什么?

    在UP-TECH S3C2410 DVK1.1 开发平台下,提出了一个触摸嵌入式掌上娱乐系统设计方案。本
    发表于 08-19 06:27

    嵌入式操作系统有哪些

      1.嵌入式Linux  嵌入式Linux(Embedded Linux)是标准Linux经过
    发表于 06-20 15:13

    嵌入式Linux操作系统

    ARM+LINUX路线,主攻嵌入式Linux操作系统及其上应用软件开发目标:(1)掌握主流嵌入式微处理器的结构与原理(初步定为arm9)(2
    发表于 10-27 10:22

    嵌入式Linux操作系统

      嵌入式Linux在新兴的嵌入式操作系统领域内也获得了飞速发展和广泛应用。而对于那些希望尽快进入嵌入式行业从事产品研发的朋友们,选择
    发表于 11-05 08:47

    嵌入式Linux操作系统的使用

    这是第一次接触嵌入式设计课程,课程设计内容目标如下:1、了解嵌入式技术;2、掌握嵌入式Linux操作系统的使用;(命令)3、掌握
    发表于 11-08 06:43

    基于Linux嵌入式操作系统

    2.2 实时操作系统的评价指标三、基于Linux嵌入式操作系统3.1 ARMLinux简介3.2 uCLinux简介四、嵌入式
    发表于 11-08 09:05

    基于Linux操作系统嵌入式网关的实现

    基于Linux操作系统嵌入式网关的实现
    发表于 03-28 09:48 29次下载

    嵌入式操作系统Linux 中的串口应用编程

    针对嵌入式Linux操作系统的特点,分析在该系统下串行通信口编程控制的方法,总结程序设计的步骤; 在嵌入式
    发表于 05-14 14:34 28次下载

    基于嵌入式Linux系统掌上Emap的设计

    本文对基于嵌入式Linux 系统下不同的图形用户界面(GUI)进行了综合的介绍和比较,并根据Emap 的工作原理,提出了在嵌入式Linux
    发表于 08-10 10:32 17次下载

    基于Linux嵌入式实时操作系统的研究

    本文分析了Linux的特点、提出了对Linux适当剪裁,实现廉价的嵌入式实际时操作系统的方法及要注意的问题。
    发表于 05-30 09:40 2328次阅读
    基于<b class='flag-5'>Linux</b>的<b class='flag-5'>嵌入式</b>实时<b class='flag-5'>操作系统</b>的研究

    嵌入式ARM芯片及linux操作系统

    关于嵌入式和arm的一些介绍,包括嵌入式概念和linux操作系统的若干概念。
    发表于 04-05 16:20 7次下载

    Linux操作系统设计的掌上娱乐系统

    本文是基于Linux嵌入式操作系统在UP-TECHS3C2410DVK1。1开发平台下设计并实现了一个高性能、低功耗、低成本的嵌入式
    发表于 03-27 10:47 2430次阅读
    以<b class='flag-5'>Linux</b><b class='flag-5'>操作系统</b>设计的<b class='flag-5'>掌上</b><b class='flag-5'>娱乐</b><b class='flag-5'>系统</b>

    Linux嵌入式操作系统有哪些优势

    嵌入式Linux操作系统是将Linux操作系统进行裁剪,使Linux
    发表于 07-10 16:34 5089次阅读

    嵌入式操作系统FreeRTOS的原理实现

    嵌入式操作系统FreeRTOS的原理实现(嵌入式开发工具使用实验报告)-嵌入式操作系统FreeR
    发表于 07-30 12:03 31次下载
    <b class='flag-5'>嵌入式</b><b class='flag-5'>操作系统</b>FreeRTOS的原理<b class='flag-5'>实现</b>

    嵌入式操作系统

    2.2 实时操作系统的评价指标三、基于Linux嵌入式操作系统3.1 ARMLinux简介3.2 uCLinux简介四、嵌入式
    发表于 11-03 18:36 46次下载
    <b class='flag-5'>嵌入式</b><b class='flag-5'>操作系统</b>