新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于嵌入式技術(shù)的MultiBus―CPU模塊設(shè)計

基于嵌入式技術(shù)的MultiBus―CPU模塊設(shè)計

作者: 時間:2010-06-25 來源:網(wǎng)絡(luò) 收藏

數(shù)組里每個元素的第1個值代表寄存器的名稱,第2個值代表要設(shè)定的數(shù)值(1個十六進制的數(shù))。32h寄存器用于設(shè)定LCD顯示的水平像素數(shù)目,計算方法是把第2個值轉(zhuǎn)換成十進制,加1再乘以8就得出水平像素。例如,0x63換算成十進制為99,加1乘以8就是800。38h和39h寄存器分別設(shè)置成0x57和0x02,就可以顯示600的垂直分辨率。計算方法是以39h寄存器的bitO和bitl位為高位,38h寄存器的bitO~bit7為低位,組成的一個十六進制的數(shù),再轉(zhuǎn)換成十進制。除了要修改這3個寄存器外,34h和3Ah這兩個寄存器也會對顯示的分辨率有影響。
幀緩沖設(shè)備也屬于字符設(shè)備,要通過“文件層-驅(qū)動層”的接口方式來對LCD進行驅(qū)動,就必須對File operationes數(shù)據(jù)結(jié)構(gòu)的參數(shù)fb_ops進行填充,并實現(xiàn)其對應(yīng)的成員函數(shù)。本系統(tǒng)在include/Linux/fb.h中定義了幀緩沖區(qū)的文件操作,部分代碼如下:

這個結(jié)構(gòu)中的每一個字段都必須指向驅(qū)動程序中實現(xiàn)特定操作的函數(shù)。對于不支持的操作,對應(yīng)的字段可以被置為NULL,或留到后續(xù)開發(fā)時再添加。本中實現(xiàn)特定操作的成員函數(shù)的代碼如下:

本文引用地址:http://butianyuan.cn/article/151769.htm



接下來把一些調(diào)用的函數(shù)寫完整,編寫好程序后用arm-linux-gcc編譯驅(qū)動;然后對其動態(tài)加載,或靜態(tài)將其編譯到Linux內(nèi)核;加載完程序后,就可以編寫應(yīng)用程序進行讀/寫等操作了。
4.2 MinilGUI的移植
開發(fā)環(huán)境中,獨立的顯示操作人機界面是非常必要的。它可以使系統(tǒng)對PC系統(tǒng)的依賴性降到最低,可以直接操作系統(tǒng)并顯示運行結(jié)果。-采用標準的USB鍵盤、USB鼠標、VGA顯示器作為人機交互界面,使用習(xí)慣類同于PC機,簡易了開發(fā)者的開發(fā)過程,并且用戶的使用過程也變得簡單、快捷、易于操作。
MiniGUI是遵循GPL條款發(fā)布的自由軟件,其目標是為基于Linux的實時嵌入式系統(tǒng)提供一個輕量級的圖形用戶界面支持系統(tǒng)。與QT/Em-bedded、MicoroWindows等其他GUI相比,MiniGUI的最顯著特點就是輕型、占用資源少。據(jù)稱MiniGUI能夠在主頻為30 MHz、僅有4 MB RAM的系統(tǒng)上正常運行,這是其他多種GUI所無法達到的。
MiniGUI在AT91RlM9200上的移植包括4個步驟:
①構(gòu)建Linux交叉編譯環(huán)境。通常使用的交叉編譯工具是arm-Linux-gcc2.95.3版本。下載此交叉編譯工具后在Linux內(nèi)安裝好,并且在PATH中添加/usr/loeal/arm-Linux/bin路徑,交叉編譯環(huán)境就構(gòu)建好了。
②交叉編譯MiniGUI,這是最關(guān)鍵的一步。首先從網(wǎng)上下載MiniGUI源程序包(包括庫文件和資源文件),以及其他支持圖形界面的源程序包;然后用上一步安裝好的交叉編譯工具對其進行編譯,編譯時可指定編譯后庫文件及資源文件的安裝位置。
③拷貝MiniGUI資源到開發(fā)板。將第2步編譯好的庫文件及資源文件拷貝到開發(fā)板上??截愔跋扔胊rm-Linux-strip命令清除文件中的調(diào)試信息,這樣就使文件體積大大縮小,可以滿足嵌入式系統(tǒng)的需要。
④板載Linux的MiniGUI環(huán)境配置。將第2步安裝好的MiniGUI配置文件MiniGUI.cfg下載到板子中,并將其中fbcon的defaultmode設(shè)置為合適的顯示模式。

結(jié)語
本文基于嵌入式技術(shù)了一種模塊,能夠滿足各種嵌入式開發(fā)環(huán)境的要求。該模塊軟硬件均采用模塊化,采用國外廣泛應(yīng)用的ModBus通信協(xié)議,可滿足工業(yè)現(xiàn)場的測控需要。

linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

上一頁 1 2 3 下一頁

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉