電子產(chǎn)業(yè)一站式賦能平臺

PCB聯(lián)盟網(wǎng)

搜索
查看: 41|回復(fù): 0
收起左側(cè)

深入研究Cortex-M中斷向量表對齊原則

[復(fù)制鏈接]

394

主題

394

帖子

2197

積分

三級會員

Rank: 3Rank: 3

積分
2197
跳轉(zhuǎn)到指定樓層
樓主
發(fā)表于 2021-9-19 21:39:00 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
大家好,我是痞子衡,是正經(jīng)搞技術(shù)的痞子。今天痞子衡給大家分享的是Cortex-M中斷向量表對齊原則。  G. m" p. y4 s* W4 o
今天這篇文章的內(nèi)容主要來自于五年前做  Kinetis K32W 系列雙核啟動時的發(fā)現(xiàn),最近正好有同事碰到了 ARM Cortex-M 中斷向量表對齊問題,于是痞子衡想起了這事(感慨自己記性還挺好),翻出了五年前的郵件,將當(dāng)時測試結(jié)果重新整理成文。( a4 s8 B: [4 Y  R, A3 L# z: \3 A
前段時間痞子衡剛寫了篇 《Cortex-M中斷向量表原理及其重定向方法》,簡單介紹了中斷向量表工作機制,今天咱們接著來聊聊這個中斷向量表對齊的事:1 X5 U# t" p0 h* w0 O
一、Cortex-M中斷向量表對齊原則中斷向量表就是一個集中保存系統(tǒng)全部中斷處理函數(shù)(xxxIRQHandler)地址的常量數(shù)組(函數(shù)地址要占 4 個字節(jié),因此數(shù)組中每個元素大小為 4 字節(jié)),表中元素編號如下:. z: _: F2 _1 s8 f
1. 中斷向量表第 0 - 1 個向量比較特殊,是程序初始 SP 和 PC 值
( |; C( f# q  B  v0 k/ ]& |2 N2. 中斷向量表第 2 - 15 個向量是系統(tǒng)中斷,IRQ 編號為 -14 到 -15 M6 d8 E7 w) t9 n- D, A2 p
3. 中斷向量表第 16 個向量開始是廠商自定義外設(shè)中斷,IRQ 編號為 0 到 n9 y" @5 e, g8 V% G- N" i. |
   - 對于 Cortex-M0/0+/1,    ARM 建議的 n 值最大為 15(實際一般廠商都會擴展)+ ?9 }: F! n3 P
   - 對于 Cortex-M3/4/7/23,  ARM 建議的 n 值最大為 239
. t8 Z# ~7 s; D   - 對于 Cortex-M33/35P/55, ARM 建議的 n 值最大為 479
回復(fù)

使用道具 舉報

發(fā)表回復(fù)

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

本版積分規(guī)則


聯(lián)系客服 關(guān)注微信 下載APP 返回頂部 返回列表