主题 : 求教,关于VIC0VECTADDR[intNum] 复制链接 | 浏览器收藏 | 打印
级别: 新手上路
UID: 55484
精华: 0
发帖: 40
金钱: 200 两
威望: 40 点
贡献值: 0 点
综合积分: 80 分
注册时间: 2011-09-18
最后登录: 2015-08-12
楼主  发表于: 2011-09-25 19:38

 求教,关于VIC0VECTADDR[intNum]

6410里有一种中断方式是将伺服程序首址写入VICxVECTADDR,看了友善的源码,找到了其实现函数为
复制代码
  1. void INTC_SetIntISR(unsigned int intNum, void (*isr)(void) __irq)
  2. {
  3.   if(intNum > INT_LIMIT)
  4.      {
  5.         return ;
  6.      }
  7.     
  8.      if(intNum < 32)
  9.      {
  10.          VIC0VECTADDR[intNum] = (unsigned )isr;
  11.         
  12.      }
  13.      else
  14.      {
  15.          VIC1VECTADDR[intNum-32] = (unsigned )isr;
  16.      }
  17. }


不明白其中intNum的作用,求解释……