打印
[ZLG-ARM]

关于中断的问题!

[复制链接]
1569|3
手机看帖
扫描二维码
随时随地手机跟帖
沙发
armecos| | 2007-8-21 13:20 | 只看该作者

ecos增值包里有介绍

EasyARM2200和SmartARM2200增值软件合集里的第三讲 ecos中断操作里介绍了禁止某一个中断的方法。

一次全部禁止所有中断,恢复时按实际情况。gcc内嵌汇编。

#define disable_int() 
    asm volatile( 
      "stmfd  sp!, {r0}  " 
      "mrs  r0, cpsr  " 
      "stmfd  sp!, {r0}  " 
      "orr  r0, r0, #0xc0  " 
      "msr  cpsr_c, r0  " 
      "ldr  r0, [sp, #4]  " 
      )

#define enable_int() 
    asm volatile( 
      "ldmfd  sp!, {r0}  " 
      "msr  cpsr_c, r0  " 
      "ldmfd  sp!, {r0}  " 
      )

使用特权

评论回复
板凳
wlsfxl|  楼主 | 2007-8-21 16:02 | 只看该作者

谢谢

呵呵!谢谢您的解答!

使用特权

评论回复
地板
hotpower| | 2007-8-22 03:23 | 只看该作者

也可VICIntEnable = 0;

不过要先保护后恢复.

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

2

帖子

1

粉丝