嵌入式Linux下基于MiniGUI的GIS實現(xiàn)
3、MiniGUI在2410上的移植
系統(tǒng)采用由韓國Samsung公司生產(chǎn)的ARM核32位RISC微處理器S3C2410;交叉編譯工具采用由韓國Mizi公司開發(fā)和維護的 armv41交叉編譯工具鏈;MiniGUI源代碼采用libminigui-1.3.3.tar.gz、minigui-res- 1.3.3.tar.gz和mg-samples-1.3.0.tar.gz。 本系統(tǒng)采用MiniGUI-Threads模式,移植過程如下:
1)將armv41交叉編譯工具鏈拷貝到/opt/host/arm41/bin/目錄下。
2)在pc機的根目錄下建立minigui-free目錄,在該目錄中建立nfsroot目錄。
3)將MiniGUI的源代碼copy到/minigui-free目錄。解壓縮這三個軟件包。
4)在libminigui中配置lib。
l cd /minigui-free/libminigui-1.3.3
l ./configure --host=arm-unknown-linux --enable-jpgsupport=no --enable-pngsupport=no --enable-gifsupport=no --disable-lite --prefix=/minigui-free/nfsroot --enable-smdk2410ial=yes
l 修改configure,在文件開頭處增加以下代碼:
CC=/opt/host/arm41/bin/arm41-unknown-linux-gcc
CPP=/opt/host/arm41/bin/arm41-unknown-linux-cpp
LD=/opt/host/arm41/bin/arm41-unknown-linux-ld
AR=/opt/host/arm41/bin/arm41-unknown-linux-ar
RANLIB=/opt/host/arm41/bin/arm41-unknown-linux-ranlib
STRIP=/opt/host/arm41/bin/arm41-unknown-linux-strip
l make
l make install
l 刪除/minigui-free/nfsroot中的minigui目錄, *.a, *.la文件。
l 執(zhí)行/opt/host/arm41/bin/arm41-unknown-linux-strip *。
5)配置res。
l cd /minigui-free/minigui-res-1.3.3
l 修改config.linux文件,指明TOPDIR=/minigui-free/nfsroot。
l make install
6)配置mg-sample。
l cd /minigui-free/mg-samples-1.3.1
l ./configure --build=i686-pc-linux-gnu --host=arm-unknown-linux --prefix=/minigui-free/nfsroot/ LDFLAGS=-L/minigui-free/nfsroot/lib CPPFLAGS=-L/minigui-free/nfsroot/include CFLAGS=-L/minigui-free/nfsroot/include
l configure文件的修改同4)。
l make
7)制作ramdisk。
l 將/minigui-free/nfsroot/lib中所有的庫文件copy到ramdisk的/lib中,將/minigui-free /nfsroot/usr/local/lib/minigui目錄copy到ramdisk的/lib目錄中。
l 在ramdisk中建立/usr/local目錄,在該目錄中建立連接ln –s /lib lib。
l Copy /minigui-free/MiniGUI.cfg文件到ramdisk的/etc目錄。
l Copy /minigui-free/mg-sample-1.3.1/src/目錄下所需要的文件到ramdisk中的/bin目錄。
8)將ramdisk燒寫到板子上。
4 GIS開發(fā)
在嵌入式產(chǎn)品中使用MiniGUI之前,開發(fā)人員通常先在PC機上安裝MiniGUI,然后使用PC機來編寫MiniGUI應(yīng)用程序,調(diào)試運行成功后再將其移植到嵌入式產(chǎn)品上運行。我們根據(jù)這種編程模式利用MiniGUI開發(fā)了一個地理信息系統(tǒng)。該系統(tǒng)能完成電子地圖的顯示、放大、縮小、漫游等基本功能,為提高系統(tǒng)性能,系統(tǒng)采用了以下處理技術(shù)。
4.1 系統(tǒng)數(shù)據(jù)組織形式
為了使系統(tǒng)取得合理的響應(yīng)時間,空間數(shù)據(jù)應(yīng)根據(jù)應(yīng)用目的、數(shù)據(jù)特點進行合理組織。由于嵌入式設(shè)備任意時刻屏幕顯示的圖形數(shù)據(jù)只是讀入數(shù)據(jù)的一部分,因此適當(dāng)減少非屏幕顯示區(qū)域的數(shù)據(jù),并不影響屏幕圖形數(shù)據(jù)的顯示。為此,系統(tǒng)將數(shù)據(jù)分為若干個數(shù)據(jù)卷,每個數(shù)據(jù)卷又包含多個數(shù)據(jù)集,-個數(shù)據(jù)集就是某個比例尺的地圖數(shù)據(jù)。一個數(shù)據(jù)集又分成若干個圖幅,一個圖幅又按矩形分塊方式劃分成若干個邏輯數(shù)據(jù)塊。在實際應(yīng)用中,按照每一點的坐標(biāo)確定其所在的塊。讀取數(shù)據(jù)時,只讀該點所在的數(shù)據(jù)塊,從而縮小了讀取的數(shù)據(jù)量,加快了顯示和分析的速度。
評論