<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12
      嵌入式工具集

      嵌入式工具集

      Modbus協議生成器

      --
      暫無記錄

      Modbus CRC16 計算器

      等待計算...

      32位Bit位選擇器

      0

      16進制計算器

      等待計算...

      電阻計算器

      并聯: --
      串聯: --

      字節序轉換工具

      大端: --
      小端: --

      進制/編碼轉換工具

      --
      --
      --
      --

      Cortex-M3 PendSV中斷入棧出棧情況

      Cortex-M3 在觸發PendSV中斷后的入棧情況

      當前系統觸發PendSV中斷后,內核會自動做入棧操作(這里不考慮局部變量的入棧)
      詳細的步驟如下
      1、 根據R13(SP)的地址找到當前棧首地址
      2、 將當前R13(SP)首地址減4,跳到下一個棧地址
      3 、將xPSR寄存器的值寫入當前R13(SP)所在的棧地址中
      4、 將當前R13(SP)首地址減4,跳到下一個棧地址
      5、 將R15(PC)寄存器的值寫入當前R13(SP)所在的棧地址中
      6、 以此類推,依次將系統特殊寄存器壓入棧中。

      下表是內核自動壓入的特殊寄存器的順序

      序號寄存器
      1xPSR
      2R15(PC)
      3R14(LR)
      4R12(SP)
      5R3
      6R2
      7R1
      8R0

      Cortex-M3 在觸發BX LR的出棧情況

      當系統執行BX LR指令后,內核會自動做出棧操作
      具體步驟如下:
      1、首先判斷R14(LR)的值,如果是0xFFFFFFF9,那么要獲取MSP的值,如果是0xFFFFFFFD的值,那么要獲取PSP的值。
      2、獲取PSP或者MSP的值后,根據其中的值恢復寄存器的值,恢復的順序與入棧順序相反。
      3、根據恢復后的特殊寄存器信息,繼續從PC位置執行代碼。

      下面是我驗證使用的代碼,使用環境是KEIL5,編譯器選中5版本

      //PendSV中斷入口函數
      __asm void PendSV_Handler(void)
      {
      	NOP
      	BX LR
      }
      //觸發PendSV中斷
      __asm void TriggerOS()
      {
      	LDR R0, =0xE000ED04
      	LDR R1, =0x10000000
      	STR R1, [R0]
      	BX LR
      }
      
      int main(void)
      {
      	TriggerOS();
      	while(1)
      	{
      	}
      }
      

      下圖是調試時,入棧的結果對照。
      在這里插入圖片描述

      在這里插入圖片描述

      實驗結果表明,內核會為我們的中斷前自動做一些特殊寄存器的入棧操作
      當前執行BX LR指令時又會執行自動出棧操作。
      這對我們以后寫RTOS時立即任務的切換非常重要,特單獨研究,以加深印象。

      posted @ 2022-05-08 20:08  大高玩子  閱讀(589)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 色综合AV综合无码综合网站| 国产成人免费| 中文精品无码中文字幕无码专区 | 亚洲成av人片在www鸭子| 国产高清亚洲一区亚洲二区| 国产三级黄色片在线观看| 亚洲最大日韩精品一区| 99热门精品一区二区三区无码 | 国产成AV人片在线观看天堂无码| 欧美成人h精品网站| 一区二区三区国产偷拍| 岛国最新亚洲伦理成人| 高清国产亚洲精品自在久久| 狠狠精品久久久无码中文字幕| 苍井空一区二区波多野结衣av| 国产va免费精品观看| 亚洲在战av极品无码| 成人三级视频在线观看不卡| 大地资源网第二页免费观看| 最新国产精品好看的精品| 天堂网亚洲综合在线| 久久综合九色综合欧洲98| 国产乱子伦精品免费无码专区| 国产av仑乱内谢| 亚洲精品一区二区在线播| 国产欧美日韩亚洲一区二区三区| 亚洲精品一区二区美女| 中文字幕一区二区人妻| 婷婷四房播播| 4480yy亚洲午夜私人影院剧情| av综合亚洲一区二区| 精品国产精品午夜福利| 免费黄色大全一区二区三区| 中文字幕日韩有码av| 亚洲欧美人成人综合在线播放 | 日韩一区二区三区水蜜桃| 香港日本三级亚洲三级| 国语精品一区二区三区| 白嫩少妇无套内谢视频| 亚洲国产欧美在线人成| 国产伦精品一区二区三区妓女|