欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

專注電子技術學習與研究
當前位置:單片機教程網 >> MCU設計實例 >> 瀏覽文章

Cortex-M3中斷服務程序設計

作者:佚名   來源:本站原創   點擊數:  更新時間:2014年08月19日   【字體:

ISR是嵌入式應用系統獲取各種事件的基本手段。而事件是實時性問題的討論基礎和事件計算的起點。

  • 中斷優先級

不同中斷服務程序應有不同優先級,在允許中斷嵌套時,最高優先級的中斷總是能夠得到響應。

只要沒關中斷,ISR可以中斷任何任務的運行,比最高優先級的任務還要高。

  • Cortex-M3中斷資源

搶占優先級:實現中斷嵌套

子優先級:當搶占優先級相同的兩個中斷同時發生時,子優先級高的中斷可以首先獲得運行權。

  • 中斷優先級安排原則

緊迫性:觸發中斷的事件允許耽誤的時間越短,優先級越高。

關鍵性:觸發中斷的事件越關鍵,越高

頻繁性:觸發中斷的事件發生越頻繁,越高

快捷性:前三項相近,ISR處理越快,越高。

ISR功能應盡量簡單,只要將獲取的異步事件用通信手段發給關聯任務就行,后續處理由關聯任務完成。

 

1. 中斷服務程序設計

  • ISR結構



4部分

A:使os掌握當前中斷的嵌套深度。

B:ISR功能代碼。必須調用系統通信服務函數,與其他任務進行通信。正是這種通信功能是關聯任務得到同步信號或數據,從而進入就緒狀態。不允許調用延時函數和可能被掛起的系統服務函數。

C:清除該中斷的相應標志。以便下次再次相應。不用ISR函數,中斷源的中斷相應標志不同,清除中斷標志的代碼也不同。

D:調用退出中斷函數。實現任務調度功能。判斷是返回中斷(中斷嵌套)還是返回任務(原任務還是更高級任務)

  • 選擇與關聯任務的通信手段

兩種類型:

A:信號型。ISR只完成發送信號量的工作。表示事件發生,通過信號量的同步功能出發關聯任務,所有具體工作由任務完成。

B:數據型。ISR需要完成信息采集工作,然后使用消息郵箱(消息隊列)將數據發送給關聯任務,由關聯任務完成后續數據處理工作。

 

細分如下:

A:觸發ISR事件不包含數據。用信號量與關聯任務通信。

B:觸發ISR事件包含數據低頻事件。用信號量與關聯任務通信。采集任務放在關聯任務中。

C:觸發ISR事件包含數據中高頻事件。ISR采集數據。ISR中使用消息郵箱與關聯任務通信。關聯任務完成后續工作。

D:觸發ISR事件包含數據非周期高頻事件。ISR采集數據,ISR中使用具有數據緩沖功能的消息隊列與關聯任務通信。

 

  • 例子



關閉窗口