電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>ARM>uC/OS-II在ARM系統(tǒng)上的移植與實現(xiàn)

uC/OS-II在ARM系統(tǒng)上的移植與實現(xiàn)

2017-10-30 | rar | 0.4 MB | 次下載 | 1積分

資料介紹

引言
  在開發(fā)嵌入式系統(tǒng)時,一般選擇基于ARM 和uC/ OS - II 的嵌入式開發(fā)平臺,因為ARM 微處理器具有處理速度快、超低功耗、價格低廉、應(yīng)用前景廣泛等優(yōu)點[1 ] 。 將uC/ OS - II 移植到ARM 系統(tǒng)之后,可以充分結(jié)合兩者的優(yōu)勢。 如果一個程序在一個環(huán)境里能工作,我們經(jīng)常希望能將它移植到另一個編譯系統(tǒng)、處理器或者操作系統(tǒng)上,這就是移植技術(shù)。移植技術(shù)可以使一種特定的技術(shù)在更加廣泛的范圍使用,使軟件使用更加靈活,不局限于某一條件.uC/OS - II 是由Jean J 。 Labrosse 先生編寫的完整的可移植、固化、裁剪的占先式實時多任務(wù)內(nèi)核.uC/ OS - II 的源代碼完全開放,這是其他商業(yè)實時內(nèi)核無法比擬的[2 ] 。 它是針對嵌入式應(yīng)用設(shè)計的,在設(shè)計之初就充分考慮了可移植性,它的大部分源代碼都是用高可移植性的ANSIC 編寫的[3 ] 。 uC/ OS - II可以移植到從8 位到64 位的不同類型、不同規(guī)模的嵌入式系統(tǒng),并能在大部分的8 位、16 位、32 位、甚至64 位的微處理器和DSP 上運行。 由于uC/ OS - II是一個實時操作系統(tǒng),所以如果將它嵌入到ARM處理器上,就能夠進一步簡化ARM系統(tǒng)的開發(fā)。
  uC/OS-II在ARM系統(tǒng)上的移植與實現(xiàn)
  圖1  uC/ OS - II 文件體系結(jié)構(gòu)
  1  uC/ OS - II 的移植
  uC/OS - II 的文件系統(tǒng)結(jié)構(gòu)包括核心代碼部分、設(shè)置代碼部分、與處理器相關(guān)的移植代碼部分[4 ] 。 結(jié)構(gòu)如圖1 所示。其中最上邊的軟件應(yīng)用層是uC/ OS - II 上的代碼。 核心代碼部分包括7 個源代碼文件和1 個頭文件。 功能分別是內(nèi)核管理、事件管理、消息隊列管理、存儲管理、消息管理、信號量處理、任務(wù)調(diào)度和定時管理。 設(shè)置代碼部分包括2 個頭文件,用來配置事件控制塊的數(shù)目以及是否包含消息管理相關(guān)代碼。 而與處理器相關(guān)的移植代碼部分則是進行移植過程中需要更改的部分,包括1 個頭文件OS CPU. H ,1 個匯編文件OS CPU A. S 和1 個C 代碼文件。實際上將uC/ OS - II 移植到ARM 處理器上,需要完成的工作主要是以下三個與體系結(jié)構(gòu)相關(guān)的文件:OS CPU. H ,OS CPU. C 以及OS CPU A. S[5 ] 。
  1. 1  OS CPU. H 的移植
  文件OS CPU. H 中包括了用# define 語句定義的與處理器相關(guān)的常數(shù)、宏以及類型。 移植時主要修改的內(nèi)容有:與編譯器相關(guān)的數(shù)據(jù)類型的設(shè)定;用#define 語句定義2 個宏開關(guān)中斷;根據(jù)堆棧的方向定義OS STK GROWTH等。
  在將uC/ OS - II 移植到ARM 處理器上時,首先進行基本配置和數(shù)據(jù)類型定義。 重新定義數(shù)據(jù)類型是為了增加代碼的可移植性,因為不同的編譯器所提供的同一數(shù)據(jù)類型的數(shù)據(jù)長度并不相同,例如int型,在有的編譯器中是16 位,而在另外一些編譯器中則是32 位。 所以,為了便于移植,需要重新定義數(shù)據(jù)類型,如INT32U 代表無符號32 位整型。 typedefunsigned int INT8U ,就是定義一個8 位的無符號整型數(shù)據(jù)類型。 其次就是對ARM 處理器相關(guān)宏進行定義,如ARM處理器中的退出臨界區(qū)和進入臨界區(qū)的宏定義,退出臨界區(qū)宏定義[5 ] : # define OS EXITCRITICAL () ARMDisable Int ( ) / / 關(guān)中斷,進入臨界區(qū)宏定義# define OS ENTER CRITICAL ( ) AR2MEnableInt () / / 開中斷。 最后就是堆棧增長方向的設(shè)定。 當(dāng)進行函數(shù)調(diào)用時,入口參數(shù)和返回地址一般都會保存在當(dāng)前任務(wù)的堆棧中,編譯器的編譯選項和由此生成的堆棧指令就會決定堆棧的增長方向[6 ] ,定義為# define OS STK GROWTH 1.
下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1電子電路原理第七版PDF電子教材免費下載
  2. 0.00 MB  |  1490次下載  |  免費
  3. 2單片機典型實例介紹
  4. 18.19 MB  |  92次下載  |  1 積分
  5. 3S7-200PLC編程實例詳細資料
  6. 1.17 MB  |  27次下載  |  1 積分
  7. 4筆記本電腦主板的元件識別和講解說明
  8. 4.28 MB  |  18次下載  |  4 積分
  9. 5開關(guān)電源原理及各功能電路詳解
  10. 0.38 MB  |  10次下載  |  免費
  11. 6基于AT89C2051/4051單片機編程器的實驗
  12. 0.11 MB  |  4次下載  |  免費
  13. 7藍牙設(shè)備在嵌入式領(lǐng)域的廣泛應(yīng)用
  14. 0.63 MB  |  3次下載  |  免費
  15. 89天練會電子電路識圖
  16. 5.91 MB  |  3次下載  |  免費

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234313次下載  |  免費
  3. 2PADS 9.0 2009最新版 -下載
  4. 0.00 MB  |  66304次下載  |  免費
  5. 3protel99下載protel99軟件下載(中文版)
  6. 0.00 MB  |  51209次下載  |  免費
  7. 4LabView 8.0 專業(yè)版下載 (3CD完整版)
  8. 0.00 MB  |  51043次下載  |  免費
  9. 5555集成電路應(yīng)用800例(新編版)
  10. 0.00 MB  |  33562次下載  |  免費
  11. 6接口電路圖大全
  12. 未知  |  30320次下載  |  免費
  13. 7Multisim 10下載Multisim 10 中文版
  14. 0.00 MB  |  28588次下載  |  免費
  15. 8開關(guān)電源設(shè)計實例指南
  16. 未知  |  21539次下載  |  免費

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935053次下載  |  免費
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537791次下載  |  免費
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420026次下載  |  免費
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234313次下載  |  免費
  9. 5Altium DXP2002下載入口
  10. 未知  |  233045次下載  |  免費
  11. 6電路仿真軟件multisim 10.0免費下載
  12. 340992  |  191183次下載  |  免費
  13. 7十天學(xué)會AVR單片機與C語言視頻教程 下載
  14. 158M  |  183277次下載  |  免費
  15. 8proe5.0野火版下載(中文版免費下載)
  16. 未知  |  138039次下載  |  免費