新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于ARM處理器中斷處理的編程實現

        基于ARM處理器中斷處理的編程實現

        作者: 時間:2012-11-30 來源:網絡 收藏


          圖3 中斷解析的擴展

          相比圖2,圖3中多了一級的跳轉,也就是在第一次解析跳轉到IRQ/FIQ服務程序中后,再進行第二次的解析_中斷源的識別。

          向量中斷的處理

          一些處理器在設計外擴的中斷控制器時提供了一種叫做“向量中斷”的中斷跳轉機制。這與前文敘述的擴展解析跳轉流程有所不同,它不需要軟件來識別具體的中斷源,也就是不需要添加圖3中的IRQ/FIQ服務程序,而完全由硬件自動跳轉到對應的中斷地址。其它跳轉流程的原理都是一樣的。這相當于擴展了ARM內核的硬件中斷向量表,減小了中斷響應延時。以S3C44B0X處理器的外部中斷0為例,需要在其對應的硬件固定跳轉地址0x00000020處添加指令:ldr pc,=HandlerEINT,使得程序跳轉到其服務程序HandlerEINT0處執行。


          圖4 向量中斷解析流程示例

          結語

          本文介紹的機制是嵌入式編程中常常采用的方法,其原理是通用的。當然,在實際開發中,需要根據系統處理器ARM內核的中斷特征和處理器自身的中斷控制器特點具體細化流程圖中的各個步驟和改寫參考代碼。

        參考文獻:

        [1].S3C4510Bdatasheethttp://www.dzsc.com/datasheet/S3C4510B_589499.html.
        [2].S3C44B0Xdatasheethttp://www.dzsc.com/datasheet/S3C44B0X_589522.html.


        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 新营市| 涡阳县| 兰考县| 哈密市| 呈贡县| 湘潭市| 友谊县| 万荣县| 吉水县| 岑巩县| 桦甸市| 马尔康县| 杭锦后旗| 揭东县| 陇西县| 岚皋县| 青阳县| 乾安县| 清水县| 平泉县| 金寨县| 江油市| 安康市| 乐陵市| 荣成市| 赣榆县| 株洲市| 垦利县| 永昌县| 诏安县| 庆城县| 南部县| 台东县| 同江市| 元氏县| 当阳市| 迭部县| 沿河| 庆元县| 神木县| 清涧县|