版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、21天學嵌入式開發(fā)第二十三講:嵌入式系統(tǒng)UC/OS-的移植 北京源智天下科技有限公司聯(lián)系方式:課程安排 獲取UC/OS-嵌入式系統(tǒng)內核 在STM32上移植UC/OS- 北京源智天下科技有限公司聯(lián)系方式:1-10獲取UC/OS-嵌入式系統(tǒng)內核 UC/OS-是開源但不免費的實時操作系統(tǒng)。 /在STM32上移植UC/OS- UC/OS-在STM32 的移植,大致由3 個文件實現(xiàn): 頭文件OS_CPU.H C語言文件OS_CPU.C 匯編格式文件OS_CPU_A.ASM移植要求 處理
2、器 處理器的C編譯器能產生可重入代碼。 用C 語言就可以打開和關閉中斷。 處理器支持中斷,并且能產生定時中斷,通常在10 至100Hz 之間。 處理器支持能夠容納一定量數(shù)據(jù)(可能是幾千字節(jié)) 的硬件堆棧。 處理器有將堆棧指針和其它CPU寄存器讀出和存 儲到堆?;騼却嬷械闹噶?。移植步驟 用#define 設置一個常量的值(OS_CPU.H) 聲明數(shù)據(jù)類型(OS_CPU.H) 用#define語句聲明三個宏(OS_CPU.H) 用C語言編寫六個簡單的函數(shù)(OS_CPU_C.C) 編寫四個匯編語言函數(shù)(OS_CPU_A.ASM)OSCtxSw(void); OSIntCtxSw(void); OSS
3、tartHighRdy(void);OS_CPU_SysTickInit(void);OS_CPU_SR_Restore(OS_CPU_SR cpu_sr);void #endif void void void void#endif/無符號8位整數(shù)/有符號8位整數(shù)/無符號16位整數(shù)/有符號16位整/無符號32位整數(shù)/有符號32位整數(shù)/單精度浮點數(shù)/雙精度浮點數(shù)/堆棧入口寬度為16位typedef unsigned int OS_STK;#ifndef OS_CPU_H #define OS_CPU_H#ifdef OS_CPU_GLOBALS #define OS_CPU_EXT #else#
4、define OS_CPU_EXT extern #endif/數(shù)據(jù)類型,與編譯器有關typedef unsigned char BOOLEAN; typedef unsigned char INT8U; typedef signed char INT8S; typedef unsigned short INT16U; typedef signed short INT16S; typedef unsigned int INT32U; typedef signed int INT32S; typedef floatFP32;typedef doubleFP64;頭文件OS_CPU.Htypede
5、f unsigned int OS_CPU_SR;/CPU狀態(tài)寄存器寬度32位/與處理器相關部分#define OS_CRITICAL_METHOD 3 #if OS_CRITICAL_METHOD = 3#define OS_ENTER_CRITICAL() cpu_sr = OS_CPU_SR_Save(); #define OS_EXIT_CRITICAL() OS_CPU_SR_Restore(cpu_sr); #endif#define OS_STK_GROWTH1#define OS_TASK_SW()OSCtxSw()/任務切換宏#if OS_CRITICAL_METHOD = 3OS_CPU_SR OS_CPU_SR_Save(void);C文件OS_CPU_C.C 用戶要在C文件OS_CPU_C.C中處理10個函數(shù)。 OSTaskStkInit函數(shù)最為重要。匯編文件OS_CPU_A.ASM OSStartHighRdy() OSCtxSw() OSIntCtxSw() OSTickISR()創(chuàng)建
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 鋁電解工安全管理評優(yōu)考核試卷含答案
- 礦井泵工崗前班組安全考核試卷含答案
- 稀土發(fā)光材料工崗前理論能力考核試卷含答案
- 滴丸工安全意識強化水平考核試卷含答案
- 電線電纜拉制工操作知識評優(yōu)考核試卷含答案
- 軋制加熱工風險評估競賽考核試卷含答案
- 2024年湖南農業(yè)大學東方科技學院輔導員考試參考題庫附答案
- 水解酵母干燥工崗前活動策劃考核試卷含答案
- 品牌資產評價師崗前實操知識考核試卷含答案
- 丁二酸裝置操作工8S考核試卷含答案
- 污水處理銷售工作總結
- 迎接期末+做自己的英雄 高二上學期心理健康教育主題班會
- TRIZ-阿奇舒勒矛盾矩陣表格
- GB/T 4074.5-2024繞組線試驗方法第5部分:電性能
- 招標代理服務服務方案
- 氣體制劑機械相關項目可行性研究分析報告
- 120MPa輕質高強混凝土的配制技術
- 食堂外包監(jiān)督管理制度
- 頂板離層儀管理規(guī)定
- 長輸管道施工技術(完整版)
- 生態(tài)農場設計課件
評論
0/150
提交評論