資料介紹
今天的內(nèi)容主要講述進(jìn)入和退出中斷的方法、臨界區(qū)的介紹以及延時(shí)函數(shù),取消延時(shí)函數(shù)和獲取系統(tǒng)時(shí)間。
1、ucosIII中斷
中斷:應(yīng)內(nèi)部或外部異步事件的請(qǐng)求中止當(dāng)前任務(wù),而去處理異步事件所要求的任務(wù)的過(guò)程叫做中斷。
進(jìn)入中斷
OSIntNestingCtr來(lái)記錄中斷嵌套次數(shù),UCOSIII最多支持250級(jí)的中斷嵌套。退出中斷服務(wù)函數(shù)時(shí)要調(diào)用函數(shù)OSIntExit()。
退出中斷
退出函數(shù)內(nèi)部步驟如下:
1、系統(tǒng)是否運(yùn)行。不符合則退出
2、關(guān)閉全局中斷
3、中斷嵌套次數(shù)和任務(wù)切換次數(shù)記錄
4、進(jìn)行中斷級(jí)任務(wù)切換
臨界區(qū)
1、臨界段代碼也叫做臨界區(qū),是指那些必須完整連續(xù)運(yùn)行,不可被打斷的代碼段。當(dāng)訪(fǎng)問(wèn)這些臨界段代碼的時(shí)候需要對(duì)這些臨界段代碼進(jìn)行保護(hù)
2、宏OS_CFG_ISR_POST_DEFERRED_EN:
0:UCOSIII使用關(guān)中斷的方式來(lái)保護(hù)臨界段代碼
1:采用給調(diào)度器上鎖的方式來(lái)保護(hù)臨界段代碼。
3、UCOSIII定義了一個(gè)進(jìn)入臨界段代碼的宏:OS_CRITICAL_ENTER(),定義了兩個(gè)退出臨界段代碼的宏:OS_CRITICAL_EXIT和OS_CRITICAL_EXIT_NO_SCHED()。
時(shí)間管理
任務(wù)延時(shí)
· UCOSIII中的任務(wù)是一個(gè)無(wú)限循環(huán)并且還是一個(gè)搶占式內(nèi)核,為了使高優(yōu)先級(jí)的任務(wù)不至于獨(dú)占CPU,可以給其他優(yōu)先級(jí)較低任務(wù)獲取CPU使用權(quán)的機(jī)會(huì),UCOSIII中除空閑任務(wù)外的所有任務(wù)必須在合適的位置調(diào)用系統(tǒng)提供的延時(shí)函數(shù)或者任務(wù)調(diào)度函數(shù),讓當(dāng)前的任務(wù)暫停運(yùn)行一段時(shí)間并進(jìn)行一個(gè)任務(wù)切換。
· 延時(shí)函數(shù)有兩種,OSTimeDly()—指定節(jié)拍數(shù)和OSTimeDlyHMSM()—參數(shù)直觀(guān)。
· OSTimeDly()函數(shù)有三種工作模式:相對(duì)模式、周期模式和絕對(duì)模式。
OSTimeDlyHMSM()函數(shù)僅在相對(duì)模式下工作。
取消任務(wù)延時(shí)
延時(shí)任務(wù)任務(wù)可通過(guò)在其他任務(wù)中調(diào)用函數(shù)OSTimeDlyResume()取消延時(shí)而進(jìn)入就緒狀態(tài),此函數(shù)最后會(huì)引發(fā)一次任務(wù)調(diào)度。
獲取和設(shè)置系統(tǒng)時(shí)間
· UCOSIII定義了一個(gè)CPU_INT32U類(lèi)型的全局變量OSTickCtr來(lái)記錄系統(tǒng)時(shí)鐘節(jié)拍數(shù),在調(diào)用OSInit()時(shí)被初始化為0,以后每發(fā)生1個(gè)時(shí)鐘節(jié)拍,OSTickCtr加1。
· OSTimeSet()允許用戶(hù)改變當(dāng)前時(shí)鐘節(jié)拍計(jì)數(shù)器的值,慎用!?。。?!
· OSTimeGet()用來(lái)獲取動(dòng)遷時(shí)鐘節(jié)拍計(jì)數(shù)器的值。
(mbbeetchina)
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- STM32之FreeRTOS:(一) 中斷配置和臨界段的使用
- UCOSIII學(xué)習(xí)筆記(二)任務(wù)管理、Hook函數(shù)、中斷
- UCOSIII 系統(tǒng)(STM32任務(wù)管理)學(xué)習(xí)筆記
- FreeRTOS學(xué)習(xí)筆記--臨界段代碼處關(guān)閉中斷
- 中斷與事件關(guān)系的解剖資料下載
- Android電源管理設(shè)計(jì)資料下載
- STM32按鍵掃描/按鍵中斷/外部中斷資料下載
- Cortex-M3 NVIC與中斷控制資料下載
- 中斷時(shí)間間隔的中斷服務(wù)程序?qū)崿F(xiàn)免費(fèi)下載
- FWLib3.5和uCOSIII3.03源代碼資料免費(fèi)下載 66次下載
- uCOSIII源代碼資料下載 41次下載
- UCOS擴(kuò)展例程-UCOSIII時(shí)間片輪轉(zhuǎn)調(diào)度 22次下載
- UCOS擴(kuò)展例程-UCOSIII內(nèi)存管理 25次下載
- 時(shí)間管理手冊(cè)
- 西安交通大學(xué)管理學(xué)院項(xiàng)目時(shí)間管理 0次下載
- RTOS的流緩沖區(qū)機(jī)制解析 1.1k次閱讀
- 多區(qū)飛行時(shí)間(ToF)傳感器的特點(diǎn) 2k次閱讀
- RTOS中臨界區(qū)的使用技巧 1.4k次閱讀
- RF-ADC后臺(tái)校準(zhǔn)原理及收斂時(shí)間測(cè)量 4.7k次閱讀
- SIMATIC S7-1500 PLC時(shí)間中斷組織塊及其應(yīng)用 4.5k次閱讀
- 石墨烯制備新技能:超臨界流體技術(shù) 2.3k次閱讀
- STM32中斷系統(tǒng)的工作流程 4k次閱讀
- 什么是RTOS臨界段 1.8k次閱讀
- CKS32F4xx系列產(chǎn)品NVIC中斷優(yōu)先級(jí)管理單元講解 2.1k次閱讀
- 三菱PLC中斷程序如何觸發(fā) 9.1k次閱讀
- 8051單片機(jī)定時(shí)器溢出中斷與CPU響應(yīng)中斷的時(shí)間誤差分析 4.8k次閱讀
- AVR單片機(jī)外部中斷實(shí)例及下載燒錄的方法 2.5k次閱讀
- 什么是單片機(jī)的中斷響應(yīng)時(shí)間 1.1w次閱讀
- 什么是臨界段 RTOS臨界段的作用是什么 1.2w次閱讀
- 51單片機(jī)中斷概述和中斷源以及中斷寄存器的詳細(xì)資料概述 1.8w次閱讀
下載排行
本周
- 1新一代網(wǎng)絡(luò)可視化(NPB 2.0)
- 3.40 MB | 1次下載 | 免費(fèi)
- 2冷柜-電氣控制系統(tǒng)講解
- 13.68 MB | 1次下載 | 10 積分
- 3MDD品牌三極管MMBT3906數(shù)據(jù)手冊(cè)
- 2.33 MB | 次下載 | 免費(fèi)
- 4MDD品牌三極管S9012數(shù)據(jù)手冊(cè)
- 2.62 MB | 次下載 | 免費(fèi)
- 5LAT1218 如何選擇和設(shè)置外部晶體適配 BlueNRG-X
- 0.60 MB | 次下載 | 3 積分
- 6LAT1216 Blue NRG-1/2 系列芯片 Flash 操作與 BLE 事件的互斥處理
- 0.89 MB | 次下載 | 3 積分
- 7收音環(huán)繞擴(kuò)音機(jī) AVR-1507手冊(cè)
- 2.50 MB | 次下載 | 免費(fèi)
- 8MS1000TA 超聲波測(cè)量模擬前端芯片技術(shù)手冊(cè)
- 0.60 MB | 次下載 | 免費(fèi)
本月
- 1愛(ài)華AIWA HS-J202維修手冊(cè)
- 3.34 MB | 37次下載 | 免費(fèi)
- 2PC5502負(fù)載均流控制電路數(shù)據(jù)手冊(cè)
- 1.63 MB | 23次下載 | 免費(fèi)
- 3NB-IoT芯片廠(chǎng)商的資料說(shuō)明
- 0.31 MB | 22次下載 | 1 積分
- 4UWB653Pro USB口測(cè)距通信定位模塊規(guī)格書(shū)
- 838.47 KB | 5次下載 | 免費(fèi)
- 5蘇泊爾DCL6907(即CHK-S007)單芯片電磁爐原理圖資料
- 0.04 MB | 4次下載 | 1 積分
- 6蘇泊爾DCL6909(即CHK-S009)單芯片電磁爐原理圖資料
- 0.08 MB | 2次下載 | 1 積分
- 7100W準(zhǔn)諧振反激式恒流電源電路圖資料
- 0.09 MB | 2次下載 | 1 積分
- 8FS8025B USB的PD和OC快充協(xié)議電壓誘騙控制器IC技術(shù)手冊(cè)
- 1.81 MB | 1次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935137次下載 | 10 積分
- 2開(kāi)源硬件-PMP21529.1-4 開(kāi)關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計(jì)
- 1.48MB | 420064次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233089次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191439次下載 | 10 積分
- 5十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
- 158M | 183353次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81602次下載 | 10 積分
- 7Keil工具M(jìn)DK-Arm免費(fèi)下載
- 0.02 MB | 73822次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65991次下載 | 10 積分
電子發(fā)燒友App





創(chuàng)作
發(fā)文章
發(fā)帖
提問(wèn)
發(fā)資料
發(fā)視頻
上傳資料賺積分
評(píng)論