牛卧堂MCU技术交流

标题: NUC240的定时器使用延时函数 [打印本页]

作者: assman    时间: 2022-3-9 15:17
标题: NUC240的定时器使用延时函数
各位大大安安,我在函式中使用TIMER_Delay()延时函数,就无进不去TMR0_IRQHandler()中断函式了
注解掉TIMER_Delay()延时函数又行,想问其原因,谢谢!
  1. void TIMER0_Init(void)
  2. {
  3.     SYS_ResetModule(TMR0_RST);
  4.     TIMER_Open(TIMER0,TIMER_PERIODIC_MODE,1);
  5.     TIMER_EnableInt(TIMER0);
  6.     NVIC_EnableIRQ(TMR0_IRQn);
  7.     TIMER_Start(TIMER0);
  8. }

  9. void TMR0_IRQHandler(void)
  10. {
  11.     if(TIMER_GetIntFlag(TIMER0) == 1) {
  12.         /* Clear Timer0 time-out interrupt flag */
  13.         TIMER_ClearIntFlag(TIMER0);

  14.         g_au32TMRINTCount[0]++;
  15.     }
  16. }

  17. int main(void)
  18. {
  19.     /* Unlock protected registers */
  20.     SYS_UnlockReg();

  21.     SYS_Init();

  22.     /* Lock protected registers */
  23.     SYS_LockReg();

  24.     TIMER0_Init();

  25.     while(1)
  26.     {
  27.         TIMER_Delay(TIMER0,1000000);
  28.         PB5 = ~PB5;
  29.     }
  30. }
复制代码

作者: admin    时间: 2022-3-10 16:44
因为TIMER_Delay函数里对timer0重新初始化了,关闭了溢出中断
作者: 匿名    时间: 2022-3-17 17:40
admin 发表于 2022-3-10 16:44
因为TIMER_Delay函数里对timer0重新初始化了,关闭了溢出中断

感谢板大




欢迎光临 牛卧堂MCU技术交流 (http://www.nuvoton-mcu.com/) Powered by Discuz! X3.2