freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

rtx51實(shí)時(shí)操作系統(tǒng)(1)-資料下載頁

2025-05-10 12:25本頁面
  

【正文】 于運(yùn)行狀態(tài) Ready就緒狀態(tài) 等待執(zhí)行的任務(wù),當(dāng)前任務(wù)執(zhí)行完后,接著執(zhí)行就緒狀態(tài)任務(wù) Waiting等待狀態(tài) 等待某一事件的任務(wù),如事件發(fā)生,任務(wù)進(jìn)入就緒狀態(tài) Deleted刪除狀態(tài) 沒有啟動(dòng)的任務(wù) Timeout超時(shí)狀態(tài) 與就緒狀態(tài)相似,放在 roundrobin中尚未執(zhí)行的任務(wù) RTX51以 roundrobin多任務(wù)方式執(zhí)行程序 , 它支持多個(gè)無限循環(huán)或任務(wù)的 準(zhǔn)并行執(zhí)行 。 任務(wù)不是被同時(shí)執(zhí)行 , 而是以 分時(shí)的方式輪片執(zhí)行 。 可用的 CPU時(shí)鐘周期被分成多個(gè)時(shí)間片 , 然后由 RTX51 將這些時(shí)間片分配給各個(gè)任務(wù) 。 每個(gè)任務(wù)只允許在預(yù)定的時(shí)間片中執(zhí)行 , 時(shí)間片用完時(shí) , RTX51就切換至另一個(gè)就緒的任務(wù) , 繼續(xù)執(zhí)行一段時(shí)間 。 時(shí)間片的具體長度可以用配置函數(shù) TIMESHARING來定義 。 如果遇到因?yàn)橐粋€(gè)任務(wù)處于等待并且占用了時(shí)間片而暫時(shí)無法往下執(zhí)行,可以調(diào)用系統(tǒng)函數(shù) os_wait來通知 RTX51,以便將當(dāng)前的 任務(wù)掛起 而提前執(zhí)行另一任務(wù)。 RTX51 中 處 理 任 務(wù) 分 配 的 模 塊 稱 為 調(diào) 度 程 序( Scheduler) 。 調(diào)度程序驅(qū)動(dòng)哪個(gè)任務(wù)運(yùn)行是按照以下的規(guī)則進(jìn)行的: ( 1) 如果發(fā)生以下情況時(shí) , 當(dāng)前運(yùn)行的任務(wù)將被中斷: 調(diào)用 os_wait函數(shù) , 而所等待的事件未來到; 任務(wù)的執(zhí)行時(shí)間已經(jīng)超過所定義的 RoundRobin循環(huán)時(shí)間間隔 ( 2) 如果發(fā)生以下情況時(shí) , 另一個(gè)任務(wù)將被啟動(dòng): 已沒有正在執(zhí)行的任務(wù); 將要執(zhí)行的任務(wù)處在就緒狀態(tài)或超時(shí)狀態(tài)。 RTX51的系統(tǒng)配置 編寫 RTX51程序需要包含 文件 。 在程序中 , 需要用一個(gè)關(guān)鍵字 “ _task_” 來聲明一個(gè)函數(shù)的任務(wù)屬性 。 RTX51程序不需要 main 函數(shù) 。 在進(jìn)行連接處理時(shí) , 會(huì)將 啟動(dòng)任務(wù) 0的執(zhí)行所需要的代碼連接進(jìn)來 , 作為開始執(zhí)行的代碼 。 用戶可以更改配置文件 : ① 系統(tǒng)定時(shí)器中斷所用的寄存器組 ② 系統(tǒng)定時(shí)器的時(shí)間間隔 ③ RoundRobin的超時(shí) ( timeout) 值 ④ 內(nèi)部數(shù)據(jù)存儲(chǔ)器的大小 ⑤ RTX5l啟動(dòng)后的自由堆棧大小 以下是配置文件的部分內(nèi)容: 。RTX51 的硬件定時(shí)器 。用下面的 EQU可預(yù)置 RTX51的定時(shí)器時(shí)間常數(shù) 。用 8051 定時(shí)器 0 作為控制軟件的定時(shí)器 。定義定時(shí)器中斷用的寄存器組 INT_REGBANK EQU 1 。默認(rèn)為寄存器 1組 。定義 8051定時(shí)器 0溢出所需的機(jī)器周期數(shù) INT_CLOCK EQU 10000 。默認(rèn)周期數(shù)為 10000 。定義 RoundRobin 的 Timeout 所需的定時(shí)器溢出數(shù) TIMESHARING EQU 5 。默認(rèn)為 5次 。注意: RoundRobin任務(wù)切換可用 TIMESHARING為 0來屏蔽 。RTX51 堆??臻g 。以下的 EQU語句定義了堆棧區(qū)的片內(nèi) RAM 體積和最小自由堆??臻g ;定義了堆??臻g耗盡后所執(zhí)行的宏代碼 ;定義最大的堆棧 RAM 地址 RAMTOP EQU 0FFH ;默認(rèn)地址是 255 。定義最小的堆棧自由空間 FREE_STACK EQU 20 ;默認(rèn)為 20 字節(jié)堆棧自由空間 。 ;發(fā)生堆棧用盡時(shí)的執(zhí)行代碼 STACK_ERROR MACRO CLR EA 。關(guān)閉所有中斷 SJMP $ 。如堆棧空間耗盡 , 進(jìn)入死循環(huán) ENDM 在這個(gè)配置文件中,定義了許多可以修改的參數(shù),以適應(yīng)用戶特定的應(yīng)用程序環(huán)境。這些參數(shù)的說明詳見下表。 配置文件參數(shù)說明 參數(shù) 描述 INT_REGBANK 說明 RTX51系統(tǒng)所用的寄存器組 INT_CLOCK 定義系統(tǒng)時(shí)間間隔,系統(tǒng)用這個(gè)間隔產(chǎn)生一個(gè)中斷信號(hào), 定義的數(shù)據(jù)是指每次中斷發(fā)生所需的 CPU周期數(shù) TIMESHARING 定義 RoundRobin任務(wù)切換的超時(shí)間隔( timeout), 它是定時(shí)器溢出中斷次數(shù),發(fā)生指定次數(shù)中斷后切換任務(wù)。 如果是 0,則多任務(wù) RoundRobin機(jī)制被屏蔽 RAMTOP 說明 8051片內(nèi) RAM的最大地址, 8051為 7FH, 8052為 0FFH FREE_STACK 定義任務(wù)切換的堆棧自由空間體積字節(jié)數(shù)。 RTX51會(huì)檢驗(yàn)堆棧體積是否合理。 如太小,引用 STACK_ERROR宏 STACK_ERROR 當(dāng) RTX51檢測到堆棧出錯(cuò)時(shí)執(zhí)行的宏, 可以根據(jù)應(yīng)用程序需求更換這個(gè)宏 RTX51的應(yīng)用舉例 采用 RTX51實(shí)現(xiàn)的簡單的交通燈控制,交通燈控制過程如下: 綠燈亮,車通行; 綠燈保持 10秒后,閃爍 3秒轉(zhuǎn)亮黃燈 3秒; 黃燈滅后,紅燈亮 10秒,人通行; 然后又亮綠燈,周而復(fù)始。 為方便學(xué)習(xí)調(diào)試,這里采用串口輸出不同的文本串來指示綠燈亮、綠燈閃爍(文本串閃爍)、黃燈亮、紅燈亮4種狀態(tài)。 應(yīng)用演示 C:\Documents and Settings\All Users\桌面 \Keil 小結(jié) 本章介紹了 RTX51Tiny版的使用。 RTX51是一款適合做8051嵌入式系統(tǒng)平臺(tái)的實(shí)時(shí)操作系統(tǒng)。 RTX51專門針對 51設(shè)計(jì),小巧緊湊,代碼開放。很多應(yīng)用證明這是一個(gè)成功的 8位單片機(jī)的 RTOS。但是在應(yīng)用過程中應(yīng)該注意它的使用場合。比如說,開發(fā)一個(gè)某家電的紅外遙控器,可以用8051實(shí)現(xiàn),但沒必要加入個(gè) RTOS,為其編寫個(gè)專用的監(jiān)控程序就可以了。此外,由于 RTX51是一個(gè)多任務(wù)的操作系統(tǒng),所有在它的框架下所使用的函數(shù)一般都要求有 可重入性 。
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1