新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 關于PIC24的DISI禁止中斷指令

        關于PIC24的DISI禁止中斷指令

        作者: 時間:2013-03-07 來源:網絡 收藏

        指令是,

        這條指令可以把1-6優先級中斷禁止一個固定的時間,用于一些對時間特性要求嚴格的代碼段執行前關閉中斷.

        最大可以禁止中斷時間為16384 個指令周期.

        這條指令的執行的時候,1-6級別中斷立即被禁止,同時把CNT寄存器賦值為16384,CNT寄存器賦按每個指令周期遞減,當DISICNT為0的時候,中斷禁止結束.

        在DISI指令禁止中斷期間,用戶可以寫DISICNT延長或者縮短中斷禁止時間,或者直接對DISICNT寫0,立即結束中斷禁止.

        注意:

        在DISI未執行的時候,直接寫DISICNT為非0數值無效,不能禁止中斷.

        要中斷禁止生效必須先執行DISICNT指令

        如果要一直禁止中斷,可以用如下方法:

        1. 使用PUSH 指令將當前的SR 值壓入軟件堆棧。

        2. 通過將值0xE0 與SRL 進行“或”運算而將CPU 優先級強制設置為7。



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 曲阳县| 渝北区| 堆龙德庆县| 寿宁县| 资阳市| 建昌县| 平遥县| 博爱县| 兴义市| 木里| 明水县| 凤阳县| 电白县| 通海县| 梁平县| 济宁市| 苗栗县| 桃园县| 牟定县| 博爱县| 通城县| 本溪市| 民和| 河池市| 南汇区| 贡觉县| 驻马店市| 盐城市| 三原县| 高唐县| 高雄市| 会昌县| 库车县| 岱山县| 邵东县| 湘潭市| 平果县| 惠水县| 柯坪县| 甘孜| 疏勒县|