電子發(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)>電子資料下載>單片機>RTX51 Tiny中有哪些問題容易混淆如何解決

RTX51 Tiny中有哪些問題容易混淆如何解決

2019-08-19 | pdf | 0.08 MB | 次下載 | 1積分

資料介紹

  RTX51 Tiny是 Keil uVision中自帶的一個小型嵌入式RTOS,具有小巧、速度快、系統(tǒng)開銷小、使用方便等優(yōu)點。使用RTX51 Tiny能夠提高系統(tǒng)的穩(wěn)定性,優(yōu)化程序的性能;而且它是為51單片機專門定制的,所以在51單片機上的運行效率比其它一些通用的RTOS性能也要好一些。

  但是,由于RTX51 Tiny的相關(guān)資料和書籍比較少,大部分只是對程序自帶幫助文件的簡單翻譯,很少進行深入探討。

  下面就RTX51 Tiny使用中經(jīng)常遇到的一些問題進行探討。

  1 關(guān)于時間片的問題 RTX51 Tiny使用的是無優(yōu)先級時間片輪詢法,每個任務(wù)使用相同大小的時間片,但是時間片是怎樣確定的呢? RTX51 Tiny的配置參數(shù)(Conf_tny.a51文件中)中有INT_CLOCK和TIMESHARING兩個參數(shù)。這兩個參數(shù)決定了每個任務(wù)使用時間片的大小: INT_CLOCK是時鐘中斷使用的周期數(shù),也就是基本時間片;TIMESHARING是每個任務(wù)一次使用的時間片數(shù)目。兩者決定了一個任務(wù)一次使用的最大時間片。如假設(shè)一個系統(tǒng)中INT_CLOCK設(shè)置為10000,即10ms,那么TIMESHARING=1時,一個任務(wù)使用的最大時間片是10ms;TIMESHARING=2時,任務(wù)使用最大的時間片是20ms;TIMESHARING=5時,任務(wù)使用最大的時間片是50ms;當TIMESHARING設(shè)置為0時,系統(tǒng)就不會進行自動任務(wù)切換了,這時需要用os_switch_task函數(shù)進行任務(wù)切換。這部分功能是RTX51 Tiny 2.0中新增加的。

  2 關(guān)于os_wait延時的問題

  os_wait 是RTX51 Tiny中的基本函數(shù)之一。它的功能是將當前任務(wù)掛起來,等待一個啟動信號(K_SIG)或超時信號(K_TMO)或周期信號(K_IVL)或者是它們之間的組合。雖然os_wait很簡單,但是因為涉及到多任務(wù)的操作方式,很容易產(chǎn)生誤解。

  2.1 關(guān)于K_TMO的延時時間

  在RTX51 Tiny中,如果一個任務(wù)中使用了os_wait(K_TMO,1,0),那么它的延時時間是多少呢? 很多人都會認為是一個時間片,其實這不完全對。正確的理解是,延時時間與正在運行的任務(wù)相關(guān)。因為RTX51 Tiny是一個非占先或多優(yōu)先級的實時操作系統(tǒng),是一個平級的時間片輪詢實時操作系統(tǒng),所有的任務(wù)平等運行。K_TMO是等待產(chǎn)生超時信號,當信號產(chǎn)生后,只是將相應(yīng)的任務(wù)置上就緒標志位,任務(wù)并不是立即就能夠運行。任務(wù)需要等到其它任務(wù)輪流執(zhí)行,到自己的時間片后才會執(zhí)行。這就是說,最后的效果是延時時間加上正在運行的任務(wù)執(zhí)行時間,而這個時間是與任務(wù)數(shù)和任務(wù)運行情況相關(guān)的。如果其它任務(wù)執(zhí)行的時間短,那么延時可能只是一個時間片;如果其它任務(wù)執(zhí)行的時間長,那么就需要多個時間片了。用os_wait做時鐘是不準確的。關(guān)于延時時間還有一個很容易理解錯的地方,那就是os_wait中無論使用K_TMO還是K_IVL參數(shù),延時的時間都只與INT_CLOCK有關(guān),而與 TIMESHARING無關(guān)?;蛘哒f,os_wait函數(shù)一次只使用一個基本時間片,而不是任務(wù)的時間片。

下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  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. 651單片機窗簾控制器仿真程序
  12. 1.93 MB  |  2次下載  |  免費
  13. 751單片機大棚環(huán)境控制器仿真程序
  14. 1.10 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. 未知  |  21549次下載  |  免費
  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  |  183279次下載  |  免費
  15. 8proe5.0野火版下載(中文版免費下載)
  16. 未知  |  138040次下載  |  免費