日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁(yè) > 嵌入式 > 嵌入式硬件

一、實(shí)驗(yàn)?zāi)康?/P>

1. 初步掌握uCGUI底層硬件驅(qū)動(dòng)函數(shù);

2. 掌握將uCGUI移植到ARM S3C44BOX上的方法和步驟。

二、實(shí)驗(yàn)內(nèi)容

移植uCGUI到ARM處理器S3C44BOX上,并編寫Hello World程序,在Micetek 44B0實(shí)驗(yàn)平臺(tái)的LCD上顯示"Hello World!"字符串,在LCD顯示平面坐標(biāo)(20,20)處,顯示一個(gè)小于10000的整數(shù),該整數(shù)不斷循環(huán)加1,每次加1后立即更新顯示,從而反應(yīng)出顯示輸出的速度。

UCGUI是一種嵌入式應(yīng)用中的圖形支持系統(tǒng)。它設(shè)計(jì)用于為任何使用LCD圖形顯示的應(yīng)用提供高效的獨(dú)立于處理器及LCD控制器的圖形用戶接口,它適用單任務(wù)或是多任務(wù)系統(tǒng)環(huán)境, 并適用于任意LCD控制器和CPU下任何尺寸的真實(shí)顯示或虛擬顯示。它的設(shè)計(jì)架構(gòu)是模塊化的,由不同的模塊中的不同層組成,由一個(gè)LCD驅(qū)動(dòng)層來(lái)包含所有對(duì)LCD的具體圖形操作。 UCGUI可以在任何的CPU上運(yùn)行,因?yàn)樗?00%的標(biāo)準(zhǔn)C代碼編寫的。UCGUI能夠適應(yīng)大多數(shù)的使用黑白或彩色LCD的應(yīng)用,它提供非常好的允許處理灰度的顏管理。還提供一個(gè)可擴(kuò)展的2D圖形庫(kù)及占用極少RAM的窗口管理體系。

三、預(yù)備知識(shí)

1. uCGUI的體系結(jié)構(gòu):

uCGUI包含三個(gè)總的文件夾:Application,Config,GUI.其中:

Ⅰ Application是應(yīng)用程序的文件夾,它中間包含主函數(shù)文件,其它資源文件。

Ⅱ Config是GUI的配置文件夾,它包含三個(gè)文件:

* GUICONF.H是uCGUI的配置文件,負(fù)責(zé)配置GUI的對(duì)OS,window manager,DMA,觸摸屏,Unicode碼的支持。以及設(shè)置默認(rèn)字體和各種控件的默認(rèn)顏色等。

* GUITouchConf.h負(fù)責(zé)配置觸摸屏。

* LCDConf.h負(fù)責(zé)配置LCD顯示器,如分辨率,顏色位數(shù),以及LCD控制器的其它設(shè)置。

Ⅲ GUI是uCGUI的實(shí)現(xiàn)部分,它是GUI最重要的組成部分,其中包含八-九個(gè)文件夾。

* ConvertColor是彩色顏色轉(zhuǎn)換文件夾,它里面包含24位色-各種顏色之間的轉(zhuǎn)換的函數(shù)。

* ConvertMono是灰度顏色轉(zhuǎn)換文件夾,它里面包含24位色-單色,四級(jí)灰度,16級(jí)灰度和用戶自定義顏色之間轉(zhuǎn)換的函數(shù)。

* Core是GUI的核心,GUI多數(shù)的處理函數(shù)都在這個(gè)文件夾里面。

* Font是GUI的字體文件夾,我們可以通過(guò)對(duì)它里面文件的增減來(lái)增刪字體。

* LCDDriver是GUI的底層接口部分我們所移植的部分就應(yīng)該在這個(gè)文件夾。

* MemDev是GUI的DMA模式的一些處理函數(shù)文件。

* Widget里面含有各種窗口控件,如對(duì)話框,按鈕等控件。

* WM是GUI的窗口消息處理函數(shù)文件夾。

* Touch是觸摸屏和鼠標(biāo)的底層接口部分。

2.UCGUI需要移植的部分

① uCGUI移植需要修改的文件有:修改Main.c,LCDConf.h,在LCDDrive文件夾添加LCD 44b0.h, LCD 44b0.c其中LCD 44b0.h是LCD 44b0.c的聲明,LCD 44b0.c提供一系列LCD底層函數(shù)接口。

② 若要支持DMA模式還要添加一個(gè)LCDMemc.h, LCDMemc.c文件。LCDMemc.h使LCDMemc.c的聲明,LCDMemc.c使DMA模式的底層接口函數(shù)。

③ 若要支持觸摸屏和鼠標(biāo)還需要在GUICONF.H中修改一下定義:

#define GUI_SUPPORT_TOUCH (1)

使GUI支持鼠標(biāo)觸摸屏,并配置GUITouchConf.h文件。在GUITouch下添加相應(yīng)的接口驅(qū)動(dòng)。

我們主要移植的使LCD的直接驅(qū)動(dòng)模式,所以只需要修改<1>就行了。

我用的是JediView(for ARM)集成調(diào)試環(huán)境,其它環(huán)境類似,硬件為S3C44b0X,LCD為256色彩色液晶,分辨率為320×240.

四、實(shí)驗(yàn)設(shè)備及工具(包括軟件調(diào)試工具)

硬件: Micetek 44B0 實(shí)驗(yàn)系統(tǒng)

JEDI仿真器

仿真器是用以實(shí)現(xiàn)硬件仿真的硬件。仿真器可以實(shí)現(xiàn)替代單片機(jī)對(duì)程序的運(yùn)行進(jìn)行控制,例如單步,全速,查看資源斷點(diǎn)等。盡管軟件仿真具有無(wú)需搭建硬件電路就可以對(duì)程序進(jìn)行驗(yàn)證的優(yōu)點(diǎn),但無(wú)法完全反映真實(shí)硬件的運(yùn)行狀況,因此還要通過(guò)硬件仿真來(lái)完成最終的設(shè)計(jì)。目前的開(kāi)發(fā)過(guò)程中硬件仿真是必需的。

PC機(jī) Pentumn100以上

軟件: PC機(jī)操作系統(tǒng)win2000

JEDIView集成開(kāi)發(fā)環(huán)境

五、程序說(shuō)明

新建一個(gè)文件夾uCGUI,添加以上體系的所有文件夾及文件加到uCGUI文件夾,刪除LCDDrive文件夾下的LCDWin.c,它是在VC下的仿真驅(qū)動(dòng)程序,在LCDDrive文件夾添加LCD 44b0.h, LCD 44b0.c.暫時(shí)不移植觸摸屏驅(qū)動(dòng),可保持Touch目錄為空,以后擴(kuò)展時(shí)再用。

在uCGUI目錄下新建一個(gè)Inc文件夾,將option.h, 44b.h, 44blib.h, def.h,cache.h,lcdlib.h,44blcd.h添加進(jìn)來(lái)。

將lcdlib.c添加到Application文件夾。

新建一個(gè)工程也叫uCGUI,添加以上體系的所有文件夾及其內(nèi)部文件加到uCGU工程。

修改include配置:打開(kāi) Tools->Option->Directory->Include Files添加路徑

……uCGUIguiConvertColor

……uCGUIguiConvertMono

……uCGUIguiCore

……uCGUIguiFont

……uCGUIguiLCDDriver

……uCGUIguiMemDev

……uCGUIguiWidget

……uCGUIguiWM

……uCGUIguiTouch

……:ucOSConfig

……guiApplication

其中……為你所建工程所在路徑,以上這些路徑在有的編譯器可不加,自動(dòng)找到,在JediView(for ARM)集成調(diào)試環(huán)境需要添加。

由于uCGUI 用到了數(shù)學(xué)庫(kù),在Gcc編譯器下需要在link設(shè)置中添加-lm參數(shù),使編譯器可以找到數(shù)學(xué)庫(kù)。

六、實(shí)驗(yàn)現(xiàn)象

液晶顯示屏顯示的是實(shí)驗(yàn)結(jié)果,其中第2行的數(shù)值不斷加1跳變。



QICK

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

為增進(jìn)大家對(duì)嵌入式的認(rèn)識(shí),本文將對(duì)嵌入式開(kāi)發(fā)以及學(xué)習(xí)嵌入式需要注意的事項(xiàng)予以介紹。

關(guān)鍵字: 嵌入式 指數(shù) 嵌入式開(kāi)發(fā)

中國(guó)上海,2025年4月7日 — 全球領(lǐng)先的嵌入式系統(tǒng)開(kāi)發(fā)軟件解決方案供應(yīng)商IAR正式發(fā)布全新云就緒平臺(tái),為嵌入式開(kāi)發(fā)團(tuán)隊(duì)提供企業(yè)級(jí)的可擴(kuò)展性、安全性和自動(dòng)化能力。該平臺(tái)于在德國(guó)紐倫堡舉辦的embedded world...

關(guān)鍵字: 自動(dòng)化 嵌入式開(kāi)發(fā) RISC-V

在嵌入式系統(tǒng)開(kāi)發(fā)領(lǐng)域,VS Code(Visual Studio Code)作為一款輕量級(jí)但功能強(qiáng)大的代碼編輯器,正逐漸成為開(kāi)發(fā)者的首選工具。本文將詳細(xì)介紹如何在VS Code上搭建嵌入式開(kāi)發(fā)環(huán)境,并分享一些調(diào)試技巧。

關(guān)鍵字: VS Code 嵌入式開(kāi)發(fā)

隨著汽車電子化、智能化程度的不斷提高,車載以太網(wǎng)(Automotive Ethernet)作為新一代車載網(wǎng)絡(luò)通信技術(shù),正逐漸成為汽車內(nèi)部通信的主干網(wǎng)絡(luò)。它以其高帶寬、低延遲和強(qiáng)抗干擾能力,為汽車提供了更加高效、可靠的數(shù)據(jù)...

關(guān)鍵字: 車載以太網(wǎng) 嵌入式開(kāi)發(fā)

隨著物聯(lián)網(wǎng)技術(shù)的飛速發(fā)展,嵌入式系統(tǒng)對(duì)實(shí)時(shí)性、低功耗和可擴(kuò)展性的要求越來(lái)越高。Zephyr RTOS(實(shí)時(shí)操作系統(tǒng))作為一款專為資源受限設(shè)備設(shè)計(jì)的開(kāi)源RTOS,憑借其輕量級(jí)、模塊化和高可擴(kuò)展性,在嵌入式開(kāi)發(fā)領(lǐng)域得到了廣泛...

關(guān)鍵字: 嵌入式開(kāi)發(fā) Zephyr RTOS 物聯(lián)網(wǎng)

嵌入式開(kāi)發(fā),作為電子工程和計(jì)算機(jī)科學(xué)交叉領(lǐng)域的重要分支,對(duì)于構(gòu)建穩(wěn)定、高效的軟件系統(tǒng)提出了獨(dú)特挑戰(zhàn)。本文將深入探討嵌入式開(kāi)發(fā)的可靠方法論,結(jié)合實(shí)例與代碼,為開(kāi)發(fā)者提供一套系統(tǒng)化的指導(dǎo)原則。

關(guān)鍵字: 嵌入式開(kāi)發(fā) 計(jì)算機(jī)科學(xué)

嵌入式開(kāi)發(fā),作為電子工程和計(jì)算機(jī)科學(xué)的交匯點(diǎn),對(duì)軟件系統(tǒng)的穩(wěn)定性和效率提出了極高的要求。本文將結(jié)合具體案例,深入探討嵌入式開(kāi)發(fā)中的可靠方法論,為開(kāi)發(fā)者提供一套系統(tǒng)化的指導(dǎo)原則。

關(guān)鍵字: 嵌入式開(kāi)發(fā) 智能家居

在科技日新月異的今天,嵌入式開(kāi)發(fā)作為連接硬件與軟件的橋梁,在物聯(lián)網(wǎng)、智能設(shè)備、工業(yè)自動(dòng)化等領(lǐng)域扮演著至關(guān)重要的角色。對(duì)于許多技術(shù)愛(ài)好者而言,自學(xué)嵌入式開(kāi)發(fā)既是一個(gè)充滿魅力的挑戰(zhàn),也是一條通往創(chuàng)新實(shí)踐的必由之路。然而,這條...

關(guān)鍵字: 嵌入式開(kāi)發(fā) 物聯(lián)網(wǎng)

在科技日新月異的今天,嵌入式開(kāi)發(fā)與Java開(kāi)發(fā)作為軟件開(kāi)發(fā)領(lǐng)域的兩大重要分支,各自展現(xiàn)出了獨(dú)特的發(fā)展軌跡和市場(chǎng)前景。近年來(lái),關(guān)于嵌入式開(kāi)發(fā)是否會(huì)像Java開(kāi)發(fā)一樣“卷”的討論日益增多,這背后既反映了市場(chǎng)對(duì)技術(shù)趨勢(shì)的敏銳洞...

關(guān)鍵字: 嵌入式開(kāi)發(fā) Java開(kāi)發(fā)

現(xiàn)在在嵌入式開(kāi)發(fā)MCU中,八塊MCU仍占據(jù)三分之一以上的份額,在工業(yè)控制,安全,物聯(lián)網(wǎng),消費(fèi)電子等諸多領(lǐng)域,八塊MCU依然隨處可見(jiàn)。

關(guān)鍵字: 嵌入式開(kāi)發(fā) MCU
關(guān)閉