777精品久无码人妻蜜桃-欧美在线观看视频一区-99精品网-伊人网中文字幕-99福利网-国产精品99久久久久久武松影视-日本黄色片免费看-免费观看高清在线观看-人妻少妇被粗大爽9797pw-日韩国产在线播放-国产日产成人免费视频在线观看-一区二区人妻-午夜看毛片-国产精品s-午夜免费av-国产精品色情国产三级在-国产精品资源在线

探究MiniGUI到EV44B0Ⅱ上移植

來源:期刊VIP網(wǎng)所屬分類:光電技術(shù)時(shí)間:瀏覽:次

  摘 要:詳細(xì)介紹了MiniGUI到EV44B0II的移植過程,主要就是編寫適用于目標(biāo)硬件的GAL圖形引擎和IAL輸入引擎。上述移植可以快速構(gòu)建一個(gè)可視化軟件系統(tǒng),“嵌入式Linux+MiniGUI圖形系統(tǒng)”的設(shè)計(jì)模式是嵌入式可視化軟件系統(tǒng)較理想的設(shè)計(jì)模式,將大大縮短嵌入式可視化軟件的開發(fā)周期。

  關(guān)鍵詞:MiniGUI;圖形引擎;EV44B0II;移植

  引言

  要在自己的ARM嵌入式系統(tǒng)[1]中使用MiniGUI,首先目標(biāo)板要有足夠的硬件資源;之后為目標(biāo)板編寫MiniGUI的圖形引擎(GAL)和輸入引擎(IAL)[2];接下來就可以配置MiniGUI交叉編譯MiniGUI函數(shù)庫及其應(yīng)用程序;編譯通過后,就可以在目標(biāo)板上搭建MiniGUI應(yīng)用環(huán)境;最后就可以啟動MiniGUI應(yīng)用程序了。

  1 MiniGUI

  只要某個(gè)硬件平臺上運(yùn)行有MiniGUI所支持的操作系統(tǒng),MiniGUI就能在這個(gè)平臺上運(yùn)行。MiniGUI本身的占用空間非常小,在2MB到4M左右。在某些系統(tǒng)上,尤其是在傳統(tǒng)嵌入式操作系統(tǒng)中,功能完備的MiniGUI系統(tǒng)本身所占用的空間可進(jìn)一步縮小到1MB以內(nèi)。和其它針對嵌入式產(chǎn)品的圖形系統(tǒng)相比,MiniGUI對系統(tǒng)的需求具有如下幾大優(yōu)勢:可伸縮性強(qiáng)、輕型、占用資源少、高性能、高可靠性和可配置性。

  2 移植過程

  2.1在PC機(jī)上安裝MiniGUI

  將MiniGUI函數(shù)庫源代碼、資源文件復(fù)制到PC機(jī)的Linux操作系統(tǒng)的特定目錄下,解壓,以便于進(jìn)行交叉編譯。在“終端”窗口使用以下命令完成解壓,對于較長的文件名或目錄名,可以使用“*”通配符指定。

  #cd /home/minigui

  #tar zxf lib*.gz

  #tar zxf mini*.gz

  #tar zxf mg*.gz

  2.2 MiniGUI的GAL移植

  MiniGUI引入了圖形抽象層和輸入抽象層(Graphics and Input Abstract Layers,即GAL和IAL)的概念。在libminigui-str-1.6.2/src/gal/native目錄下建立一個(gè)源文件commlcd.c,編寫老的GAL接口的幾個(gè)接口函數(shù)[3]。

  //使用native圖形引擎的數(shù)據(jù)結(jié)構(gòu)和fb(Framebuffer)的驅(qū)動程序

  #include "native.h"

  #include "fb.h"

  #include "lcddrive.h"

  //圖形引擎初始化函數(shù)

  //初始化正確返回PSD結(jié)構(gòu),否則返回NULL

  Static PSD fb_open(PSD psd)

  { PSUBDRIVER subdriver;

  TftInit();

  Fprintf(stderr,"GAL Common engine:Init LCM!\n");

  psd->planes=1; //單屏

  #if SWAP_XY_EN==1

  psd->xres=GUI_LCM_YMAX;

  psd->yres=GUI_LCM_XMAX;

  #else

  psd->xres=GUI_LCM_XMAX;

  psd->yres=GUI_LCM_YMAX;

  #endif

  };

  在libminigui-str-1.6.2/src/gal/native目錄下建立液晶驅(qū)動程序文件lcddrive.c和lcddrive.h,由于在lcddrive.c文件中使用了S3C44B0的頭文件,所以要將此文件復(fù)制到libminigui-str-1.6.2/src/gal/native目錄下。設(shè)置libminigui-str-1.6.2/src/gal/native目錄下的Makefile.am文件,在lib_native_la_SOURCES變量最后加入lcddrive.c和commlcd.c等文件。

静海县| 长顺县| 台山市| 武宣县| 旺苍县| 龙南县| 云浮市| 潞城市| 永川市| 定襄县| 浠水县| 龙江县| 星座| 右玉县| 禹州市| 安新县| 中牟县| 改则县| 明溪县| 凭祥市| 华阴市| 章丘市| 南江县| 乐都县| 厦门市| 珲春市| 北流市| 华亭县| 友谊县| 六安市| 新平| 额尔古纳市| 克什克腾旗| 安平县| 东宁县| 丰县| 永州市| 安岳县| 大姚县| 玉溪市| 万盛区|