• 沒有找到結果。

嵌入式GUI 應用程式之系統研究

N/A
N/A
Protected

Academic year: 2022

Share "嵌入式GUI 應用程式之系統研究"

Copied!
4
0
0

加載中.... (立即查看全文)

全文

(1)

嵌入式 GUI 應用程式之系統研究

范揚興, 張保榮, 黃偉杰, 鄭博文, 張詠筌 國立台東大學 資訊工程學系

{yhfan, brchang}@nttu.edu.tw, [email protected] {lixionc, darklingstorm}@hotmail.com

摘要

本研究主要探討嵌入式圖形化使用者 介面(Embedded GUI)應用程式的設計架 構、處理方法及實行步驟。該系統架構包 含嵌入式處理器 ARM9、嵌入式作業系統 Embedded Linux 及高親和性的圖形化使 用者介面 MiniGUI。此外為了實現高親和 性之人機界面設計,此系統中加入 TFT LCD 觸控式螢幕。為了實現本研究所提出 的方案,於是進行實驗一個動態顯示歌詞 之 MP3 音樂播放器行動裝置。實驗結果顯 示嵌入式 GUI 架構,除了具有高互動性的 人機界面外,設計在 Embedded GUI 上之 應用程式則具有下列優點 - 高度可移植 性、可縮短開發時程、降低複雜度及減少 開發困難度。

關鍵詞:Embedded GUI、Emebedded Linux、MiniGUI、嵌入式 MP3 音樂播放器。

一、前言

低成本、高效能、可即時反應及適用 多元環境成就了嵌入式系統在電腦系統與 控制系統的地位,但隨著嵌入式系統被廣 泛使用而加深了系統設計的複雜度,再加 上產品上市時間的壓力與生命週期縮短等 因素促使嵌入式系統面臨更大的挑戰。

在眾多嵌入式系統中,消費性電子產 品的需求不但未受景氣榮枯的影響,而且 還 以 穩 定 的 成 長 率 持 續 成 長 中 , 根 據 SIA(美國半導體行業協會)預估 2008 年全

球晶片市場銷售金額將突破 3000 億美 元,此外,SIA 總裁 George Scalise 表示,

未來半導體市場的成長,將由消費性電子 產品銷售帶動,由此可見,消費性電子產 品中的無限潛力。

由於 IC 製程技術的進步快速,使得設 計嵌入式系統所需之硬體的數位電路 IC 內含電晶數大幅度的增加,這意謂著設計 者可設計更複雜且功能更多的電子產品,

但嵌入式系統除了硬體電路外,真正賦予 其生命的關鍵則在於植入嵌入式軟體,一 般而言,除了最底層的硬體外,從下而上 的 軟 體 層 包 含 基 本 輸 入 輸 出 系 統 程 式 (BIOS)、啟動載入程式(Boot loader)、週邊 驅動程式(driver)、作業系統程式(operation system)、圖形化使用者介面程式(graphical user interface)、工具程式(utilities)及使用者 應用程式(user application)等,以上的嵌入 式軟體其設計的困難度與是否接近硬體正 比,例如,設計啟動載入程式(Boot loader) 的難度可能是數十、數百或數千倍於設計 使用者應用程式(user application),因此,

對於要在極短的產品上市時間內實現產品 所需的軟體功能將是一件高度困難的任 務。

二、系統架構

圖 1 為 ARM9 S3C2410 〈PreSOCes〉

[1] 嵌入式系統開發平台系統架構圖 ,由 Creator 母板,Creator 920T-S3C2410 子板 及含 Touch panel 之 TFT 觸控式螢幕所組 成 ; Creator 母 板 配 備 有 2MByte Flash Memory、16MByte SDRAM 及其他 I/O;

為了使系統架構具有擴充的延展性,可在

(2)

Creator 母板上堆疊 Creator 920T-S3C2410 子板強化系統功能,該子板包含 Samsung ARM9 CPU、Audio 驅動晶片及 USB 連接 埠;此外,此子板尚可再外加一片含 Touch panel 之 TFT 觸控式螢幕,以提供高親和 性之圖形化人機介面,圖 2 為 Creator 母 板,920T-S3C2410 子板及 TFT 觸控式螢 幕開發實驗平台。

Touch Screen

LCD USB Audio Chip

Master Board

Mother Board Bus

Flush Memory SDRAM ARM 9 Power

圖 1. 嵌入式系統實驗平台架構圖

圖 2. 開發實驗平台

三、嵌入式 GUI 架構

圖 3 為開發嵌入式系統 GUI 架構 圖,分別由硬體層、嵌入式作業系統層、

圖形化作業系統層、應用程式工具層及使 用者應用程式層所組成,第二層及第三層 均為作業系統層,其差異點在於使用者介 面的展現不同。從另一個角度之硬體層往 上包含基本輸入輸出系統程式(BIOS)、啟 動載入程式(Boot loader)、週邊驅動程式 (driver) 、 作 業 系 統 程 式 (operation system)、圖形化使用者介面程式(graphical

user interface)、工具程式(utilities)及使用者 應用程式(user application)等。

由於嵌入式系統的硬體架構繁如星 斗,因此,若設計無作業系統之嵌入式系 統的產品,設計者往往必須自行開發以組 合語言為基礎的應用程式,使用組合語言 雖然可達到精確控制硬體的優點,但其缺 點是程式可移植性低、開發時程長及效率 低,因此,另一種解決方案是在嵌入式系 統內植入作業系統,由於此架構具有高可 移植性、開發時程短及程式設計困難度低 等優點,因此成為嵌入式系統的主要設計 架構。

圖 3. 嵌入式系統 GUI 架構圖

本論文之嵌入式 GUI 應用程式設計 流程如下:首先,我們選擇開放原碼之作 業 系 統 並 植 入 核 心 版 本 為 2.4.18 之 Embedded Linux,接下來我們植入高親和 性的圖形化使用者介面 MiniGUI [3] 做 為互動的人機介面,由於 MiniGUI 已提供 若干工具程式及函數,故設計者可將設計 重心聚焦於第五層的應用程式中,而為了 達成嵌入式系統開機後立即執行應用程式 的目的,我們針對作業系統之開機服務進 行 shell 程式設計,另外,使用者在執行應 用程式時可能會有中斷後再啟動而造成程 序無法正常執行的情形,因此,我們透過

(3)

程序的管理來解決此問題,最後,我們藉 由修改作業系統核心程式來配置最適當之 記憶體空間以容納 kernel、boot loader、file system 及 user application。

四、嵌入式 GUI 應用程式-以動 態顯示歌詞之 MP3 音樂播放器為例

在眾多消費性電子產品中,MP3 音樂 播放器一直是最受消費者青睞的電子產品 之一,但是,綜觀目前的可攜式 MP3 音樂 播放器的功能除了具有播放相關功能外,

還提供音量調整及播放模式功能,至於歌 詞顯示的功能,總是不在 MP3 音樂播放器 的設計的範疇中,縱然有歌詞顯示的功能 也僅僅設計在 LCD 的小小界面中,對於設 計具有動態顯示歌詞於 TFT LCD 之界面 的產品總是未被納入至可攜式 MP3 音樂 播放器的標準功能內,但如果可以成功開 發出嵌入式動態歌詞之 MP3 音樂播放 器,將使該產品搖身一變為可攜性 KTV,

而新功能的加入必能創造另一波可攜性 MP3 音樂播放器的銷售高峰。

圖 4 為 GUI 應用程式功能配置圖,

分別由標題列、功能列、歌名顯示區、歌 詞顯示區、開發名稱列及工具列所組成,

功能列提供的功能從左至右依序為播放、

停止、開啟檔案(目錄)、上一首、下一首、

降低音量、提高音量、掛載 USB 碟、卸載 USB 碟、顏色配置、模式選擇等按鈕,至 於最下一列工具列則顯示目前音量設定 值,音量從小到大為 0 到 9,其中 0 為靜 音,9 為最大;時間欄顯示目前音樂已播 放的時間,而模式欄則顯示播放模式為循 序播放、隨機播放或重覆播放。另外,在 中間區域則為歌詞顯示區,若播放中歌曲 的有歌詞檔,當使用者按下功能列中的播 放鈕後,歌詞會隨著歌曲演唱的內容由下 往上捲動,播完第一首後接著播第二首,

第三首,…,但若播放之歌曲未提供歌詞 檔,系統會出現無歌詞的訊息。

製作動態顯示歌詞之 MP3 音樂播放 器的方法如下:首先我們先讀取儲存歌詞 之 TXT 文字檔案,接著我們呼叫 MiniGUI 提供的函數進行歌詞顯示視窗的捲動控制

音量: 時間 模式 標題列

功能列 歌名顯示列

歌詞顯示區 10 列

開發隊名列

圖 4. GUI 應用程式功能配置圖

圖 5. 動態顯示歌詞

圖 6. 無歌詞之輸出

及捲軸控制,最後,我們以每秒顯示 3 列 的方式進行歌詞輸出並且往上捲動一列來 達到「動態顯示歌詞」的功能,圖 5 為動 態顯示歌詞功能圖,圖 6 為無歌詞的提示 文字。

(4)

為了提供更多元的播放方式,我們提 供三種不同的播放方式,目前已完成設計 的播放模式有循序播放(Sequential)、隨機 播放(Random)及重覆播放(Repeat)三種,使 用者可以操作觸控筆點選功能列最右邊圖 示進行播放模式的設定,當使用者設定完 畢之後,播放模式的結果會顯示在 TFT LCD 觸控式螢幕工具列的最右邊。

除了設計動態歌詞及播放模式的功能 外,為了讓使用者能更方便的更換音樂,

我們也針對掛載 USB 的功能進行整合,我 們提供 USB 的掛載及卸載功能方便使用 者更換 USB 裝置,使用者只要接上 USB 裝置並選取功能表列的掛載按鈕即完成 USB 裝置的掛載,接著使用者可透過功能 列的開啟舊檔圖檔進行操作 USB 裝置,若 播放之 MP3 歌曲有與歌名相同的歌詞文 字檔,系統除了會播放 MP3 歌曲外還會在 TFT 螢幕上顯示動態歌詞。也就是說,使 用者可將其 MP3 音樂檔及歌詞檔存在 USB 後進行音樂播放及動態顯示歌詞的 功能。提供 USB 掛載及卸載功能除了可以 達到使用者即時更新歌曲的目的外,若使 用者發現歌詞有錯誤,也可藉由本功能達 到編輯並修正錯誤歌詞的目的。

五、微調動態顯示歌詞

由於歌曲本身包含有時間因素的結構 性,因此,本系統在規劃設計及系統分析 階段定義動態歌詞以每秒輸出 3 列歌詞的 方式來達成顯示動態歌詞的目的,但在設 計階段實驗過程中,當我們以每秒輸出 3 列歌詞的方式進行顯示動態歌詞時,所得 到的實驗結果是播放中的歌曲與歌詞會有 不一致的情形,也就是說,播放歌曲演唱 到 1 分 03 秒時,但歌詞卻是顯示 45 秒的 歌詞,因此,我們進行系統除錯實驗,根 據除錯實驗結果發現造成系統不一致的原 因是實驗平台的系統本身因為必須要管理 作業系統的多執行緒所造成系統的延遲,

因此我們修正顯示動態歌詞的頻率為每 0.67 秒輸出 3 列歌詞並往上捲動一列,所 得到的實驗結果趨近於系統分析階段定義 之功能因而解決實驗平台系統延遲問題。

六、結論

設計嵌入式系統幾乎等同於設計一台 微型個人電腦,因此其設計之複雜及困難 度相當高。本研究是以一個 ARM9 微處理 器做為開發平台,繼而分別植入 Embedded Linux 及 MiniGUI 後,再開始進行 GUI 應 用程式的設計工作。此架構的優點在於設 計者無需碰觸到低階的硬體、作業系統程 式與多執行緒處置,以便設計者聚焦於應 用程式的設計。此外嵌入式 GUI 架構還具 有高可移植性、短開發時程、低複雜度及 困難度之優點。

七、參考文獻

[1] 嵌 入 式 系 統 開 發 實 驗 平 台 ,

http://www.microtime.com.tw/product/p roduct.htm

[2] 新華電腦股份有限公司, “Embedded

Linux 在 ARM9 S3C2410 (PreSOCes) 上實作," 頁 1-14, 全華科技圖書股 份有限公司.

[3] 嵌 入 式 系 統 圖 形 化 人 機 介 面 ,

http://www.minigui.org.

[4] 嵌入式系統圖形化人機介面中文字型,

http://www.minigui.com/cindex.shtml.

[5] 范揚興, 張保榮, 徐龍政, 黃偉杰,

張詠筌及鄭博文, “嵌入式動態歌詞 之 MP3 音樂播放器," 2007 年第一 屆高應大創意網 e 化競賽, 6 月 21 日, 2007. 高雄, 台灣.

[6] Trong-Yen Lee, Yang-Hsin Fan,

Tsung-Hsun Yang, Chia-Chun Tsai,Wen-Ta Lee and Yuh-Shyan Hwang, “RCGES:Retargetable Code Generation for Embedded Systems,” In Proceeding of the International Conference on 2nd Automated Technology for Verification and Analysis, ATVA, pp. 415-425, Nov. 2004.

[7] T.-Y. Lee and P.-A. Hsiung, “Embedded software synthesis and prototyping,”

IEEE Transactions on Consumer Electronics, vol. 50, no. 1, pp. 386-392, Feb. 2004.

數據

圖 1. 嵌入式系統實驗平台架構圖  圖 2. 開發實驗平台  三、嵌入式 GUI 架構  圖 3 為開發嵌入式系統 GUI 架構 圖,分別由硬體層、嵌入式作業系統層、 圖形化作業系統層、應用程式工具層及使 用者應用程式層所組成,第二層及第三層 均為作業系統層,其差異點在於使用者介 面的展現不同。從另一個角度之硬體層往 上包含基本輸入輸出系統程式(BIOS)、啟 動載入程式(Boot loader)、週邊驅動程式 (driver) 、 作 業 系 統 程 式 (operation  system)、圖形化使

參考文獻

相關文件

三角板、橢圓形板、正方形板、圈圈板、圓 規、量角器……等,但 不含具有桌面功能之 圖板 或製圖板),並得自備

PVC 管加工可使用彈簧及已繪製尺寸之模板(僅限平面式,不得有立體成型)

能督導工程人員依施 工圖說之規定完成模 板材料之選用及模板

Lamello 鍵片接或溝槽接及木螺釘等接合,抽 屜與箱體間使用滑木推拉,門板或蓋板與箱體

港式餐廳 外場主任、港式餐廳 外場領班、港式餐廳 外場服務 員、港式餐廳 外場兼職人員、美食街內場人員、鐵板燒 外場

表 6.3.2 為不同電壓下,驅動整個系統運作所需電流。圖 6.3.2 為 測試情形。其中紅燈代表正常工作。結果證明只要太陽能板能夠提供

– One of the strengths of CKC Chinese Input System is that it caters for the input of phrases to increase input speed.. „ The system has predefined common Chinese phrases, such

住友商事株式會社與挪威的 Tomra 系統公司所屬的合資子公司 Tomra(日本)公 司啟動了一個回收中心系統,用於回收 PET 瓶和廢紙,該系統安裝在東京 Machida-shi 福得旺超市的