<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 嵌入式實(shí)時(shí)操作系統(tǒng)μC/OS-Ⅱ的移植實(shí)例

          嵌入式實(shí)時(shí)操作系統(tǒng)μC/OS-Ⅱ的移植實(shí)例

          作者: 時(shí)間:2012-04-05 來(lái)源:網(wǎng)絡(luò) 收藏

          3.2 修改OS_CPU_C.C文件
          3.2.1 任務(wù)堆棧初始化
          修改OSTaskStkInit()函數(shù),OSTaskStkInit()由任務(wù)創(chuàng)建函數(shù)OSTaskCreate()或OSTaskCreateExT()調(diào)用,用來(lái)初始化任務(wù)的堆棧。OS Task StkInit()與調(diào)用它的函數(shù)由3個(gè)參數(shù)進(jìn)行傳遞:任務(wù)代碼起始地址(task),參數(shù)指針(p_arg),任務(wù)堆棧頂?shù)刂?ptos)。
          e.JPG
          后5個(gè)函數(shù)為鉤子函數(shù),如無(wú)特殊需求可以不加代碼。
          3.2.2 中斷級(jí)任務(wù)切換函數(shù)
          OSIntCtxSw()函數(shù)通過(guò)設(shè)置一個(gè)全局變量OSIntCtxSwFlag標(biāo)志以表示在中斷服務(wù)程序中進(jìn)行任務(wù)切換,并在OSTickISR()中判斷該變量以進(jìn)行正確的動(dòng)作。
          f.JPG
          3.3 修改OS_CPU_A.ASM文件
          在此文件中需改寫(xiě)4個(gè)函數(shù):OSStartHighRdy(),OSCtxSw(),OSIntCtxSw()和OSTickISR()。
          3.3.1 OSStartHighRdy()函數(shù)
          該函數(shù)由OSStart()調(diào)用,功能是運(yùn)行優(yōu)先級(jí)最高的就緒任務(wù),其代碼如下:
          g.JPG
          h.JPG
          linux操作系統(tǒng)文章專(zhuān)題:linux操作系統(tǒng)詳解(linux不再難懂)


          評(píng)論


          相關(guān)推薦

          技術(shù)專(zhuān)區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();