<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 手機與無(wú)線(xiàn)通信 > 設計應用 > 基于Cortex-M3的TFT觸摸屏在環(huán)境監控系統中的應用

基于Cortex-M3的TFT觸摸屏在環(huán)境監控系統中的應用

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


OS_CPU.H中包含兩部分的代碼,數據類(lèi)型定義代碼和與處理器相關(guān)的代碼。其中數據類(lèi)型重定義代碼是用C語(yǔ)言中short,int,long等,數據類(lèi)型是與特定的處理器相關(guān)的,因此在μCOS-Ⅱ重新定義為移植性很強的定義方式。在OS_CPU.H剩下的部分是移植必須定義底層函數的聲明。在LPC1758的移植中為了使底層接口函數與處理器的狀態(tài)無(wú)關(guān),同時(shí)使任務(wù)調用相應的函數不需要知道函數的位置。在本移植中使用軟中斷指令SWI作為底層接口,使用不同的功能號來(lái)區分各函數。調用這些底層函數,只需要使用一條SWI指令并跟上一個(gè)功能號來(lái)區別你要調用那個(gè)函數即可。任務(wù)切換函數為OS_TASK_SW(void),并使用軟中斷0x00。CPU_C.C中主要是軟中斷的實(shí)現和底層函數的實(shí)現及初始化任務(wù)堆棧函數的實(shí)現,其偽代碼如下:

處理器能支持一定數量的數據存儲硬件堆棧;用C語(yǔ)言可以開(kāi)中斷/關(guān)中斷,根據不同的Num值跳轉到不同的底層服務(wù)函數地址。
系統的程序包括三個(gè)任務(wù):實(shí)時(shí)顯示屏幕數據任務(wù),采集數據函數,響應任務(wù)。設計中采用了任務(wù)嵌套的方式,將數據采集和響應嵌套到實(shí)時(shí)顯示屏幕數據任務(wù)之中,這樣數據在各個(gè)任務(wù)之間的傳遞很有邏輯性,整個(gè)系統比較健壯。任務(wù)間的通信如圖8所示。


移植μCOS-Ⅱ是為了在自己系統中使用μ肛COS-Ⅱ,要在自己的系統中使用μCOS-Ⅱ編寫(xiě)程序。程序包括相應的頭文件,任務(wù)堆棧的宏文件和任務(wù)相關(guān)的文件。由于每個(gè)任務(wù)都是獨立的,所以堆棧部分的宏定義的代碼是應用程序必須要有的。建立任務(wù)之前必須初始化任務(wù)并建立一個(gè)空閑的任務(wù)。在建立多任務(wù)時(shí),必須通過(guò)OSTaskCreat()函數建立至少一個(gè)用戶(hù)任務(wù)。建立好任務(wù)后,利用OSStart()函數開(kāi)始任務(wù)。應用函數主函數如下:


4 結語(yǔ)
利用LPC1758處理器成功驗證了采用ARM公司內核的MCU驅動(dòng)的可能,包括以上硬件方案的提出和軟件系統移植的實(shí)現,觸摸屏單元提供友好的人機界面,且具有堅固耐用、反應速度快、節省空間、易于交流等許多優(yōu)點(diǎn)。隨著(zhù)多媒體查詢(xún)的與日遞增,在未來(lái)的電子產(chǎn)品中,觸摸屏無(wú)疑將成為輸入設備的主流。


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

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>