[S3C2440] TQ2440 定时器中断无法触发

[复制链接]
 楼主| zjqlovelyy 发表于 2014-5-28 20:41 | 显示全部楼层 |阅读模式
本帖最后由 zjqlovelyy 于 2014-5-28 20:43 编辑

在程序里面,程序的功能是使得led以1s间隔闪烁,但是实际上这个程序没有进入到定时器的中断里面,调试的时候INTPND和SRCPND相应的位(第10位)已经置位了,INTMSK也清除相应的位了,而且内存中中断向量表timer0的位置也放了中断服务函数的地址。为什么会没有触发中断的?(补充下:我使用的是H-Jtag并口烧写的,到Nor flash中,位于bank0)


  1. #include "2440addr.h"
  2. #include "config.h"

  3. void __irq timer0ISR(void);
  4. void timer0Init(void);
  5. void ledInit(void);

  6. static int ledFlag=1;

  7. void Main(void)
  8. {
  9.         
  10.         ledInit();
  11.         timer0Init();
  12.         
  13.         while(1)
  14.         {
  15. /*                if ( (rSRCPND & (1<<10)) == 1)
  16.                 {
  17.                         ledFlag = !ledFlag;
  18.                         rSRCPND = (1<<10);
  19.                 }*/
  20.                 if (ledFlag)
  21.                 {
  22.                         rGPBDAT &= ~(1<<5);
  23.                 }
  24.                 else
  25.                         rGPBDAT |= (1<<5);
  26.         }
  27. }

  28. void ledInit(void)
  29. {
  30.         rGPBCON &= ~(3<<10);
  31.         rGPBCON |= (1<<10);
  32.         rGPBDAT &= ~(1<<5);
  33. }

  34. void timer0Init(void)
  35. {
  36.         pISR_TIMER0 = (unsigned int)timer0ISR;

  37.         rSRCPND |= (1<<10);
  38.         rINTPND |= (1<<10);
  39.         rINTMSK &= ~(1<<10);

  40.         rTCFG0 &= ~(0xff);
  41.         rTCFG0 |= 99;
  42.         
  43.         rTCFG1 &= ~(0xf);
  44.         rTCFG1 |= 2;
  45.         
  46.         rTCNTB0 = 62500;
  47.         
  48.         rTCON &= ~(0xf<<0);
  49.         rTCON |= ((1<<0)|(1<<1)|(1<<3));
  50.         rTCON &= ~(1<<1);
  51.         
  52.         
  53. }

  54. void __irq timer0ISR(void)
  55. {
  56.         ledFlag = !ledFlag;
  57.         
  58.         rSRCPND |= (1<<10);
  59.         rINTPND |= (1<<10);
  60. }

 楼主| zjqlovelyy 发表于 2014-5-28 20:58 | 显示全部楼层
我明白为什么了,需要在ledFlag前加volatile修饰,中断是进去了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

10

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部

2

主题

10

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部