找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3838|回復(fù): 2
打印 上一主題 下一主題
收起左側(cè)

有關(guān)uCos-II中關(guān)中斷處理的疑問

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:244881 發(fā)表于 2017-11-1 11:28 | 只看該作者 回帖獎勵 |正序瀏覽 |閱讀模式
大家好,新人首貼,歡迎大家批評指正。

最近在拜讀《嵌入式實時操作系統(tǒng)uCOS-II(第二版)》時,3.7節(jié)Idle Task中有如下描述:“空閑任務(wù)執(zhí)行計數(shù)器加1操作,中斷是先關(guān)閉再開啟的!闭f是因為防止加1操作被高優(yōu)先級任務(wù)或中斷服務(wù)程序打斷,我忽然想到:如果中斷被關(guān)閉期間,此時恰好來了一個外部IO中斷請求,這個中斷請求會使得某一個高優(yōu)先級任務(wù)進入就緒態(tài),會不會因為中斷被關(guān)閉而丟失掉這次請求。雖然說先關(guān)閉再開啟中斷這個過程時間比較短,但理論上是不是還是存在這種可能的?如果是,如何有效避免?歡迎大家一起討論
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

板凳
ID:244881 發(fā)表于 2017-11-3 11:43 | 只看該作者
yzwzfyz 發(fā)表于 2017-11-2 14:02
中斷源動作后會做一個標(biāo)記,這個標(biāo)記并不因為中斷關(guān)閉而消失。
CPU會不斷地檢查中斷標(biāo)記,如果被關(guān)閉則不 ...

如果是這樣,我就明白了,謝謝!
那同理,如果在關(guān)中斷期間,觸發(fā)了多個中斷,實際上也是多個中斷標(biāo)志被置位,只是因為關(guān)中斷的原因,此時不能跳轉(zhuǎn)到中斷處理函數(shù)進行處理,當(dāng)再次開中斷后,會按照中斷優(yōu)先級進行逐一跳轉(zhuǎn)處理,應(yīng)該是這樣吧?
回復(fù)

使用道具 舉報

沙發(fā)
ID:123289 發(fā)表于 2017-11-2 14:02 | 只看該作者
中斷源動作后會做一個標(biāo)記,這個標(biāo)記并不因為中斷關(guān)閉而消失。
CPU會不斷地檢查中斷標(biāo)記,如果被關(guān)閉則不響應(yīng)。一旦打開,則按優(yōu)先順序中斷。

所以回答是:
不會丟,再開放后,會中斷。
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表