資料介紹
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)。或者說,os_wait函數(shù)一次只使用一個基本時間片,而不是任務(wù)的時間片。
- RTX51 Tiny用戶手冊 0次下載
- RTX51-Tiny使用手冊 32次下載
- RTX51 Tiny 學習筆記(四)
- C51單片機與實時系統(tǒng)RTX51(Tiny / Full)
- RTX51 Tiny中容易混淆的問題有哪些應(yīng)該如何解決
- RTX51 Tiny有哪些問題容易混淆
- RTX51 Tiny中有哪些問題容易混淆
- 《RTX51中英文版》KEIL RTX51實時操作 0次下載
- RTX51入門手冊 0次下載
- 如何使用rtx51小型實時操作系統(tǒng)
- 基于RTX51 TINY的加密短消息通信系統(tǒng)
- KEIL RTX51實時操作系統(tǒng)中文版 0次下載
- 基于RTX51的按摩椅電機動作系統(tǒng)設(shè)計
- KEIL RTX51 TINY內(nèi)核的分析與應(yīng)用
- KEIL RTX51 FULL版 0次下載
- JavaScript壓縮、混淆和加密技術(shù)原理解析 3250次閱讀
- NVIDIA RTX 5000 Ada顯卡性能實測報告 7706次閱讀
- java中的代碼混淆技術(shù) 1553次閱讀
- APP混淆實戰(zhàn)(Java/so代碼混淆) 925次閱讀
- 基于嵌入實時操作系統(tǒng)和單片機實現(xiàn)加密短消息通信系統(tǒng)的設(shè)計 2159次閱讀
- 基于RTX51操作系統(tǒng)實現(xiàn)地面移動機器人控制系統(tǒng)的設(shè)計 3042次閱讀
- 基于實時操作系統(tǒng)RTX51和AT89C52單片機實現(xiàn)智能交通燈的設(shè)計 3322次閱讀
- 友善之臂Tiny210核心板介紹 8084次閱讀
- 友善之臂Tiny4412核心板介紹 1.1w次閱讀
- 友善之臂Smart210核心板介紹 1w次閱讀
- 如何解決PCB板子上焊盤容易脫落的問題 1.5w次閱讀
- PLC編程中容易混淆的AND指令和OR指令 1.3w次閱讀
- 電壓重動、電壓并列和電壓切換這幾個概念對剛接觸的初學者很容易混淆 3.4w次閱讀
- 分類問題統(tǒng)計指標入門:混淆矩陣、召回、誤檢率、AUROC 1.9w次閱讀
- 51單片機計數(shù)器與定時器的區(qū)別 1.4w次閱讀
下載排行
本周
- 1DeepSeek:從入門到精通
- 5.36 MB | 6次下載 | 1 積分
- 2IP6823 支持 qi 認證的無線充電發(fā)射控制 SOC
- 1.01 MB | 1次下載 | 免費
- 3IP6824? 全集成QI?無線充電發(fā)射控制SOC
- 1.22 MB | 1次下載 | 免費
- 4PESD18VY1BBIF保護二極管規(guī)格書
- 4.56MB | 次下載 | 免費
- 574HC4050緩沖器規(guī)格書
- 217.58KB | 次下載 | 免費
- 674HC193;74HC7193二進制加減計數(shù)器規(guī)格書
- 327.93KB | 次下載 | 免費
- 774HC73-Q100雙JK觸發(fā)器規(guī)格書
- 220.85KB | 次下載 | 免費
- 8ASW3410 USB3.1高速數(shù)據(jù)開關(guān)切換規(guī)格書
- 1.39 MB | 次下載 | 免費
本月
- 1A7159和A7139射頻芯片的資料免費下載
- 0.20 MB | 55次下載 | 5 積分
- 2零死角玩轉(zhuǎn)STM32F103—指南者
- 26.78 MB | 41次下載 | 1 積分
- 3PIC12F629/675 數(shù)據(jù)手冊免費下載
- 2.38 MB | 36次下載 | 5 積分
- 4PIC16F716 數(shù)據(jù)手冊免費下載
- 2.35 MB | 18次下載 | 5 積分
- 5GD32F4xx用戶手冊
- 14.49MB | 14次下載 | 免費
- 6dsPIC33EDV64MC205電機控制開發(fā)板用戶指南
- 5.78MB | 8次下載 | 免費
- 7STC15系列常用寄存器匯總免費下載
- 1.60 MB | 7次下載 | 5 積分
- 8DeepSeek:從入門到精通
- 5.36 MB | 6次下載 | 1 積分
總榜
- 1matlab軟件下載入口
- 未知 | 935124次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計
- 1.48MB | 420063次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233088次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費下載
- 340992 | 191367次下載 | 10 積分
- 5十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183335次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81581次下載 | 10 積分
- 7Keil工具MDK-Arm免費下載
- 0.02 MB | 73813次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65988次下載 | 10 積分
評論