搜索
bottom↓
回复: 6

LPC 2103 定时器

[复制链接]

出0入0汤圆

发表于 2011-5-15 13:12:22 | 显示全部楼层 |阅读模式
关于lpc2103 定时器中断的问题:

       VICIntSelect=0x00;        //所有中断通道设置为IRQ中断
       VICVectCntl0=0x20|4;      // 向量IRQ solt使能| 中断号
*****  VICVectAddr0=(unsigned long)IRQ_Time0;  //使能中断服务程序地址
       VICIntEnable=1<<0x04;     //使能定时器0中断

其中第三句话 IRQ_Time0怎么定义啊

阿莫论坛20周年了!感谢大家的支持与爱护!!

曾经有一段真挚的爱情摆在我的面前,我没有珍惜,现在想起来,还好我没有珍惜……

出0入0汤圆

发表于 2011-5-15 14:16:30 | 显示全部楼层
VICVectAddr0=(unsigned long)IRQ_Time0;
的意思是取IRQ_Time0函数的地址给 VICVectAddr0(强制转化为ulong),这样在中断发生时,pc调转到 VICVectAddr0,然后取里面的数值给pc值,这样就跳转到了中断服务程序。具体的散转在启动代码中,lz可以好好研究一下启动代码。

出0入0汤圆

 楼主| 发表于 2011-5-15 14:42:47 | 显示全部楼层
回复【1楼】hzr0071
-----------------------------------------------------------------
好的,谢谢楼上啊。

出0入0汤圆

 楼主| 发表于 2011-5-15 19:03:43 | 显示全部楼层
还是没有懂。这是我写的,大家帮忙分析一下,谢谢了
void  TimerInit(void)    //定时器初始化
{
  IRQEnable();      //IRQ中断使能
  
  T0TCR=0x02;
  T0PR = 0;         // 设置定时器0,不分频
  T0MCR = 0x03;     // 匹配通道0匹配中断并复位T0TC
  T0MR0 = 11059200; // 比较值(1S定时一次)
  T0TCR = 0x01;     //定时器计数器和预分频计数器使能
   
  VICIntSelect = VICIntSelect&(~(1<<4); // 所有中断通道设置为IRQ中断
  VICVectCntl0 = 0x20|4 ; // 向量IRQ slot 使能 | 中断号
  VICVectAddr0 = (unsigned int)IRQTimer0; // 设置中断服务程序地址
  VICIntEnable = 1<<4; // 使能定时器0中断
}

然后是中断函数
__irq __arm void IRQTimer0()
{
   if((IOSET&(1<<18))==0)  IOSET=1<<18;            //取反操作
   else  IOCLR=1<<18;
  
   T0IR = 0x01; // 清除中断标志
   VICVectAddr = 0x00; // 通知VIC中断处理结束
}
我单步调试,无法进入中断函数,分析一下

出0入0汤圆

 楼主| 发表于 2011-5-16 10:42:38 | 显示全部楼层
没人指点吗?

出0入0汤圆

 楼主| 发表于 2011-5-16 12:55:59 | 显示全部楼层
终于找到问题的所在了, 要先使能中断 IRQEnable();

IRQEnable();则需要设置CPSR寄存器的I位:但是CPSR 需要在特权模式下,才可以下进行,不可以直接

CPSR=0x5f; 需要在启动代码中设置。

大家分析是否这样的?

出0入0汤圆

 楼主| 发表于 2011-5-19 12:04:15 | 显示全部楼层
算是搞清楚了,第三句意思,是发生中断的时候,寄存器的值会被拷贝到那个地址里面,然后在根据那个地址进行跳转,

还有就是 使能中断IRQEnable(); 正如我想的那样,思路是正确的,然后可以再启动代码里面修改。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片。注意:要连续压缩2次才能满足要求!!】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-8-26 15:15

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表