久久国产亚洲欧美日韩精品,国产精品一区在线麻豆,国产拍揄自揄精品视频网站,欧美日本一区二区三区免费,无码福利视频,亚洲无码视频喷水,亚洲三级色,亚洲狠狠婷婷综合久久久久

基于STM32的μCOSⅢ系統移植的設計論文

2022-09-24 論文

  摘 要:隨著嵌入式系統產品漸漸完善,并在全世界各行業得到廣泛應用,通過移植嵌入式操作系統,計算機可以更好地管理內存,并且在很大程度上提高系統的實時性。文章主要介紹了μCOS-Ⅲ操作系統在基于ARM Contex-M3為內核的STM32處理器的移植要點,并且實現了源碼公開的嵌入式實時操作系統μCOS-Ⅲ在STM32處理器上的成功移植。

  關鍵詞:μCOS-Ⅲ;STM32處理器;移植

  引言

  隨著人類社會經濟的不斷發展,科研領域不斷的拓寬,嵌入式系統產品漸漸完善,并在全世界各行業得到廣泛應用。通過移植嵌入式操作系統,計算機可以更好的管理內存,并且在很大程度上實現了系統的實時性。μCOS-Ⅲ作為一個微型實時操作系統,包括了一個操作系統最基本的特性,使用匯編語言和C語言編寫的μCOS-Ⅲ的構思巧妙,結構簡潔精煉,可讀性很強,作為一個源碼開放的嵌入式操作系統,用戶只要做很少的工作就可以把它進行移植和維護。

  1.1 實時操作系統μCOS-Ⅲ

  μCOS-Ⅲ是一個可以基于ROM運行的、可裁減的、搶占式、實時多任務內核,具有高度可移植性。所謂的移植,在一個平臺環境能夠成功運行的程序,將它搬運到另一個平臺環境,并且使其成功運行。發展至今的μCOS-Ⅲ,特別適合于微處理器和控制器,并且已經移植到近40多種處理器體系上,涵蓋了從8位到64位的各種CPU。

  μCOS-Ⅲ源碼可分為:與應用程序相關的文件、與計算機硬件相關的文件和系統內核的各種服務文件。用戶在移植時,需要對與計算機硬件相關的文件進行修改:如OS_CPU.H文件,OS_CPU_A.ASM文件和OS_CPU_C.C文件。而系統內核的各種文件,如:OS_CORE.C、OS_FLAG.C、OS_MBOX.C、OS_MUTEX.C等,與應用程序相關的文件:INCLUDES.H和OS_CFG.H則不需要修改。

  ST公司針對STM32提供了STM32庫作為函數接口,使得開發人員得以脫離最底層的寄存器操作,有開發快速、易于閱讀、維護成本低等優點。

  2 μCOS-Ⅲ的移植

  2.1 修改OS_CPU.H文件

  μCOS-Ⅲ的內核使用一個周期時鐘中斷,以計算任務延時時間和進行任務調度,在STM32中,這樣的時鐘中斷正適合由SysTick來提供。因為OS_CPU_SysTickHandler()函數與STM32庫所提供的stm32F10x_it.c文件中的SycTick_Handler()函數功能一樣,都是使用SysTick的中斷處理,所以我們采用SycTick_Handler()函數。因此,相應的對于OS_CPU.H文件的操作是:注釋掉OS_CPU_SysTickHandler()和OS_SysTickInit()函數的聲明。

  2.2 修改OS_CPU_C.C

  OS_CPU_SysTickHandler()和OS_CPU_SysTickInit()函數的定義在OS_CPU_C.C文件中,由于我們采用了STM32官方庫提供的函數來對SysTick進行中斷處理,所以我們要把OS_CPU_C.C的OS_CPU_SysTickHandler()和OS_CPU_SysTickInit()這兩個函數注釋掉。

  2.3 修改OS_CPU_A.ASM文件

  我們下載的μCOS-Ⅲ移植工程是在官方的IAR編譯環境下建立的,IAR在匯編的語法方面和我們使用的MDK編譯器有一點區別,所有我們對匯編文件的部分指令做如下修改:在OS_CPU_A.ASM文件中,將原來的PUBLIC指令改為EXPORT,它們是等價的。(見表1)

  2.4 修改CPU_A.ASM文件

  在CPU_A.ASM匯編文件中,仍有因編譯環境的不同而引起的錯誤,修改的方法同修改OS_CPU_A.ASM文件一樣,將原來的PUBLIC指令改為EXPORT。除此之外,在CPU_A.ASM文件中某些標號帶有冒號,如“CPU_CntLeadZeros:”、“CPU_RevBits:”、

  “CPU_WaitForInt:”和“CPU_WaitForExpect:”,為了適應編譯環境,需要將其中的冒號去掉。

  2.5 修改STM32F10X_IT.C文件

  我們可以看到,在SysTick的函數中調用了3個函數,它們都是μCOS源碼定義的函數,其基本功能如下:

  (1)OSIntEnter()函數,對用于表示中斷嵌套層的變量OSIntNesting加1,它與OSIntExit()函數成對出現,在進入中斷服務函數時,都應該包含這兩個函數,中斷服務的內容位于這兩個函數之間。

 。2)OSIntExit()函數,除了對嵌套層數OSIntNesting減1表示退出中斷外,還具有任務調度功能。

 。3)OSTimeTick()函數主要工作是對系統統計事件的變量OSTime加1,另外,它還會遍歷所有任務,對延時任務的時間減1。

  至此,我們對μCOS的源碼針對編譯環境做了修改,將SysTick中斷修改到STM32所提供的STM32F10X_IT.C文件后,就基本完成了μCOS的移植了。

  3 系統測試

  我們現在需要對移植好的代碼做一個簡單的測試,通過編寫流水燈任務來驗證移植的成功。流水燈任務的部分代碼如表3:

  運行后我們發現實驗板的流水燈按照循環的方式一直閃爍,驗證了μCOS-Ⅲ在STM32處理器核上的成功移植。

  4 結束語

  作為一個成熟的嵌入式操作系統,μCOS-Ⅲ已經被廣泛移植于各種體系的微型處理器上了。在嵌入式技術高速發展的今天,基于ARM為內核的微處理器憑借ARM優秀的體系結構被運用于各種行業。通過研究μCOS-Ⅲ的移植,可以使得它在更廣泛的平臺得到應用,更促進嵌入式技術的發展。

  參考文獻

  [1]任哲.嵌入式操作系統基礎μC/OS-II和Linux(第2版)[M].北京:北京航空航天大學出版社,2011.

  [2]野火開發板配套資料.μC/OS-Ⅲ在STM32的移植詳解[Z].

  [3]Joseph Yiu.ARM Contex-M3 權威指南[M].宋巖,譯.北京:北京航空航天大學,2009.

  [4]許倫輝,修科鼎.基于ARM處理器的μCOS-II移植[J].科技廣場,2010.

  [6]鄧中亮,何雙亮.基于ARM的嵌入式操作系統μC/OS-II的移植研究[J].計算機技術與發展,2007.

  • 相關推薦

【基于STM32的μCOSⅢ系統移植的設計論文】相關文章:

基于系統設計的科研管理論文09-22

基于冗余PLC的井下排水自動控制系統的設計的論文02-22

基于DSP整流器設計論文04-18

基于SCOSM自適應教學模型設計論文07-12

FPGA數據采集與回放系統設計論文04-24

解析科技競賽賽務系統的設計與實現論文04-19

綜合布線系統設計項目教學模式應用論文07-12

基于51單片機的路燈控制系統設計開題報告04-18

基于精準教學的交互式微課開發以及設計論文07-12

基于項目教學的高職程序設計課程的教學評價論文07-12

主站蜘蛛池模板: 亚洲AV无码精品无码久久蜜桃| 四虎AV麻豆| 国产成人精品高清在线| 手机在线免费毛片| 亚欧成人无码AV在线播放| 日韩高清一区 | 麻豆精品视频在线原创| 亚洲一级毛片在线播放| 996免费视频国产在线播放| 1级黄色毛片| 香蕉eeww99国产精选播放| 亚洲香蕉伊综合在人在线| 爆乳熟妇一区二区三区| 亚洲色精品国产一区二区三区| 亚州AV秘 一区二区三区| 456亚洲人成高清在线| 免费不卡视频| 最新国语自产精品视频在| 搞黄网站免费观看| 亚洲天堂网2014| 国产精品lululu在线观看 | 91av国产在线| 日韩在线成年视频人网站观看| 国产欧美日韩综合一区在线播放| 午夜啪啪网| 狠狠色香婷婷久久亚洲精品| 香蕉久久国产超碰青草| 欲色天天综合网| 免费aa毛片| 四虎永久在线| 91精品啪在线观看国产60岁 | 亚洲狠狠婷婷综合久久久久| 最新亚洲av女人的天堂| 国产在线一二三区| 毛片视频网址| 亚洲国产av无码综合原创国产| 自偷自拍三级全三级视频| 在线欧美日韩国产| 手机在线免费不卡一区二| 亚洲成a人在线观看| 制服丝袜 91视频| 91精品专区| 欧美笫一页| 激情视频综合网| 亚洲免费毛片| 色窝窝免费一区二区三区| 国产三级韩国三级理| 久久永久免费人妻精品| 不卡视频国产| 国内毛片视频| 国产午夜精品一区二区三区软件| 欧美黄色网站在线看| 国产免费自拍视频| 国产专区综合另类日韩一区| a毛片免费观看| 男人天堂伊人网| 看av免费毛片手机播放| 四虎成人免费毛片| 成人a免费α片在线视频网站| 欧美怡红院视频一区二区三区| 久久久久人妻一区精品| 国产午夜无码片在线观看网站| 亚洲中文字幕手机在线第一页| 91在线国内在线播放老师| 偷拍久久网| 亚洲天堂精品在线观看| 国产在线欧美| 亚洲第一视频区| 久久6免费视频| 日韩精品一区二区三区大桥未久| 极品尤物av美乳在线观看| 一级黄色欧美| 亚洲欧美激情小说另类| 国产欧美亚洲精品第3页在线| 国产精品网址在线观看你懂的| 毛片在线播放网址| 亚洲乱亚洲乱妇24p| 人妻一区二区三区无码精品一区| 亚洲欧美自拍中文| 欧美精品在线视频观看| 最新日本中文字幕| 一本无码在线观看|