大地资源网视频在线观看新浪,日本春药精油按摩系列,成人av骚妻潮喷,国产xxxx搡xxxxx搡麻豆

您現(xiàn)在的位置:智能制造網(wǎng)>技術(shù)中心>基于AT91SAM9261的MiniGUI移植

直播推薦

更多>

企業(yè)動(dòng)態(tài)

更多>

推薦展會(huì)

更多>

基于AT91SAM9261的MiniGUI移植

2010年03月10日 19:23:32人氣:3065來(lái)源:杭州邁沖科技有限公司

 

基于AT91SAM9261MiniGUI移植
1、圖形用戶界面MiniGUI 簡(jiǎn)介
MiniGUI 是遵循GPL 條款發(fā)布的自由軟件,其目標(biāo)是為基于Linux的實(shí)時(shí)嵌入式系統(tǒng)提供一個(gè)輕量級(jí)的圖形用戶界面支持系統(tǒng)。與QT/Embedded、MicoroWindows 等其它GUI 相比,MiniGUI的zui顯著特點(diǎn)就是輕型、占用資源少。據(jù)稱(chēng)MiniGUI 能夠在CPU主頻為30MHz,僅有4MB RAM 的系統(tǒng)上正常運(yùn)行, 這是其它多種GUI所無(wú)法達(dá)到的。目前,MiniGUI已經(jīng)非常成熟和穩(wěn)定,并且在許多實(shí)際產(chǎn)品和項(xiàng)目中得到了應(yīng)用。
2、MiniGUI在AT91SAM9261開(kāi)發(fā)板上的移植過(guò)程
(1)       構(gòu)建Linux 交叉編譯環(huán)境
使用的交叉編譯工具鏈?zhǔn)莂rm-linux-gcc-3.4.1.tar.bz2。
詳細(xì)步驟:
[root@localhost /]# tar zxvf arm-linux-gcc-3.4.1.tar.bz2
[root@localhost /]# vi ~/.bashrc
在.bashrc 添加一行 export PATH=/usr/local/arm/3.4.1/bin/:$PATH
保存退出后執(zhí)行
[root@localhost /]# source ~/.bashrc
至此交叉編譯環(huán)境已經(jīng)建立好了。
(2)       交叉編譯MiniGUI
首先,從網(wǎng)上/download/cindex.shtml) 得到MiniGUI 的源程序包,包括三個(gè)部分:
libminigui-1.6.2.tar.gz——MiniGUI函數(shù)庫(kù)源代碼;
miniguires- 1.6.2.tar.gz——MiniGUI所使用的資源,包括基本字體、圖標(biāo)、位圖等;
mg-samples-str-1.6.2. tar.gz——MiniGUI的演示程序。
首*行M i n i G U I 函數(shù)庫(kù)的編譯和安裝。解開(kāi)libminigui-1.6.2.tar.gz軟件包,進(jìn)入該目錄,運(yùn)行./configure腳本
CC=arm-linux-gcc
./configure --prefix=/usr/local/arm/3.4.1/arm-linux
    --build=i386-linux
    --host=arm-linux
    --target=arm-linux
生成定制的Makefile 文件,然后可以繼續(xù)執(zhí)行make 和make install命令編譯并安裝libminigui,安裝成功后,MiniGUI 的函數(shù)庫(kù)和頭文件以及配置文件等資源將被安裝到/usr/local/arm/3.4.1/arm-linux 目錄中,具體情況為:函數(shù)庫(kù)被裝在lib/子目錄中;頭文件被裝在include/ 子目錄中;手冊(cè)被裝在man/ 子目錄中;配置文件被裝在etc/ 子目錄中。
下面進(jìn)行MiniGUI資源的編譯安裝。解壓minigui-res-1.6.2.tar.gz,進(jìn)入相應(yīng)目錄。這里需要說(shuō)明的是,在執(zhí)行 make install操作之前,需要對(duì)目錄中的configure.linux文件做一些修改。打開(kāi)configure.linux文件,你會(huì)發(fā)現(xiàn)prefix 選項(xiàng)部分的默認(rèn)值為$(TOPDIR)/usr/local,需要將這里修改為prefix=$(TOPDIR)/ usr/local/arm/3.4.1/arm-linux/,這樣執(zhí)行make install 操作之后,安裝腳本會(huì)自動(dòng)把MiniGUI資源文件安裝到/usr/local/arm/3.4.1/arm-linux/lib/minigui/res/目錄下。
zui后,編譯并安裝MiniGUI 的演示程序。解壓mg-samples-str-1.6.2. tar.gz,執(zhí)行腳本:
CC=arm-linux-gcc
CFLAGS=-I/usr/local/arm/3.4.1/arm-linux /include
LDFLAGS=-L/usr/local/arm/3.4.1/arm-linux /lib
./configure
    --build=i386-linux
    --target=arm-linux
    --host=arm-linux
執(zhí)行make操作, 完成演示程序的編譯。
(3)       拷貝MiniGUI 資源到開(kāi)發(fā)板
進(jìn)入/usr/local/arm/3.4.1/arm-linux/目錄,在etc,lib子目錄下有我們需要拷貝到目標(biāo)機(jī)上的資源。將lib下的libminigui.a ,libminigui.la兩個(gè)庫(kù)文件拷貝到9261板子的文件系統(tǒng)/usr/local/lib,將lib/minigui/res/的所有文件也拷貝到9261板子的文件系統(tǒng)/usr/local/lib/minigui/res下,zui后將配置文件MiniGUI.cfg拷貝至9261板子文件系統(tǒng)的/usr/local/etc/目錄下。重新制作文件系統(tǒng),燒寫(xiě)至9261板子的NANDFLASH中。
(4)       板載Linux 的環(huán)境配置
修改MiniGUI.cfg文件,主要幾個(gè)參數(shù)如下:
[system]
ial_engine=console
mdev=/dev/input/mouse0
mtype=PS2
[fbcon]
defaultmode=480x272-16bpp
板子的輸入設(shè)備是USB的鼠標(biāo)、鍵盤(pán),輸出設(shè)備是群創(chuàng)4.3寸TFT液晶屏。
(5)       MiniGUI運(yùn)行
拷貝mg-samples-str-1.6.2/src/下的顯示程序到9261板子上,運(yùn)行button程序,效果如下。
3、增加MiniGUI 1.6的中文支持
       minigui-res-1.6.2版本里的字體中是沒(méi)有中文字庫(kù)的,不能正常顯示中文,我們需要通過(guò)移花接木來(lái)增加MiniGUI 1.6對(duì)中文的支持。
       minigui-res-1.3.3里面的font就有兩個(gè)中文字庫(kù),分別是song-12-gb2312.bin和song-16-gb2312.bin,把這兩個(gè)字庫(kù)復(fù)制到我們的res編譯的路徑/usr/local/arm/3.4.1/arm-linux/lib/minigui/res/font下。因?yàn)橐@示中文,用上剛才下載的字庫(kù)(內(nèi)建資源),就要使內(nèi)建資源可用,這個(gè)是在執(zhí)行./configure時(shí)設(shè)置的。編譯mg-libminigui-1.6.2時(shí)的./configure另外加上選項(xiàng)--enable-incoreres=yes --enable-rbfgb12=yes --enable-rbfgb16=yes 。重新編譯安裝。
       修改/usr/local/arm/3.4.1/arm-linux/lib/minigui/res/font/font.name文件,在其中增加兩行:
        song-12-gb2312.bin Raw Bitmap Font   rbf-fixed-rrncnn-12-12-GB2312.1980-0
        song-16-gb2312.bin Raw Bitmap Font   rbf-fixed-rrncnn-16-16-GB2312.1980-0
MiniGUI的配置文件中進(jìn)行修改,MiniGUI的應(yīng)用程序便可顯示中文了。
MiniGUI.cfg的[systemfont]和[rambitmap font]就要做相應(yīng)的改動(dòng),如下:
# The first system font must be a logical font using RBF device font.
[systemfont]
font_number=3
font0=rbf-fixed-rrncnn-8-16-ISO8859-1
font1=rbf-fixed-rrncnn-12-12-GB2312.1980-0
font2=rbf-fixed-rrncnn-16-16-GB2312.1980-0
default=1
wchar_def=1
fixed=1
caption=2
menu=1
control=1
[rawbitmapfonts]
font_number=3
name0=rbf-fixed-rrncnn-8-16-ISO8859-1
fontfile0=/usr/local/lib/minigui/res/font/8x16-iso8859-1.bin
name1=rbf-fixed-rrncnn-12-12-GB2312.1980-0
fontfile1=/usr/local/lib/minigui/res/font/song-12-gb2312.bin
name2=rbf-fixed-rrncnn-16-16-GB2312.1980-0
fontfile2=/usr/local/lib/minigui/res/font/song-16-gb2312.bin
重新編譯mg-sample-src-1.6.2時(shí)的./configure,要加上選項(xiàng)--with-lang=zhcn。再將MiniGUI 資源拷貝到開(kāi)發(fā)板,重新運(yùn)行例程,就可顯示中文了。
4、增加觸摸屏輸入
在libminigui-str-1.6.2/src/ial目錄下添加觸摸屏的接口驅(qū)動(dòng)程序,我是將libminigui-str-1.6.2自帶的S3C2410觸摸屏的代碼進(jìn)行適當(dāng)修改,并在編譯libminigui-str-1.6.2前./configure時(shí)增加--enable-smdk2410ial=yes,編譯進(jìn)了2410.c 2410.h這兩個(gè)文件。修改配置文件MiniGUI.cfg文件,
[system]
# GAL engine
gal_engine=fbcon
# IAL engine
ial_engine=SMDK2410
#ial_engine=console 
mdev=/dev/input/ts0
#mdev=/dev/input/mouse0
 
還要對(duì)觸摸屏進(jìn)行校準(zhǔn),可以移植tslib進(jìn)行校準(zhǔn)(參考tslib移植文檔)。
5、結(jié)語(yǔ)
MiniGUI 移植過(guò)程已通過(guò)實(shí)踐檢驗(yàn)。對(duì)于其它型號(hào)的開(kāi)發(fā)板而言, 移植過(guò)程大體相似。可以肯定,帶有簡(jiǎn)潔、美觀圖形用戶界面的嵌入式系統(tǒng)將會(huì)在更多的領(lǐng)域具有更好的實(shí)用價(jià)值。
全年征稿/資訊合作 聯(lián)系郵箱:1271141964@qq.com

免責(zé)聲明

  • 凡本網(wǎng)注明"來(lái)源:智能制造網(wǎng)"的所有作品,版權(quán)均屬于智能制造網(wǎng),轉(zhuǎn)載請(qǐng)必須注明智能制造網(wǎng),http://www.xashilian.com。違反者本網(wǎng)將追究相關(guān)法律責(zé)任。
  • 企業(yè)發(fā)布的公司新聞、技術(shù)文章、資料下載等內(nèi)容,如涉及侵權(quán)、違規(guī)遭投訴的,一律由發(fā)布企業(yè)自行承擔(dān)責(zé)任,本網(wǎng)有權(quán)刪除內(nèi)容并追溯責(zé)任。
  • 本網(wǎng)轉(zhuǎn)載并注明自其它來(lái)源的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)或證實(shí)其內(nèi)容的真實(shí)性,不承擔(dān)此類(lèi)作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個(gè)人從本網(wǎng)轉(zhuǎn)載時(shí),必須保留本網(wǎng)注明的作品來(lái)源,并自負(fù)版權(quán)等法律責(zé)任。
  • 如涉及作品內(nèi)容、版權(quán)等問(wèn)題,請(qǐng)?jiān)谧髌钒l(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。

<
更多 >

工控網(wǎng)機(jī)器人儀器儀表物聯(lián)網(wǎng)3D打印工業(yè)軟件金屬加工機(jī)械包裝機(jī)械印刷機(jī)械農(nóng)業(yè)機(jī)械食品加工設(shè)備制藥設(shè)備倉(cāng)儲(chǔ)物流環(huán)保設(shè)備造紙機(jī)械工程機(jī)械紡織機(jī)械化工設(shè)備電子加工設(shè)備水泥設(shè)備海洋水利裝備礦冶設(shè)備新能源設(shè)備服裝機(jī)械印染機(jī)械制鞋機(jī)械玻璃機(jī)械陶瓷設(shè)備橡塑設(shè)備船舶設(shè)備電子元器件電氣設(shè)備


我要投稿
  • 投稿請(qǐng)發(fā)送郵件至:(郵件標(biāo)題請(qǐng)備注“投稿”)1271141964.qq.com
  • 聯(lián)系電話0571-89719789
工業(yè)4.0時(shí)代智能制造領(lǐng)域“互聯(lián)網(wǎng)+”服務(wù)平臺(tái)
智能制造網(wǎng)APP

功能豐富 實(shí)時(shí)交流

智能制造網(wǎng)小程序

訂閱獲取更多服務(wù)

微信公眾號(hào)

關(guān)注我們

抖音

智能制造網(wǎng)

抖音號(hào):gkzhan

打開(kāi)抖音 搜索頁(yè)掃一掃

視頻號(hào)

智能制造網(wǎng)

公眾號(hào):智能制造網(wǎng)

打開(kāi)微信掃碼關(guān)注視頻號(hào)

快手

智能制造網(wǎng)

快手ID:gkzhan2006

打開(kāi)快手 掃一掃關(guān)注
意見(jiàn)反饋
關(guān)閉
企業(yè)未開(kāi)通此功能
詳詢客服 : 0571-87858618
主站蜘蛛池模板: 福贡县| 鄂托克旗| 商水县| 名山县| 洛宁县| 榆林市| 鄱阳县| 新竹县| 长沙县| 营口市| 文成县| 洱源县| 民和| 澎湖县| 永宁县| 宁远县| 个旧市| 永州市| 东海县| 化隆| 红河县| 淮阳县| 杭锦后旗| 白沙| 大名县| 页游| 维西| 和硕县| 车致| 洪江市| 宁城县| 固安县| 洪雅县| 贡觉县| 苗栗市| 荣成市| 沈丘县| 额敏县| 安化县| 常熟市| 三河市|