μC/GUI在Nios II嵌入式平臺上的移植研究
摘要:為了使便攜式心電監(jiān)護(hù)儀具有友好的人機(jī)交互和方便的顯示,移植了一個GUI界面系統(tǒng)。以DE2-70配套開發(fā)板為驗證平 臺,TFTLCD IP核是在QuartusⅡ9.0軟件平臺下,使用Verilog在FPGA上用硬件邏輯電路進(jìn)行設(shè)計。該IP核是利用QuartusⅡ開發(fā)和其集成的 SOPC Builder系統(tǒng)開發(fā)工具而設(shè)計的。μC/GUI則是在配套開發(fā)軟件NiosⅡIDE中進(jìn)行移植實現(xiàn)。實驗結(jié)果表明,μC/GUI界面系統(tǒng)成功運行在開 發(fā)板上,可實現(xiàn)窗口管理、在指定位置顯示文字和顯示圖片等功能。
本文引用地址:http://www.ex-cimer.com/article/191461.htm 關(guān)鍵詞:μC/GUI;TFT LCD IP;SOPC;移植;NiosⅡ
便攜式醫(yī)療監(jiān)護(hù)儀已成為人們?nèi)粘I钪胁豢扇鄙俚囊徊糠帧1銛y式設(shè)備是由硬件與軟件緊湊組合的一個單元模塊,是一種體積小、智能化程度高、功能全、使用靈 活、操作方便的便攜機(jī),適合家庭使用、外出攜帶等用途。為了使便攜式心電監(jiān)護(hù)儀實現(xiàn)友好的人機(jī)交互和更加方便的顯示,這里提出一種GUI界面系統(tǒng)設(shè)計,就 是在基于NiosⅡ處理器的嵌入式平臺上實現(xiàn)μC/GUI的移植,使之實現(xiàn)系統(tǒng)功能。
1 μC/GUI的系統(tǒng)移植
1.1 μC/GUI簡介及可移植性分析
μC/GUI是Micrium公司開發(fā)的通用的嵌入式圖形用戶界面軟件,其中圖形用戶接口GUI(Graphical User Interface)。該界面軟件被設(shè)計用于為任何使用一個圖形LCD的應(yīng)用提供一個有效的不依賴于處理器和LCD控制器的圖形用戶接口。它能工作于單任 務(wù)或多任務(wù)的系統(tǒng)環(huán)境下。μC/GUI適用于使用任何LCD控制器和CPU的任何尺寸的物理和虛擬顯示,具有源代碼開放及模塊化設(shè)計的特點。
μC/GUI的代碼全部用ANSI的C語言編寫的,具有很強(qiáng)的移植性。由于μC/GUI采用分層結(jié)構(gòu),即具有驅(qū)動接口層和應(yīng)用層,因此可方便地移植到各種 CPU下使用。μC/GUI對各類圖像LCD顯示器具有良好的支持,并且有常見的2D圖形庫和窗口管理功能,而且消耗較少的系統(tǒng)資源,占用RAM和ROM 的空間很小。在典型的應(yīng)用中,μC/GUI需要的資源如表1所示。由表1可見,運行μC/GUI需要的系統(tǒng)資源不是很多,并支持幾乎所有類型的CPU與大 多數(shù)的LCD模塊,μC/GUI的源代碼規(guī)模適中,移植過程中可將不需要的代碼進(jìn)行剔除,而且結(jié)構(gòu)層次清晰,因此適合用于嵌入式系統(tǒng)中。
1.2 μC/GUI移植原理
嵌入式用戶圖形界面系統(tǒng)μC/GUI與嵌入式實時操作系統(tǒng)μC/OS-Ⅱ都是美國Micrium公司產(chǎn)品,μC/GUI能更輕易地在 μC/OS-Ⅱ上應(yīng)用,實現(xiàn)與μC/0S-Ⅱ的無縫結(jié)合。在NiosⅡ嵌入式系統(tǒng)中,Altera公司已經(jīng)將μC/OS-Ⅱ操作系統(tǒng)移植成功并且提供使 用,所做的工作是將μC/GUI移植到NiosⅡ嵌入式平臺之上,使其能與μC/OS-Ⅱ操作系統(tǒng)結(jié)合使用,采用μC/GUI 3.98版本的源代碼進(jìn)行移植。
μC/GUI的軟件體系結(jié)構(gòu)如圖1所示,μC/GUI函數(shù)庫為用戶程序提供GUI接口,包含的函數(shù)有文本、數(shù)值、二維圖形、輸入設(shè)備以及各種窗口對象。其 中,輸入設(shè)備可以是鍵盤、鼠標(biāo)或觸摸屏;二維圖形包括圖片、直線、多邊形、圓、橢圓、圓弧等;窗口對象包括按鈕、編輯框、進(jìn)度條、復(fù)選框等。
μC/GUI函數(shù)庫可以通過GUIConf.h文件進(jìn)行配置,包括內(nèi)存設(shè)備,窗口管理器,支持操作系統(tǒng)、觸摸屏,以及配置動態(tài)內(nèi)存的大小等。在移植中,需要根據(jù)系統(tǒng)需要以外設(shè)所支持的功能對GUIConf.h文件進(jìn)行配置。
在LCDConf.h文件中定義了與硬件有關(guān)的各種屬性,如液晶的大小、顏色以及與液晶的接口函數(shù)。而LCD驅(qū)動文件則負(fù)責(zé)把μC/GUI的各種函數(shù)解釋 成LCDConf.h文件定義的液晶接口函數(shù),這個文件與具體的硬件連接無關(guān)。在移植時,需要對LCDConf.h文件進(jìn)行配置,并針對LCD控制器編寫 相應(yīng)的LCD驅(qū)動文件。
評論