<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于S3C2440的MiniGUI移植

基于S3C2440的MiniGUI移植

作者: 時(shí)間:2012-07-17 來(lái)源:網(wǎng)絡(luò ) 收藏

摘要:隨著(zhù)嵌入式系統的發(fā)展,嵌入式圖形用戶(hù)界面需求越來(lái)越明顯,是目前比較成熟的嵌入式Linux系統的圖形用戶(hù)界面。為了滿(mǎn)足嵌入式圖形用戶(hù)界面的需求,將的處理器目標板。首先說(shuō)明了如何建立交叉環(huán)境,接著(zhù)討論 1.6.10庫和資源的,最后閘述運行環(huán)境的配置。實(shí)現了對開(kāi)發(fā)板的MiniGUI,完成嵌入式Linux圖形用戶(hù)界面的構建,并為其他嵌入式設備的移植提供借鑒。
關(guān)鍵詞:嵌入式系統;MiniGUI;;移植

隨著(zhù)嵌入式系統的迅速發(fā)展,圖形用戶(hù)界面(Graphic User Interface,GUI)需求越來(lái)越明顯。MiniGUI是面向實(shí)時(shí)嵌入式系統的輕量級圖形用戶(hù)界面支持系統,以輕型、占用資源少、高性能、可配置等特點(diǎn)廣泛應用于通信、醫療、工控、電子、機頂盒、多媒體等領(lǐng)域。本文正是針對這種需求,介紹如何在S3C240上移植MiniGUI的全過(guò)程。

1 圖形用戶(hù)界面MiniGUI
MiniGUI是由原清華大學(xué)教師魏永明主持開(kāi)發(fā)的輕量級圖形系統,遵循GPL公約。所支持的操作系統已不僅僅限于Linux,它還可以在μCli nux,μC/OS-Ⅱ,eCos和VxWorks等系統上運行。已驗證的硬件平臺包括Intelx86,ARM(ARM7/AMR9/StrongARM/xScale),Power-PC,MIP S,M68K(DragonBall/ColdFire)等。
1.1 MiniGUI與嵌入式系統的關(guān)系
MiniGUI具有良好的軟件架構,通過(guò)抽象層將MiniGUI上層和底層操作系統隔離開(kāi)來(lái)。如圖1所示,MiniGUI的應用程序一般通過(guò)ANSIC庫以及MiniGUI自身提供的API來(lái)實(shí)現自己的功能;MiniGUI中的“可移植層”可將特定操作系統及底層硬件的細節隱藏起來(lái),而上層應用程序則無(wú)需關(guān)系底層的硬件平臺輸出和輸入設備。

本文引用地址:http://dyxdggzs.com/article/148755.htm

a.JPG


1.2 MiniGUI體系結構
從結構上看,MiniGUI是分層設計的,層次結構如圖2所示。在底層,GAL和IAL為MiniGUI提供了底層的Linux控制臺或者X Window上的圖形接口以及輸入接口。中間層是MiniGUI的核心層,其中包括了窗口系統必不可少的各個(gè)模塊。最頂層的API向應用設計提供編程接口。

b.JPG



2 S3C2440開(kāi)發(fā)平臺簡(jiǎn)介
本文使用的目標平臺是三星公司推出的高度集成的S3C2440(ARM920T core with MMC),最高主頻可達532 MHz微處理器,提供64MB SDRA M,64 MBNAND FLASH以及2 MB NOR FLASH的存儲設備,另外包括IDE和PCMICA接口的豐富的外圍電路和多功能的擴展接口。S3C2440采用高性能ARM9微處理器以其優(yōu)化的片上性能,在視頻會(huì )議、樓宇的對講系統、網(wǎng)絡(luò )監控、GPS定位/導航儀、醫療電子設備、多媒體終端產(chǎn)品等應用領(lǐng)域有廣泛應用。

3 MiniGUI的移植
宿主主機系統為redhat Linux 9.0,要求完全安裝,移植步驟如下:
3.1 建立交叉編譯環(huán)境
在移植之前首先建立好交叉編譯環(huán)境,簡(jiǎn)單地說(shuō)是指在一個(gè)平臺上可以生成能在另一個(gè)平臺上運行的代碼,編譯工具為arm-linux-gcc-3.3.2。
#tar-xvjf rm-linux-gcc-3.3.2
默認的安裝路徑是/usr/local,為了避免每次設置PATH,在.bash_profile文件中增加PATH=/usr/local/arm/3.4.1bin:MYMPA TH,并運行以下命令:
#source.bash_profile
3.2 源代碼準備
從http://www.minigui.org/res.shtml下載源代碼包如下:
(1)libminigui-1.6.10.tar.gz:MiniGUI函數庫源代碼。
MiniGUI由3個(gè)函數庫的組成,它們分別是libminigui,libmgext和libvcongui。libminigui是提供窗口管理和圖形接口的核心函數庫,也提供了大量的標準控件;libmgext是libminigui的一個(gè)擴展庫,提供了一些高級控件及“文件打開(kāi)”、“顏色選擇”對話(huà)框等;libvcon gui則為L(cháng)inux操作系統提供了一個(gè)應用程序可用的虛擬控制臺窗口,從而可以方便地在MiniGUI環(huán)境中運行字符界面的應用程序,libmgext和libvcongui庫已經(jīng)包含在這個(gè)源代碼包中。
(2)minigui-res-1.6.10.tar.gz:MiniGUI所使用的資源,包括基本字體、圖標、位圖和鼠標光標。
(3)mg-smaples-1.6.10.tar.gz:配套示例程序。


上一頁(yè) 1 2 下一頁(yè)

關(guān)鍵詞: 移植 MiniGUI S3C2440 基于

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>