关于PIC24的DISI禁止中断指令
时间:03-07
来源:互联网
点击:
PIC24的DISI指令是禁止中断指令,
这条指令可以把1-6优先级中断禁止一个固定的时间,用于一些对时间特性要求严格的代码段执行前关闭中断.
禁止中断指令最大可以禁止中断时间为16384 个指令周期.
这条指令的执行的时候,1-6级别中断立即被禁止,同时把DISICNT寄存器赋值为16384,DISICNT寄存器赋按每个指令周期递减,当DISICNT为0的时候,中断禁止结束.
在DISI指令禁止中断期间,用户可以写DISICNT延长或者缩短中断禁止时间,或者直接对DISICNT写0,立即结束中断禁止.
注意:
在DISI未执行的时候,直接写DISICNT为非0数值无效,不能禁止中断.
要中断禁止生效必须先执行DISICNT指令
如果要一直禁止中断,可以用如下方法:
1. 使用PUSH 指令将当前的SR 值压入软件堆栈。
2. 通过将值0xE0 与SRL 进行“或”运算而将CPU 优先级强制设置为7。
- PIC24单片机在轧机液压缸行程检测上的应用(10-15)
- 基于CAN总线的电气火灾报警系统的设计方案(11-14)
- 采用PIC24FJ256DA210设计的16位MCU技术介绍(03-03)
- 基于PIC24FJ64GA的空间电压矢量PWM控制方法研究(11-07)
- 基于PIC24F16KA102单片机的16位MCU开发(09-07)
- 基于PIC24FJ256DA210设计的16位MCU开发技术(12-07)