Board logo

标题: 【定时器程序】求助 [打印本页]

作者: ddlikedd    时间: 2006-12-28 10:42     标题: 【定时器程序】求助

用定时器驱动 cnt计数
int cnt=0;
/******************************************************************************/
void init_timer()
{
  /*TS=1s*/
  IOWR_ALTERA_AVALON_TIMER_PERIODL(TIMER_BASE, 0x07840);
  IOWR_ALTERA_AVALON_TIMER_PERIODH(TIMER_BASE, 0x017D);
  IOWR_ALTERA_AVALON_TIMER_CONTROL(TIMER_BASE,            
            ALTERA_AVALON_TIMER_CONTROL_ITO_MSK  |
            ALTERA_AVALON_TIMER_CONTROL_CONT_MSK |
            ALTERA_AVALON_TIMER_CONTROL_START_MSK);
}
static void isr_timer(void* context, alt_u32 id)
{
  IOWR_ALTERA_AVALON_TIMER_STATUS(TIMER_BASE,0);
  cnt++;
}

int main (void)
{
#ifdef TIMER_BASE
  init_timer();
  printf ("init timer");
#endif
  alt_irq_register(TIMER_IRQ,TIMER_BASE,isr_timer);
  while (1)
  {
   if( cnt%10 == 0 )
    printf ( "%d" , cnt);
   
  };
  return 0;
}

哪位帮忙看一下,为什么输出只有
00000000..
呢??
多谢

作者: kzw    时间: 2006-12-28 16:33

定时器的时间是1s吗,如果是的话,当cnt=0的时候,循环里面一直会打印0,等1s秒才变化,1s的时间会打印很多的东西的。
作者: Logicalpower    时间: 2006-12-28 17:54

你要把system library的debug目录里的system description目录里的alt_sys_init.c拷贝到system library 并把关于定时器初始化的部分注释掉。如果不这样,那NiosIDE不会使用你自己的中断服务程序


作者: ddlikedd    时间: 2006-12-29 11:51

输出一直是 0
你要把system library的debug目录里的system description目录里的alt_sys_init.c拷贝到system library 并把关于定时器初始化的部分注释掉。如果不这样,那NiosIDE不会使用你自己的中断服务程序
system library是指??


作者: Logicalpower    时间: 2006-12-29 11:58

一个NIOS工程有两个目录,一个是应用程序本身,还有一个系统库(SYSTEM LIBRARY).
作者: ddlikedd    时间: 2006-12-29 12:29

有个 warning: passing arg 2 of `alt_irq_register' makes pointer from integer without a cast
Post-processing to create boot_rom.hex


作者: ddlikedd    时间: 2006-12-29 12:54

找到问题了
  IOWR_ALTERA_AVALON_TIMER_PERIODL(TIMER_BASE, (TIMER_PERIOD >> 16));
  IOWR_ALTERA_AVALON_TIMER_PERIODH(TIMER_BASE, (TIMER_PERIOD &0xffff));
改成这个就好了。呵呵
谢谢各位。

作者: kzw    时间: 2006-12-31 09:51

这和你自己以前的表述有什么不一样吗?
作者: ddlikedd    时间: 2007-1-2 01:19

可是这样程序就可以运行,以前那样就不行。
还有就是按键sw3老是自动分配到c5,可是reset也是c5,于是就改到别的。
可是不能写进ram了。

作者: kzw    时间: 2007-1-4 22:29

你是说出现新的问题了?




欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0