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

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

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

      AvalonV

      ARM9的中斷控制器

      簡要復習一下ARM9中斷控制器的控制過程:

      1.首先能識別觸發的中斷(對應中斷源必須打開,然后查詢當前中斷狀態寄存器),硬件會操控PC跳到中斷向量入口(IRQ_HANDLE,硬件控制的只要是IRQ中斷類型就會進入),在中斷跳轉函數里面保存現場(保存R0等等工作寄存器)--跳到服務函數(里面進行中斷源判斷和處理)---恢復現場,基本流程是這樣。

      2.中斷的觸發:高低電平,上升下降沿等等,具體的設置寄存器實現。

      3.中斷能否傳到CPU?觸發以后還要通過許多開關(寄存器設置使能與否)確保到達CPU,這樣CPU才能識別(有的中斷源是不需要的),有些中斷是二級中斷,需要開關比較多,注意芯片手冊說明

      4.

      比如我們要觸發的是INT_TC這個二級中斷信號。好,那么我們要打開的開關是什么呢?在二級中斷信號里,INTSUBMSK是二級中斷信號的開關,我們要在里面找到INT_TC這個位并設置為1即可。二級中斷還得傳到一級中控器處理,那么我們先找出INT_TC是屬于哪個一級中斷信號的,看表里的紫色框起來的是二級屬于同一個一級信號的,一級信號處理那個也有個紫色框,INT_ADC就是我們要找到的對應一級信號。而它也有對應的開關,那么就是INTMSK這個控制器。我們把INTMSK里的INT_ADC位設置為1就算成功了。

      代碼也就是  

      INTSUBMSK |= ( 0x1 << 9);//因為INT_TCINTSUBMSK里的第9位,注意從0開始

      INTMSK |= (0x1 << 31); //INT_ADCINTMSK里的第31位。

       

      其他的類似外部中斷也是這樣操作。只是一級中斷的可以直接從一級中控器處理,那么就只設置一級中控器的相應開關即可。也就是說,我們要用到的設備接口,我們就把相應的開關打開就可以了,其他的讓ARM來處理就可以了。

       

      5.EIN4_7屬于一級中斷源,但是該中斷源包含EIN4\EIN5\EIN6\EIN7四個子中斷源。

      SRCPND源掛起寄存器。

      該寄存器在中斷源發出請求時候,處理器就會自動置位該寄存器的相應的位為1.

       

      注意:根據三星文檔知道,該位不受寄存器影響,這個寄存器是屏蔽寄存器。在則在執行服務程序時候,該位不許進行清除,否則會導致連續中斷。清除方法是往該位寫入1。

       

       INTMOD中斷模式寄存器

       

      該寄存器決定中斷源為FIQ中斷還是IRQ中斷。

       

      注意:根據三星文檔,INTPND寄存器和INTOFFSET寄存器只對IRQ模式有效

       

       INTMSK中斷屏蔽寄存器

       

      決定是否屏蔽某中斷源

       

      注意:沒有

       

       PRIORITY優先級寄存器

       

      決定中斷源優先級。

       

       INTPND中斷服務程序標志位

       

      根據文檔說,在中斷源沒被屏蔽,并且在等待中斷服務,優先級也是最最高的置1.啥意思,就是該寄存器對應位置1,表示CPU已經響應該對應的中斷請求。

       

      注意:和SRCPND一樣,在中斷服務程序時候要清除該對應位。

       

       INTOFFSET寄存器

       

      該寄存器和INTPND配合使用的。標明INTPND寄存器里對應IRQ中斷反映在INTOFFSET寄存器的值

       

      注意:也需要清除位

       

       SUBSRCPND寄存器

       

      該寄存器與.SRCPND寄存器配合使用,在子中斷源發出請求時候,處理器就會自動置位該寄存器的相應的位為1.

       

       INTSUBMSK寄存器

       

      該寄存器和INTMSK寄存器一樣,只不過是相對于子中斷而言而已。

       

      6.借用別人網站的圖

       

       其中深黑色的就是編程要用的寄存器,而淺黑色的寄存器時CPU根據我們配置的寄存器產生的標志位寄存器。

       

      7.最后我感覺和51還是比較類似的,設置引腳為外部中斷(有的是內部中斷),使能,確定優先級,識別到觸發,保存現場,處理,恢復現場。嵌入式linux的程序需要和匯編一起組織,目前不是特別熟悉,學習ing~

       

      posted on 2016-08-25 17:52  AvalonV  閱讀(1799)  評論(0)    收藏  舉報

      主站蜘蛛池模板: 国产精品色哟哟成人av| 深田えいみ禁欲后被隔壁人妻 | 不卡乱辈伦在线看中文字幕| 丰满爆乳一区二区三区| 亚洲码亚洲码天堂码三区| 又粗又硬又黄a级毛片| 国产区成人精品视频| 国产一区二区四区不卡| 天门市| 激情综合五月网| 欧美特级午夜一区二区三区 | 一本大道久久香蕉成人网| 久久精品国产亚洲AV麻| 武宣县| 久久综合色之久久综合色 | 国产在线98福利播放视频| 亚洲熟妇色自偷自拍另类| 亚洲精品一二三四区| 亚洲欧美电影在线一区二区| 青青草无码免费一二三区| 国产99久60在线视频 | 传媒| 国产精品综合在线免费看| 亚州中文字幕一区二区| 无码精品人妻一区二区三区中 | 色综合久久久久综合体桃花网| 91精品久久一区二区三区| 国产三级精品三级在线专区1| 国产精品夜夜春夜夜爽久久小| 成人性生交大片免费看r老牛网站 中文字幕一区二区三区四区五区 久久久久久毛片免费播放 | 亚洲综合不卡一区二区三区| 免费夜色污私人影院在线观看| 人人妻人人做人人爽夜欢视频| 成人无码潮喷在线观看| 欧美日韩精品一区二区三区在线| 自拍偷在线精品自拍偷免费| 四虎影视一区二区精品| av性色av久久无码ai换脸| 乱码精品一区二区亚洲区| 起碰免费公开97在线视频| 岳阳县| 国产va免费精品观看精品 |