<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > stm32 中斷向量表 NVIC_SetVectorTable() 應(yīng)用

          stm32 中斷向量表 NVIC_SetVectorTable() 應(yīng)用

          作者: 時間:2016-11-17 來源:網(wǎng)絡(luò) 收藏
          STM32中斷向量表的設(shè)置主要是用在IAP 程序中,
          如果是普通的 flash 中只有一個程序,一般不需要設(shè)置這個。
          顧名思義,這個表存放的是中斷服務(wù)函數(shù)的入口地址,當(dāng)發(fā)生中斷時,
          CPU來這個表中查詢,以此獲取中斷函數(shù)的入口地址。
          在stm32 的啟動文件中,設(shè)置完成堆棧,就來設(shè)置 中斷向量表,
          AREA RESET, DATA, READONLY ;
          定義只讀數(shù)據(jù)段,實(shí)際上是在CODE區(qū)(假設(shè)STM32從FLASH啟動,則此中斷向量表起始地址即為0x8000000)
          如果改變了程序的起始地址,這種就是IAP的情況了,像這個樣子
          那么這個時候就需要重新設(shè)置中斷向量表
          NVIC_SetVectorTable(NVIC_VectTab_FLASH, 0x00010000);//重新配置中斷向量表
          配合地址的改變,這樣程序運(yùn)行的時候才能找到中斷服務(wù)函數(shù)的入口地址,正常執(zhí)行。
          附件:
          對中斷向量表更深入的解釋
          顯然,200039c0就是棧頂?shù)刂?,?8006F21就是reset_handler地址!
          stm32 小端模式,高字節(jié)在高位,低字節(jié)在低位,所以這個要反過來看。



          關(guān)鍵詞: STM32中斷向量

          評論


          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();