精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

電子發(fā)燒友App

硬聲App

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

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

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>嵌入式開發(fā)>μC/OS-II在MPC555上的移植

μC/OS-II在MPC555上的移植

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

資料介紹

 μc/OS-II是一種占先式、多任務(wù)、移植性非常強的免費微控制器嵌入式實時操作系統(tǒng),從1992年出現(xiàn)以來,已在照相機、發(fā)動機控制和工業(yè)機器人等多種領(lǐng)域中得到應(yīng)用。它一方面相對GNU下Linux衍生出來的EOS更小巧且移植方便,實時性更好,更適合工業(yè)控制領(lǐng)域應(yīng)用;另一方面由于是免費的,比使用VxWorks等商業(yè)實時EOS大大節(jié)省成本,非常適用于開發(fā)實用簡約的嵌入式控制程序。
  摩托羅拉的MPC555是建立在PowerPC體系結(jié)構(gòu)上,采用RISC技術(shù)的一款高檔、適用于精密控制的微控制器、其芯片內(nèi)嵌增加了浮點單元的32位RCPU核心、26KB靜態(tài)RAM、448KB片內(nèi)Flash、一個QSMCM(串行通訊模塊)、兩個TouCAN模塊、兩個TPU、一個MIOS(模塊化I/O系統(tǒng))、兩個QADC模塊,工作頻率達(dá)40MHz。另外芯片體積小,僅為2.5cm×2.5cm×0.5cm。所有這些特性使其特別適用于汽車等現(xiàn)場控制領(lǐng)域的嵌入式微控制系統(tǒng)
  將μC/OS-II移植于MPC555上既有益于MPC和μC/OS-II在車用控制器上的應(yīng)用,其成果也可以用于其他嵌入式工業(yè)控制領(lǐng)域。本次移植中,使用CodeWarrior for PPC 6.5編譯調(diào)試環(huán)境。
  1 移植原理
  μC/OS-II包括中斷管理、任務(wù)管理、時間管理、任務(wù)之間通信管理和內(nèi)存管理五方面功能、其結(jié)構(gòu)共分三層,如圖1。I層為與處理器相關(guān)的代碼,在μC/OS-II的Intel 80x86版本上為OS_CPU.H、OS_CPU_C.C和OS_CPU_A.ASM三個文件。該層完成系統(tǒng)時鐘的設(shè)置、出入中斷的管理和任務(wù)切換功能,為第II層提供接口。II層包括時間管理、任務(wù)調(diào)度管理、任務(wù)間的通信管理和內(nèi)存管理四部分,是OS的主體部分,全部由ANSI C代碼寫成,與處理器無關(guān),它為用戶應(yīng)用程序提供接口。III層是用戶應(yīng)用程序部分,μC/OS-II有中斷和任務(wù)兩個處理級別,用戶可以建立自己的任務(wù),編寫必要的中斷子程,在任務(wù)之間或任務(wù)與中斷子程之間建立信號量、郵箱或消息隊列完成控制器軟件的編寫。根據(jù)以上結(jié)構(gòu)特點,在移植過程中,只需將I層代碼針對MPC555的編程結(jié)構(gòu)做相應(yīng)改動,使其完成系統(tǒng)時鐘設(shè)置、中斷管理和任務(wù)切換功能即可。
  μC/OS-II在MPC555上的移植
  在前后臺系統(tǒng)中,提供一個CPU堆棧?發(fā)生中斷時,將當(dāng)前使用到的寄存器壓入堆棧,保存現(xiàn)場,執(zhí)行中斷程序;中斷程序完成后,從CPU堆棧中彈出寄存器的值,恢復(fù)現(xiàn)場。
  在多任務(wù)系統(tǒng)μC/OS-II中不是這樣。OS創(chuàng)建時,為每個任務(wù)建立并初始化一個堆棧。當(dāng)發(fā)生中斷或任務(wù)切換時,把當(dāng)前任務(wù)運行現(xiàn)場保存起來,即將所有寄存器保存到該“舊”任務(wù)的堆棧中。當(dāng)某個任務(wù)需要從就緒狀態(tài)激活到運行狀態(tài)時,OS又需將所有寄存器從該“新”任務(wù)的堆棧中彈出。這樣,每個任務(wù)分時占用CPU。而對各任務(wù)來說,每次進(jìn)入運行態(tài)時,CPU狀態(tài)都與上次從運行態(tài)退出時完全一樣。所以不再是使用一個CPU堆棧,而是多個任務(wù)將各自的運行現(xiàn)場保存到自己的堆棧中。
  另外,調(diào)用C函數(shù)時也會使用到堆棧,此時編譯器會創(chuàng)建一個堆棧;在C函數(shù)返回時,將其釋放、其大小因C函數(shù)使用到的變量和編譯器的不同而不同、在移植時,能夠正確創(chuàng)建、初始化、保存并恢復(fù)各個任務(wù)的堆棧,是確保OS任務(wù)切換和中斷管理順利完成的關(guān)鍵。
  MPC555有32個32bit通用定點數(shù)寄存器,32個64bit浮點數(shù)寄存器,另有9個控制/狀態(tài)寄存器。針對MPC555的編程結(jié)構(gòu),設(shè)計如表1的堆棧結(jié)構(gòu)。每次任務(wù)環(huán)境入棧時創(chuàng)建一含73個位置的堆棧,為了保證浮點數(shù)寄存器的完整,每個位置為64bit寬。創(chuàng)建任務(wù)時,建立該堆棧結(jié)構(gòu),并用默認(rèn)值對其進(jìn)行初始化。在任務(wù)保存或激活時把寄存器的值保存到堆棧中相應(yīng)位置,或者從堆棧的相應(yīng)位置把寄存器值彈出。其中GPR1被MPC作為堆棧指針SP使用,在堆棧操作時,要注意控制好SP。
下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1TC358743XBG評估板參考手冊
  2. 1.36 MB  |  330次下載  |  免費
  3. 2開關(guān)電源基礎(chǔ)知識
  4. 5.73 MB  |  6次下載  |  免費
  5. 3100W短波放大電路圖
  6. 0.05 MB  |  4次下載  |  3 積分
  7. 4嵌入式linux-聊天程序設(shè)計
  8. 0.60 MB  |  3次下載  |  免費
  9. 5基于FPGA的光纖通信系統(tǒng)的設(shè)計與實現(xiàn)
  10. 0.61 MB  |  2次下載  |  免費
  11. 6基于FPGA的C8051F單片機開發(fā)板設(shè)計
  12. 0.70 MB  |  2次下載  |  免費
  13. 751單片機窗簾控制器仿真程序
  14. 1.93 MB  |  2次下載  |  免費
  15. 8基于51單片機的RGB調(diào)色燈程序仿真
  16. 0.86 MB  |  2次下載  |  免費

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費
  3. 2555集成電路應(yīng)用800例(新編版)
  4. 0.00 MB  |  33564次下載  |  免費
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費
  7. 4開關(guān)電源設(shè)計實例指南
  8. 未知  |  21548次下載  |  免費
  9. 5電氣工程師手冊免費下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費
  11. 6數(shù)字電路基礎(chǔ)pdf(下載)
  12. 未知  |  13750次下載  |  免費
  13. 7電子制作實例集錦 下載
  14. 未知  |  8113次下載  |  免費
  15. 8《LED驅(qū)動電路設(shè)計》 溫德爾著
  16. 0.00 MB  |  6653次下載  |  免費

總榜

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