<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          關(guān) 閉

          新聞中心

          EEPW首頁(yè) > 安全與國(guó)防 > 設(shè)計(jì)應(yīng)用 > 基于嵌入式技術(shù)的MultiBus-CPU模塊設(shè)計(jì)

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

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

            

            數(shù)組里每個(gè)元素的第1個(gè)值代表寄存器的名稱,第2個(gè)值代表要設(shè)定的數(shù)值(1個(gè)十六進(jìn)制的數(shù))。32h寄存器用于設(shè)定LCD顯示的水平像素?cái)?shù)目,計(jì)算方法是把第2個(gè)值轉(zhuǎn)換成十進(jìn)制,加1再乘以8就得出水平像素。例如,0x63換算成十進(jìn)制為99,加1乘以8就是800。38h和39h寄存器分別設(shè)置成0x57和Ox02,就可以顯示600的垂直分辨率。計(jì)算方法是以39h寄存器的bitO和bitl位為高位,38h寄存器的bit0~bit7為低位,組成的一個(gè)十六進(jìn)制的數(shù),再轉(zhuǎn)換成十進(jìn)制。除了要修改這3個(gè)寄存器外,34h和3Ah這兩個(gè)寄存器也會(huì)對(duì)顯示的分辨率有影響。

            幀緩沖設(shè)備也屬于字符設(shè)備,要通過(guò)“文件層一驅(qū)動(dòng)層”的接口方式來(lái)對(duì)LCD進(jìn)行驅(qū)動(dòng),就必須對(duì)File_operationes數(shù)據(jù)結(jié)構(gòu)的參數(shù)fh_ops進(jìn)行填充,并實(shí)現(xiàn)其對(duì)應(yīng)的成員函數(shù)。本系統(tǒng)在include/Limix/fb.h中定義了幀緩沖區(qū)的文件操作,部分代碼如下:



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



            接下來(lái)把一些調(diào)用的函數(shù)寫(xiě)完整,編寫(xiě)好程序后用arm-linux-gcc編譯驅(qū)動(dòng);然后對(duì)其動(dòng)態(tài)加載,或靜態(tài)將其編譯到Linux內(nèi)核;加載完程序后,就可以編寫(xiě)應(yīng)用程序進(jìn)行讀/寫(xiě)等操作了。

            4.2 MiniGUI的移植

            在嵌入式開(kāi)發(fā)環(huán)境中,獨(dú)立的顯示操作人機(jī)界面是非常必要的。它可以使嵌入式系統(tǒng)對(duì)PC系統(tǒng)的依賴性降到最低,可以直接操作嵌入式系統(tǒng)并顯示運(yùn)行結(jié)果。MultiBus-CPU采用標(biāo)準(zhǔn)的USB鍵盤、USB鼠標(biāo)、VGA顯示器作為人機(jī)交互界面,使用習(xí)慣類同于PC機(jī),簡(jiǎn)易了開(kāi)發(fā)者的開(kāi)發(fā)過(guò)程,并且用戶的使用過(guò)程也變得簡(jiǎn)單、快捷、易于操作。

            MiniGUI是遵循GPL條款發(fā)布的自由軟件,其目標(biāo)是為基于Linux的實(shí)時(shí)嵌入式系統(tǒng)提供一個(gè)輕量級(jí)的圖形用戶界面支持系統(tǒng)。與QT/Embedded、MicoroWindows等其他GUI相比,MiniGUI的最顯著特點(diǎn)就是輕型、占用資源少。據(jù)稱MiniGUI能夠在CPU主頻為30MHz、僅有4 MB RAM的系統(tǒng)上正常運(yùn)行,這是其他多種GUI所無(wú)法達(dá)到的。

            MiniGUI在AT91RM9200上的移植包括4個(gè)步驟:

           ?、贅?gòu)建Linux交叉編譯環(huán)境。通常使用的交叉編譯工具是arm-Linux-gcc2.95.3版本。下載此交叉編譯工具后在Linux內(nèi)安裝好,并且在PATH中添加/usr/local/arm-Linux/bin路徑,交叉編譯環(huán)境就構(gòu)建好了。

           ?、诮徊婢幾gMiniGUI,這是最關(guān)鍵的一步。首先從網(wǎng)上下載MiniGUI源程序包(包括庫(kù)文件和資源文件),以及其他支持圖形界面的源程序包;然后用上一步安裝好的交叉編譯工具對(duì)其進(jìn)行編譯,編譯時(shí)可指定編譯后庫(kù)文件及資源文件的安裝位置。

           ?、劭截怣iniCUI資源到開(kāi)發(fā)板。將第2步編譯好的庫(kù)文件及資源文件拷貝到開(kāi)發(fā)板上??截愔跋扔胊rm-Linux-strip命令清除文件中的調(diào)試信息,這樣就使文件體積大大縮小,可以滿足嵌入式系統(tǒng)的需要。

           ?、馨遢dLinux的MiniGUI環(huán)境配置。將第2步安裝好的MiniGUI配置文件MiniGUI.cfg下載到板子中,并將其中fbcon的defaultmode設(shè)置為合適的顯示模式。

          結(jié) 語(yǔ)

            本文基于設(shè)計(jì)了一種MultiBus-CPU模塊,能夠滿足各種嵌入式開(kāi)發(fā)環(huán)境的設(shè)計(jì)要求。該模塊軟硬件均采用模塊化設(shè)計(jì),采用國(guó)外廣泛應(yīng)用的ModBus通信協(xié)議,可滿足工業(yè)現(xiàn)場(chǎng)的測(cè)控需要。


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

          評(píng)論


          相關(guān)推薦

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

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();