資料介紹
RTX51 Tiny是 Keil uVision中自帶的一個小型嵌入式RTOS,具有小巧、速度快、系統開銷小、使用方便等優點。使用RTX51 Tiny能夠提高系統的穩定性,優化程序的性能;而且它是為51單片機專門定制的,所以在51單片機上的運行效率比其它一些通用的RTOS性能也要好一些。
但是,由于RTX51 Tiny的相關資料和書籍比較少,大部分只是對程序自帶幫助文件的簡單翻譯,很少進行深入探討。
下面就RTX51 Tiny使用中經常遇到的一些問題進行探討。
1 關于時間片的問題 RTX51 Tiny使用的是無優先級時間片輪詢法,每個任務使用相同大小的時間片,但是時間片是怎樣確定的呢? RTX51 Tiny的配置參數(Conf_tny.a51文件中)中有INT_CLOCK和TIMESHARING兩個參數。這兩個參數決定了每個任務使用時間片的大小: INT_CLOCK是時鐘中斷使用的周期數,也就是基本時間片;TIMESHARING是每個任務一次使用的時間片數目。兩者決定了一個任務一次使用的最大時間片。如假設一個系統中INT_CLOCK設置為10000,即10ms,那么TIMESHARING=1時,一個任務使用的最大時間片是10ms;TIMESHARING=2時,任務使用最大的時間片是20ms;TIMESHARING=5時,任務使用最大的時間片是50ms;當TIMESHARING設置為0時,系統就不會進行自動任務切換了,這時需要用os_switch_task函數進行任務切換。這部分功能是RTX51 Tiny 2.0中新增加的。
2 關于os_wait延時的問題
os_wait 是RTX51 Tiny中的基本函數之一。它的功能是將當前任務掛起來,等待一個啟動信號(K_SIG)或超時信號(K_TMO)或周期信號(K_IVL)或者是它們之間的組合。雖然os_wait很簡單,但是因為涉及到多任務的操作方式,很容易產生誤解。
2.1 關于K_TMO的延時時間
在RTX51 Tiny中,如果一個任務中使用了os_wait(K_TMO,1,0),那么它的延時時間是多少呢? 很多人都會認為是一個時間片,其實這不完全對。正確的理解是,延時時間與正在運行的任務相關。因為RTX51 Tiny是一個非占先或多優先級的實時操作系統,是一個平級的時間片輪詢實時操作系統,所有的任務平等運行。K_TMO是等待產生超時信號,當信號產生后,只是將相應的任務置上就緒標志位,任務并不是立即就能夠運行。任務需要等到其它任務輪流執行,到自己的時間片后才會執行。這就是說,最后的效果是延時時間加上正在運行的任務執行時間,而這個時間是與任務數和任務運行情況相關的。如果其它任務執行的時間短,那么延時可能只是一個時間片;如果其它任務執行的時間長,那么就需要多個時間片了。用os_wait做時鐘是不準確的。關于延時時間還有一個很容易理解錯的地方,那就是os_wait中無論使用K_TMO還是K_IVL參數,延時的時間都只與INT_CLOCK有關,而與 TIMESHARING無關。或者說,os_wait函數一次只使用一個基本時間片,而不是任務的時間片。
- RTX51 Tiny用戶手冊 0次下載
- RTX51-Tiny使用手冊 32次下載
- RTX51 Tiny 學習筆記(四)
- C51單片機與實時系統RTX51(Tiny / Full)
- RTX51 Tiny中容易混淆的問題有哪些應該如何解決
- RTX51 Tiny有哪些問題容易混淆
- RTX51 Tiny中有哪些問題容易混淆
- 《RTX51中英文版》KEIL RTX51實時操作 0次下載
- RTX51入門手冊 0次下載
- 如何使用rtx51小型實時操作系統
- 基于RTX51 TINY的加密短消息通信系統
- KEIL RTX51實時操作系統中文版 0次下載
- 基于RTX51的按摩椅電機動作系統設計
- KEIL RTX51 TINY內核的分析與應用
- KEIL RTX51 FULL版 0次下載
- JavaScript壓縮、混淆和加密技術原理解析 3250次閱讀
- NVIDIA RTX 5000 Ada顯卡性能實測報告 7706次閱讀
- java中的代碼混淆技術 1553次閱讀
- APP混淆實戰(Java/so代碼混淆) 925次閱讀
- 基于嵌入實時操作系統和單片機實現加密短消息通信系統的設計 2159次閱讀
- 基于RTX51操作系統實現地面移動機器人控制系統的設計 3042次閱讀
- 基于實時操作系統RTX51和AT89C52單片機實現智能交通燈的設計 3322次閱讀
- 友善之臂Tiny210核心板介紹 8084次閱讀
- 友善之臂Tiny4412核心板介紹 1.1w次閱讀
- 友善之臂Smart210核心板介紹 1w次閱讀
- 如何解決PCB板子上焊盤容易脫落的問題 1.5w次閱讀
- PLC編程中容易混淆的AND指令和OR指令 1.3w次閱讀
- 電壓重動、電壓并列和電壓切換這幾個概念對剛接觸的初學者很容易混淆 3.4w次閱讀
- 分類問題統計指標入門:混淆矩陣、召回、誤檢率、AUROC 1.9w次閱讀
- 51單片機計數器與定時器的區別 1.4w次閱讀
下載排行
本周
- 1人形機器人電機驅動和傳感報告
- 4.27 MB | 11次下載 | 免費
- 2Altium Designer元件庫
- 17.11 MB | 6次下載 | 免費
- 324V2A開關電源PCB資料分享
- 0.23 MB | 4次下載 | 1 積分
- 4GD100PIX120C6SNA規格書
- 0.98 MB | 3次下載 | 免費
- 5Multisim模擬電路仿真教程
- 1.93 MB | 1次下載 | 3 積分
- 6BK7258英文規格書
- 1.67 MB | 1次下載 | 免費
- 7RA4L1硬件手冊
- 21.89 MB | 1次下載 | 免費
- 8RA4L1_SENSOR-V1原理圖
- 754.36 KB | 1次下載 | 免費
本月
- 1晶體三極管的電流放大作用詳細說明
- 0.77 MB | 32次下載 | 2 積分
- 2雙極型三極管放大電路的三種基本組態的學習課件免費下載
- 4.03 MB | 25次下載 | 1 積分
- 3AIWA HS-J303 MKⅡ維修手冊
- 22.47 MB | 24次下載 | 10 積分
- 4九陽豆漿機高清原理圖
- 2.47 MB | 23次下載 | 1 積分
- 5多級放大電路的學習課件免費下載
- 1.81 MB | 21次下載 | 2 積分
- 6AIWA HS-J202/HS-J202M/HS-J800維修手冊
- 13.60 MB | 16次下載 | 10 積分
- 7人形機器人電機驅動和傳感報告
- 4.27 MB | 11次下載 | 免費
- 8東芝彩色電視機29SF6C維修說明書
- 4.86 MB | 9次下載 | 1 積分
總榜
- 1matlab軟件下載入口
- 未知 | 935127次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關降壓/升壓雙向直流/直流轉換器 PCB layout 設計
- 1.48MB | 420063次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233089次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費下載
- 340992 | 191382次下載 | 10 積分
- 5十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183338次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81586次下載 | 10 積分
- 7Keil工具MDK-Arm免費下載
- 0.02 MB | 73814次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65988次下載 | 10 積分
評論