資料介紹
本節主要介紹Cortex-M0的異常處理模型。
1、異常的狀態
每個異常都處于以下狀態之一:
未激活(Inactive)
異常沒有被激活也沒有被掛起。
掛起(Pending)
異常正等待被處理器服務。
來自外設或軟件的中斷請求,能讓相應中斷變為掛起狀態。
激活(Active)
異常正在被處理器服務,并且服務尚未結束。
注意:一個異常處理能中斷另一個異常處理,在這種情況下,兩個異常都處于激活態。
激活且掛起(Active and pending)
異常正在被處理器服務時,又出現了來自同一異常源的異常。
2、異常類型
異常的類型有:
Reset
復位(Reset)由加電或熱復位引起,異常模型把復位當作一個特殊形式的異常。當復位信號有效時,無論指令執行到什么位置,處理器都停止當前的指令。復位信號失效之后,從復位異常規定的入口地址處開始執行,按Thread模式工作。
NMI
不可屏蔽中斷(NMI)可由外設引起或軟件觸發,NMI是除Reset之外,最高優先級的異常,NMI被永久允許,擁有固定的優先級-2。
NMI不能被:
? 任何別的異常屏蔽或阻止。
? 除復位之外的任何異常搶占。
HardFault
硬故障(HardFault)是指在正常情況或異常處理時出現錯誤(error)所引起的一種異常,硬故障有固定的優先級-1,表明硬故障比任何一個可以配置優先級的異常的優先級都高。
SVCall
超級管理員調用(SuperVisorCall,SVC)是一種??SVC指令觸發的異常,在操作系統環境下,應用程序能使用SVC指令訪問操作系統內核或設備驅動程序。
PendSV
PendSV是一種中斷驅動的請求,用于面向系統級服務。在操作系統環境下,當沒有別的異常激活時,使用PendSV進行上下文切換。
SysTick
如果處理器實現系統滴答定時器,那么SysTick是由系統滴答定時器計數到0時所產生的一種異常。軟件也能產生SysTick異常,在操作系統環境下,處理器能使用這一異常作為系統滴答計時。
中斷(IRQ)
中斷(IRQ)是由外設或軟件請求而產生的異常,所有的中斷對指令的執行是異步進行的。在計算機系統中,外設通過中斷與處理器通信。
表1、不同類型異常的優先級
a、為簡化軟件層,CMSIS僅使用IRQ號,因此采用負數作為異常的編號,IPSR返回異常編號,詳見第2-7頁的中斷程序狀態寄存器。
b、有關更多的信息,請看中斷向量表。
c、如果處理器沒有系統滴答定時器,則異常15保留。
d、IRQ中斷號是在處理器實現時定義的,范圍是1-32。未實現的IRQ異常編號被保留,例如,如果某處理器僅實現一個IRQ,則異常號17及以上的編號均被保留。
e、見下文的中斷優先級寄存器。
f、增長步長為4。
對于異步異常,除Reset外,處理器在異常被觸發到異常開始被處理的這段時間內,仍能繼續執行指令。
特權軟件可以禁止表1中所列出的具有可配置優先級的異常。
3、異常處理
處理器使用以下方式處理異常:
ISRs
中斷服務子程序(ISRs)處理IRQ中斷異常。
Fault handler
故障處理程序(Faulthandler)處理硬故障。
System handlers
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- 到底64位處理器和32位處理器有什么區別呢?資料下載
- Cortex-M0處理器及其特性資料下載
- Cortex-M0處理器的編程模型資料下載
- Cortex-M0處理器的故障處理和功耗管理資料下載
- Cortex-M0處理器的存儲模型資料下載
- Cortex-M0處理器的權威指南英文原版免費下載 0次下載
- Cortex-M4處理器的技術參考手冊免費下載 42次下載
- STM32系列Cortex-M3處理器編程手冊免費下載 37次下載
- 基于MDK的STM32處理器開發應用PDF電子教材免費下載 59次下載
- CORTEX-M4處理器技術參考手冊詳細資料免費下載 137次下載
- M3處理器的詳細原理圖資料免費下載 58次下載
- 基于Cortex-M3處理器的開關磁阻電機控制器設計 9次下載
- 基于ARM Cortex-M3處理器的電源設計及應用 14次下載
- 基于Cortex_M3處理器的__省略_MicroFramewo 0次下載
- ARM推出Cortex—M0處理器 29次下載
- Cortex-M0處理器內核異常中斷簡介 4465次閱讀
- Cortex-M0處理器的中斷請求形式:電平觸發和脈沖輸入 1538次閱讀
- 淺談ARM處理器的基礎知識 2503次閱讀
- Cortex-M3處理器中斷和FreeRTOS中斷優先級配置 6920次閱讀
- STM32的Cortex-M3中斷異常處理 7958次閱讀
- 對Cortex-A53處理器的性能分析及特點概述 13.9w次閱讀
- 分析Cortex-A7處理器與Cortex-A15處理器各自的優勢及區別 6605次閱讀
- 一文解析Cortex-M處理器架構特性 8067次閱讀
- cortex-a9是什么處理器_cortex-a9處理器介紹 2.5w次閱讀
- 基于ARM架構的8051應用程序遷移過程 2210次閱讀
- 詳細剖析Cortex-M3處理器 9671次閱讀
- 驍龍625處理器與驍龍652處理器對比評測 10.3w次閱讀
- M33處理器的五大特色 2774次閱讀
- 32位嵌入式處理器與8位處理器應用開發的區別 1528次閱讀
- 蘋果推出64位處理器:對手機而言,意味著什么? 3983次閱讀
下載排行
本周
- 1TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 2開關電源基礎知識
- 5.73 MB | 6次下載 | 免費
- 3100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 4嵌入式linux-聊天程序設計
- 0.60 MB | 3次下載 | 免費
- 5基于FPGA的光纖通信系統的設計與實現
- 0.61 MB | 2次下載 | 免費
- 6基于FPGA的C8051F單片機開發板設計
- 0.70 MB | 2次下載 | 免費
- 751單片機窗簾控制器仿真程序
- 1.93 MB | 2次下載 | 免費
- 8基于51單片機的RGB調色燈程序仿真
- 0.86 MB | 2次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應用800例(新編版)
- 0.00 MB | 33564次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關電源設計實例指南
- 未知 | 21548次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數字電路基礎pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅動電路設計》 溫德爾著
- 0.00 MB | 6653次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 78.1 MB | 537796次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191185次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183278次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論
查看更多