freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于arm9的μcosⅱ嵌入式系統(tǒng)移植(編輯修改稿)

2025-07-19 04:39 本頁面
 

【文章內(nèi)容簡介】 過這個指針訪問任務的附加數(shù)據(jù)(MMU 寄存器,浮點寄存器,以及調(diào)試的信息等)和結(jié)構(gòu)成員。從而決定可允許擴展的成員。 OSTaskDelHook()OSTaskDelHook():用于任務的刪除。任務建立之后會返回一個OS_TCB指針,在刪除任務的時候,該指針會傳給OSTaskDelHook(),通過這個指針訪問任務的附加數(shù)據(jù)和結(jié)構(gòu)成員。從而決定刪除的對象。 OSTaskSwHook()OSTaskSwHook():優(yōu)先級改變,或者中斷發(fā)生,進行任務切換的時候調(diào)用的函數(shù)。調(diào)用OSTaskSwHook()期間中斷應該處于禁止的狀況,這是為了防止程序的崩潰。任務切換的時間越短,任務執(zhí)行效率越高,所以在任務切換的時候盡量將代碼簡化,OSTaskSwHook()無參數(shù),也沒有返回值。 OSTaskStatHook()OSTaskStatHook():進行擴展統(tǒng)計功能的函數(shù)。OSTaskStatHook()無參數(shù),無返回值。 OSTimeTickHook()OSTaskTimeHook():應用于每一個時鐘節(jié)拍中。事實上,OSTaskTimeHook()是在節(jié)拍被μC/OSⅡ真正處理,并通知實例或應用程序之前被調(diào)用。OSTaskTimeHook()無參數(shù),無返回值。 四個匯編函數(shù)的編寫是μC/OSⅡ移植的重點:1. OSStartHighRdy()2. OSCtxSw()3. OSIntCtxSw()4. OSTickISR()為了節(jié)省空間和內(nèi)存,將所有與處理器相關的函數(shù)、 文件中。 OSStartHighRdy()OSStartHighRdy():選擇優(yōu)先級最高的任務執(zhí)行。OSStart是開始運行任務的函數(shù),在運行開始之后可以調(diào)用OSStartHighRdy()選擇優(yōu)先級最高的任務執(zhí)行。在任務切換之后和恢復先前任務之前需要將此函數(shù)的OSRunning設置為0。 OSCtxSw()OSCtxSw():執(zhí)行最高優(yōu)先級的任務是μC/OSⅡ的特點之一,而OSCtxSw()就是基于此而創(chuàng)建的函數(shù)。調(diào)用任務切換函數(shù)的時候中斷也必須處于禁止狀態(tài)。 OSIntCtxSw()OSIntCtxSw():μC/OSⅡ中唯一與微處理器相關的函數(shù)。 OSTickISR() OSTickISR():為了滿足時間期滿和延遲功能而編寫的函數(shù)。第五章 實例移植本章是在基于第四章內(nèi)容的基礎上,進行一個詳細的代碼實例移植。通過源碼介紹、軟件設置和仿真調(diào)試,實現(xiàn)ARM9開發(fā)板上LED燈的控制。 函數(shù)配置實例移植是驗證移植成功的關鍵。通過網(wǎng)絡或其它途徑獲得μC/OSⅡ的源代碼,對于一些在第四章描述的變量、宏和函數(shù)進行重新定義和配置。源代碼如圖51所示:圖51 源代碼文件夾在S3C2440文件夾下有兩個子文件夾,分別是includes和source,如圖52所示:圖52 S3C2440文件夾下的文件、、這些文件都是一些與芯片相關的頭文件。如圖53所示:圖53 includes文件夾、 、、這些都是一些與芯片相關的源文件,執(zhí)行測試操作,如圖54:圖54 source文件夾uCOS_II文件夾中包含了四個文件夾,分別是API、include、arm、SOURCE。圖55 uCOS_II文件夾在API文件夾中只有一個應用配置相關的頭文件:,如圖56所示:圖56 API文件夾include中有三個文件:、,如圖57:圖57 include文件夾arm文件夾中也是三個文件:、其中后兩個是需要進行配置的文件,如圖58所示:圖58 arm文件夾在SOURCE文件夾中有一個API文件夾()、、、這些是一些與系統(tǒng)服務相關的函數(shù)文件,比如消息機制,內(nèi)存共享,信號量等函數(shù)。圖58所示:圖58 SOURCE文件夾在對源碼結(jié)構(gòu)了解之后,就是對所需文件進行相應的配置,具體配置代碼見附錄1。 工程創(chuàng)建(軟件和驅(qū)動),通過轉(zhuǎn)換口將JLinkH仿真器和ARM9的開發(fā)板以及PC機連接起來,ARM9的蜂鳴器短接跳線JP9。 JLink與ARM9連接圖如圖59所示圖59 JLink與ARM9的連接圖PC機上啟動ADS ,新建一個ARM Executable Image工程,在【Project name】中填寫工程名稱:,在Location中填入代碼所在位置,工程建立完畢。 工程設置,還需要對于工程進行相應的設置在【Edit】→【DebugRel Settings】下在【Target】條目中選擇【Target Settings】,將其中的【Postlinker】設置成ARM fromELF,如圖510所示。圖510 (1)在【Target】條目中選擇【Access Paths】,將【Always Search User Paths】選中(因為系統(tǒng)的部分文件采用包涵在include ,這里不做修改可能無法導致文件)。圖510 (2)在【Language Settings】條目下依次選擇【ARM Assembler】,將其處理器設置成ARM920T,【ARM C Compliler】、【ARM C++ Complier】也是類似操作,如圖511所示。(3)在【Language Settings】條目下選擇【ARM C Compliler】,在【Errors】中勾銷掉【Implicit pointer c】,然后選擇【ARM C Compliler】,在【W(wǎng)arnings】中購銷掉【Unused declaration】(O1 g+ cpu ARM920T Wx Ec),如圖512所示圖512 (4)在【ARM Linker】條目下選擇【Output】,將【RO Base】設置成0x30000000,【Options】下【Image entry point】設置成0x30000000,【Layout】下
點擊復制文檔內(nèi)容
法律信息相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1