0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于Linux嵌入式操作系統(tǒng)實(shí)現(xiàn)掌上娛樂(lè)系統(tǒng)的設(shè)計(jì)

電子設(shè)計(jì) ? 來(lái)源:郭婷 ? 作者:電子設(shè)計(jì) ? 2019-08-22 08:03 ? 次閱讀

在UP-TECH S3C2410 DVK1.1 開(kāi)發(fā)平臺(tái)下,提出了一個(gè)觸摸式的嵌入式掌上娛樂(lè)系統(tǒng)設(shè)計(jì)方案。本系統(tǒng)主要包括多媒體播放器和游戲的基本功能。本系統(tǒng)可以播放現(xiàn)有的大多數(shù)的音頻視頻文件;設(shè)計(jì)了嵌入式游戲,增加了系統(tǒng)的娛樂(lè)性。使用觸摸屏方便作為人機(jī)交互的平臺(tái)。采用跨平臺(tái)性能良好的Qt4 設(shè)計(jì)了應(yīng)用程序和人機(jī)界面,界面友好,漢化顯示,美觀,操作簡(jiǎn)便,運(yùn)行流暢。整個(gè)系統(tǒng)模塊化設(shè)計(jì),充分考慮了軟件系統(tǒng)自身所占的存儲(chǔ)空間以及可擴(kuò)展性,具有廣闊的市場(chǎng)前景。

嵌入式系統(tǒng)是以應(yīng)用為中心、以計(jì)算機(jī)技術(shù)為基礎(chǔ)、軟件硬件可裁剪、適應(yīng)應(yīng)用系統(tǒng)對(duì)功能、可靠性、成本、體積、功耗嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)。近年來(lái),隨著微處理器技術(shù)、DSP 技術(shù)、多媒體編解碼技術(shù)以及嵌入式技術(shù)的發(fā)展,多媒體娛樂(lè)終端已經(jīng)成為消費(fèi)性電子產(chǎn)品的熱點(diǎn)。同時(shí),逐漸成熟的市場(chǎng)隨著MP3 在市場(chǎng)上取得的巨大成功,以及MP4、數(shù)字電視、3G 通訊等相關(guān)技術(shù)的起步,在未來(lái)幾年內(nèi)都將會(huì)得到快速發(fā)展。多媒體終端正是數(shù)字信息產(chǎn)業(yè)的一個(gè)重要組成部分, 所以在這個(gè)背景下,MultimediaTerminal 蘊(yùn)含著極大地發(fā)展?jié)摿?。本文是基?a target="_blank">Linux 嵌入式操作系統(tǒng)在UP-TECHS3C2410 DVK1.1 開(kāi)發(fā)平臺(tái)下設(shè)計(jì)并實(shí)現(xiàn)了一個(gè)高性能、低功耗、低成本的嵌入式掌上娛樂(lè)系統(tǒng)。

1 系統(tǒng)概述

本系統(tǒng)以UP-TECH S3C2410 DVK1.1 為開(kāi)發(fā)平臺(tái),使用嵌入式linux 作為操作系統(tǒng)。

本系統(tǒng)的實(shí)現(xiàn)包括兩個(gè)方面,一是底層系統(tǒng)的搭建。本系統(tǒng)是在通用的嵌入式Linux 操作系統(tǒng)上進(jìn)行適當(dāng)?shù)牟眉簦蛊浞舷到y(tǒng)的硬件平臺(tái),并且初始化開(kāi)發(fā)底層的驅(qū)動(dòng),實(shí)現(xiàn)了對(duì)系統(tǒng)的控制以及數(shù)據(jù)的存儲(chǔ)和傳輸。二是應(yīng)用層的實(shí)現(xiàn)。

系統(tǒng)的底層包括文件系統(tǒng)的搭建以及各種接口部件的驅(qū)動(dòng)程序,這些驅(qū)動(dòng)程序通過(guò)嵌入式Linux 操作系統(tǒng)進(jìn)行調(diào)用,然后完成應(yīng)用的功能,為上層的接口層和應(yīng)用層提供服務(wù)[5]。

中間的嵌入式GUI 為接口層,采用QT4 作為用戶GUI 的界面庫(kù)。QT4 是基于服務(wù)器-客戶端的一種用戶界面中間件,提供了豐富的功能控件和精美的界面設(shè)計(jì)功能,可以便捷的設(shè)計(jì)出所需要的各種功能模塊。

系統(tǒng)的最上層就是直接面向用戶的應(yīng)用層。該層采用QT4 設(shè)計(jì),向用戶提供了精美的用戶界面,用戶可以通過(guò)觸摸屏方便的調(diào)用相關(guān)功能。系統(tǒng)的軟件結(jié)構(gòu)框圖如圖1 所示:

基于Linux嵌入式操作系統(tǒng)實(shí)現(xiàn)掌上娛樂(lè)系統(tǒng)的設(shè)計(jì)

圖2 系統(tǒng)硬件結(jié)構(gòu)框圖

2.2 軟件開(kāi)發(fā)平臺(tái)介紹

在系統(tǒng)層,由于UP-TECH S3C2410 DVK1.1 開(kāi)發(fā)板提供原始的系統(tǒng)(vivi、linux-2.4、root.cramfs)版本低,因此,針對(duì)多媒體娛樂(lè)系統(tǒng),裁剪移植了適合本系統(tǒng)的Uboot-1.1.6、linux-2.6.24 內(nèi)核和yaffs 文件系統(tǒng)。該系統(tǒng)使用較為通用的bootloader:UBoot,網(wǎng)絡(luò)資源較多的內(nèi)核linux2.6 和可讀可寫的yaffs 文件系統(tǒng),易于系統(tǒng)的開(kāi)發(fā)。并配置了LCD 屏驅(qū)動(dòng)、網(wǎng)卡驅(qū)動(dòng)、SD 卡等驅(qū)動(dòng)。

在應(yīng)用層,采用QT SDK 設(shè)計(jì)所有的應(yīng)用程序。

Qt 是一個(gè)跨平臺(tái)的C++圖形用戶界面(GUI)庫(kù),包括跨平臺(tái)類庫(kù)、集成開(kāi)發(fā)工具和跨平臺(tái)IDE.使用Qt“一次開(kāi)發(fā),多次編譯”,無(wú)須重新編寫源代碼,便可跨不同桌面和嵌入式操作系統(tǒng)部署這些應(yīng)用程序。

3 實(shí)現(xiàn)原理

應(yīng)用層軟件的設(shè)計(jì)主要包括兩個(gè)模塊:多媒體播放器以及游戲模塊。用戶主界面設(shè)計(jì)了一個(gè)主框架,然后將其他功能模塊的圖標(biāo)放在該框架內(nèi),完成了整體的規(guī)劃設(shè)計(jì)。下面詳細(xì)介紹這兩個(gè)功能模塊的設(shè)計(jì)與實(shí)現(xiàn)。

3.1 播放器的實(shí)現(xiàn)

對(duì)于音頻和視頻的播放,本系統(tǒng)使用QT 設(shè)計(jì)一個(gè)前端播放、控制界面,并使用Mplayer 作為后端程序,能播放mp3、ogg、ogm、wma、wav、asf、au、avi、mpeg、mpg、mv1、mov、wmv、pls、m3u、mp4、 m4a 等音頻和視頻格式。播放器模塊的結(jié)構(gòu)圖如圖3 所示,播放器使用Mplayer 作為后端程序(紅色部分),使用QT4開(kāi)發(fā)前端程序(綠色部分)。

基于Linux嵌入式操作系統(tǒng)實(shí)現(xiàn)掌上娛樂(lè)系統(tǒng)的設(shè)計(jì)

圖4 播放器軟件流程圖。

通過(guò)定義一個(gè)QProcess 對(duì)象調(diào)用已編譯好的Mplayer。

QProcess *process = new QProcess();

process-》setProcessChannelMode(QProcess::MergedChannels);

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

在命令中添加 -slave 和 -quiet 就可以通過(guò)命令設(shè)置Mplayer 實(shí)現(xiàn)相應(yīng)的功能。Process-》start(“mplayer–slave –quiet –ac –mad xxxxx”)。

下面對(duì)播放器的暫停播放功能和音量調(diào)節(jié)進(jìn)行介紹。

① 播放暫停功能設(shè)計(jì)

通過(guò)這段代碼可以設(shè)置Mplayer 暫停:process-》write(“pause ”);執(zhí)行這段代碼的時(shí)候在播放狀態(tài)下就會(huì)暫停,暫停狀態(tài)下就會(huì)繼續(xù)播放。

② 音量調(diào)節(jié)

下面代碼即可實(shí)現(xiàn)音量調(diào)節(jié)的功能:

Process-》write(“volume -1 ”); //音量減?。?/p>

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

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

該系統(tǒng)使用如下代碼實(shí)現(xiàn)音量調(diào)節(jié):

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

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

系統(tǒng)最終實(shí)現(xiàn)的實(shí)驗(yàn)效果圖如圖5 所示:

圖6 游戲模塊實(shí)驗(yàn)結(jié)果圖

4 總結(jié)

本系統(tǒng)采用開(kāi)源的Linux 操作系統(tǒng)和QT4 界面設(shè)計(jì)工具,整個(gè)系統(tǒng)采用模塊化設(shè)計(jì),具有良好的可擴(kuò)展性。硬件平臺(tái)采用的是 UP-TECH S3C2410 DVK1.1嵌入式系統(tǒng),該芯片采用ARM 架構(gòu),其獨(dú)特的架構(gòu)設(shè)計(jì)具有功耗低、功能強(qiáng)的特點(diǎn),因此非常適合用于手持式設(shè)備;采用LCD 觸摸屏與用戶進(jìn)行交互,使用簡(jiǎn)單,符合便攜式終端的發(fā)展趨勢(shì)。


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 嵌入式
    +關(guān)注

    關(guān)注

    5088

    文章

    19160

    瀏覽量

    306541
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11331

    瀏覽量

    209991
  • 操作系統(tǒng)
    +關(guān)注

    關(guān)注

    37

    文章

    6862

    瀏覽量

    123525
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    嵌入式掌上娛樂(lè)系統(tǒng)實(shí)現(xiàn)原理是什么?

    在UP-TECH S3C2410 DVK1.1 開(kāi)發(fā)平臺(tái)下,提出了一個(gè)觸摸嵌入式掌上娛樂(lè)系統(tǒng)設(shè)計(jì)方案。本
    發(fā)表于 08-19 06:27

    嵌入式操作系統(tǒng)有哪些

      1.嵌入式Linux  嵌入式Linux(Embedded Linux)是標(biāo)準(zhǔn)Linux經(jīng)過(guò)
    發(fā)表于 06-20 15:13

    嵌入式Linux操作系統(tǒng)

    ARM+LINUX路線,主攻嵌入式Linux操作系統(tǒng)及其上應(yīng)用軟件開(kāi)發(fā)目標(biāo):(1)掌握主流嵌入式微處理器的結(jié)構(gòu)與原理(初步定為arm9)(2
    發(fā)表于 10-27 10:22

    嵌入式Linux操作系統(tǒng)

      嵌入式Linux在新興的嵌入式操作系統(tǒng)領(lǐng)域內(nèi)也獲得了飛速發(fā)展和廣泛應(yīng)用。而對(duì)于那些希望盡快進(jìn)入嵌入式行業(yè)從事產(chǎn)品研發(fā)的朋友們,選擇
    發(fā)表于 11-05 08:47

    嵌入式Linux操作系統(tǒng)的使用

    這是第一次接觸嵌入式設(shè)計(jì)課程,課程設(shè)計(jì)內(nèi)容目標(biāo)如下:1、了解嵌入式技術(shù);2、掌握嵌入式Linux操作系統(tǒng)的使用;(命令)3、掌握
    發(fā)表于 11-08 06:43

    基于Linux嵌入式操作系統(tǒng)

    2.2 實(shí)時(shí)操作系統(tǒng)的評(píng)價(jià)指標(biāo)三、基于Linux嵌入式操作系統(tǒng)3.1 ARMLinux簡(jiǎn)介3.2 uCLinux簡(jiǎn)介四、嵌入式
    發(fā)表于 11-08 09:05

    基于Linux操作系統(tǒng)嵌入式網(wǎng)關(guān)的實(shí)現(xiàn)

    基于Linux操作系統(tǒng)嵌入式網(wǎng)關(guān)的實(shí)現(xiàn)
    發(fā)表于 03-28 09:48 ?29次下載

    嵌入式操作系統(tǒng)Linux 中的串口應(yīng)用編程

    針對(duì)嵌入式Linux操作系統(tǒng)的特點(diǎn),分析在該系統(tǒng)下串行通信口編程控制的方法,總結(jié)程序設(shè)計(jì)的步驟; 在嵌入式
    發(fā)表于 05-14 14:34 ?28次下載

    基于嵌入式Linux系統(tǒng)掌上Emap的設(shè)計(jì)

    本文對(duì)基于嵌入式Linux 系統(tǒng)下不同的圖形用戶界面(GUI)進(jìn)行了綜合的介紹和比較,并根據(jù)Emap 的工作原理,提出了在嵌入式Linux
    發(fā)表于 08-10 10:32 ?17次下載

    基于Linux嵌入式實(shí)時(shí)操作系統(tǒng)的研究

    本文分析了Linux的特點(diǎn)、提出了對(duì)Linux適當(dāng)剪裁,實(shí)現(xiàn)廉價(jià)的嵌入式實(shí)際時(shí)操作系統(tǒng)的方法及要注意的問(wèn)題。
    發(fā)表于 05-30 09:40 ?2353次閱讀
    基于<b class='flag-5'>Linux</b>的<b class='flag-5'>嵌入式</b>實(shí)時(shí)<b class='flag-5'>操作系統(tǒng)</b>的研究

    嵌入式ARM芯片及linux操作系統(tǒng)

    關(guān)于嵌入式和arm的一些介紹,包括嵌入式概念和linux操作系統(tǒng)的若干概念。
    發(fā)表于 04-05 16:20 ?7次下載

    Linux操作系統(tǒng)設(shè)計(jì)的掌上娛樂(lè)系統(tǒng)

    本文是基于Linux嵌入式操作系統(tǒng)在UP-TECHS3C2410DVK1。1開(kāi)發(fā)平臺(tái)下設(shè)計(jì)并實(shí)現(xiàn)了一個(gè)高性能、低功耗、低成本的嵌入式
    發(fā)表于 03-27 10:47 ?2473次閱讀
    以<b class='flag-5'>Linux</b><b class='flag-5'>操作系統(tǒng)</b>設(shè)計(jì)的<b class='flag-5'>掌上</b><b class='flag-5'>娛樂(lè)</b><b class='flag-5'>系統(tǒng)</b>

    Linux嵌入式操作系統(tǒng)有哪些優(yōu)勢(shì)

    嵌入式Linux操作系統(tǒng)是將Linux操作系統(tǒng)進(jìn)行裁剪,使Linux
    發(fā)表于 07-10 16:34 ?5138次閱讀

    嵌入式操作系統(tǒng)FreeRTOS的原理實(shí)現(xiàn)

    嵌入式操作系統(tǒng)FreeRTOS的原理實(shí)現(xiàn)(嵌入式開(kāi)發(fā)工具使用實(shí)驗(yàn)報(bào)告)-嵌入式操作系統(tǒng)FreeR
    發(fā)表于 07-30 12:03 ?31次下載
    <b class='flag-5'>嵌入式</b><b class='flag-5'>操作系統(tǒng)</b>FreeRTOS的原理<b class='flag-5'>實(shí)現(xiàn)</b>

    嵌入式操作系統(tǒng)

    2.2 實(shí)時(shí)操作系統(tǒng)的評(píng)價(jià)指標(biāo)三、基于Linux嵌入式操作系統(tǒng)3.1 ARMLinux簡(jiǎn)介3.2 uCLinux簡(jiǎn)介四、嵌入式
    發(fā)表于 11-03 18:36 ?46次下載
    <b class='flag-5'>嵌入式</b><b class='flag-5'>操作系統(tǒng)</b>