原创 ARM中断设置问题

2009-5-14 09:51 3149 8 8 分类: MCU/ 嵌入式

在ARM教程中许多例子都有这样的话:VICVectCntl0=0x2E; 为什么就可以EINT0通道分配到IRQ Slot0,。   VICVectCntl1=0x2F;又分配到slot几呢?
还有许多教程中写的是
EXTMODE = 0x00;
EXTPOLAR = 0x02;
VICIntSelect = 0x00000000;
VICVectCntl0 = 0x20|15;
VICVectAddr0 = (int)IRQ_Eint1;
EXTINT = 0x02;
VICIntEnable = 0x00008000;

while(1);
return 0;

VICVectCntl0 = 0x20|15;又是什么意思,中间|是怎么回事。0x20或15是什么。


其实这样的:
VICVectCntl0 = 0x20|15; 表示将中断号为15的EINT1为最高优先级
VICVectCnt1 = 0x20|14; 表示将中断号为14的EINT0为 次最高优先级


0x0e为EINT0的中断号;
0x20 为允许该中断;

0x0F为EINT1的中断号;
0x20 为允许该中断;


其实也就是要看一下中断源的号是多少,后面的数字就应该是几了。

PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
我要评论
0
8
关闭 站长推荐上一条 /3 下一条