__inline void IRQEnable(void) { int tmp; __asm { MRS tmp,CPSR ///读取CPSR的值 BIC tmp,tmp,#0x80 //将IRQ中断禁止位I清零,即允许IRQ中断 MSR CPSR_c,tmp //设置CPSR的值 } } __inline void IRQDisable(void) { int tmp; __asm { MRS tmp,CPSR ///读取CPSR的值 ORR tmp,tmp,#0x80 //将IRQ中断禁止位I清零,即允许IRQ中断 MSR CPSR_c,tmp //设置CPSR的值 } }
ARM7 C语言嵌入汇编开关中断
__inline void IRQEnable(void)
{
int tmp;
__asm
{
MRS tmp,CPSR ///读取CPSR的值
BIC tmp,tmp,#0x80 //将IRQ中断禁止位I清零,即允许IRQ中断
MSR CPSR_c,tmp //设置CPSR的值
}
}
__inline void IRQDisable(void)
{
int tmp;
__asm
{
MRS tmp,CPSR ///读取CPSR的值
ORR tmp,tmp,#0x80 //将IRQ中断禁止位I清零,即允许IRQ中断
MSR CPSR_c,tmp //设置CPSR的值
}
}