[技术问答] 新唐nano100 无法进入定时器中断?第一次用新唐的单片 求解决

[复制链接]
2771|10
 楼主| wkwangjinting 发表于 2015-1-7 16:31 | 显示全部楼层 |阅读模式
void Timer0_Init(void)
{
    /* Enable IP clock */
    CLK_EnableModuleClock(TMR0_MODULE);
   
    /* Select IP clock source */
    CLK_SetModuleClock(TMR0_MODULE, CLK_CLKSEL1_TMR0_S_HXT, 0);
   
    // Set timer frequency to 10Hz
    TIMER_Open(TIMER0, TIMER_PERIODIC_MODE, 10);
   
    // Enable timer interrupt
    TIMER_EnableInt(TIMER0);
    NVIC_EnableIRQ(TMR0_IRQn);

    // Start Timer 0
    TIMER_Start(TIMER0);

}

void TMR0_IRQHandler(void)
{
    if(flag == 0)
    {
        flag = 1;
        LED_UP_GREEN = 0;
        LED_UP_RED   = 1;
    }
    else
    {
        flag = 0;
        LED_UP_GREEN = 1;
        LED_UP_RED   = 0;
    }
   
    // clear timer interrupt flag
    TIMER_ClearIntFlag(TIMER0);
}
调试发现初始化的后三句,根本没有执行,不知道什么原因
le062 发表于 2015-1-7 17:33 | 显示全部楼层
参考下这位:
https://bbs.21ic.com/forum.php?mo ... p;highlight=nano130

在一次使能后,CTL.ACT却没有置位,你可以做个do{}while语句,重复检查ACT状态
gaoyang9992006 发表于 2015-1-7 19:00 | 显示全部楼层
楼主为何不参考官方的例程呢?那是用库函数实现的。
gaoyang9992006 发表于 2015-1-8 21:46 | 显示全部楼层
不知道楼主解决了,问题没,解决了,出来分享一下经验啊。
 楼主| wkwangjinting 发表于 2015-1-9 11:32 | 显示全部楼层
问题解决了,配置时钟的时候,忘记解锁了
gaoyang9992006 发表于 2015-1-9 11:50 | 显示全部楼层
wkwangjinting 发表于 2015-1-9 11:32
问题解决了,配置时钟的时候,忘记解锁了

噢,恭喜啊,以后就不会出现这种失误了。
373810773 发表于 2015-1-9 20:48 | 显示全部楼层
wkwangjinting 发表于 2015-1-9 11:32
问题解决了,配置时钟的时候,忘记解锁了

谢谢分享
zxf0168 发表于 2015-1-12 08:24 | 显示全部楼层
恭喜问题解决
373810773 发表于 2015-1-14 19:40 | 显示全部楼层
zxf0168 发表于 2015-1-12 08:24
恭喜问题解决

参加研讨会确认邮件已发,你回复了吗?
373810773 发表于 2015-1-14 19:41 | 显示全部楼层
zxf0168 发表于 2015-1-12 08:24
恭喜问题解决

赶紧回复
lovecat2015 发表于 2015-1-29 12:51 来自手机 | 显示全部楼层
呵呵,恭喜啊!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

4

主题

7

帖子

1

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