[技术问答] M261的定时器,偏差很大,600秒差不多10秒的误差,咋办?

[复制链接]
700|1
 楼主| nbiot 发表于 2019-12-30 11:35 | 显示全部楼层 |阅读模式

M261的定时器,偏差很大,600秒差不多10秒的误差,咋办?
用了TIMER0作为定时器,采用内部高速时钟作为时钟源,系统时钟设置为4MHz.

  1. void TMR0_IRQHandler(void)
  2. {

  3.           TMR0_COUNT++;
  4.           
  5.     TIMER_ClearIntFlag(TIMER0);
  6. }


  7. void TIMER0_INIT(void)
  8. {
  9.        /* setting take effect */

  10.     TIMER_Open(TIMER0, TIMER_PERIODIC_MODE, 1);
  11.     CLK_SysTickDelay(50);

  12.     /* Enable timer wake up system */
  13.     TIMER_EnableWakeup(TIMER0);
  14.     CLK_SysTickDelay(50);

  15.     /* Enable Timer0 interrupt */
  16.     TIMER_EnableInt(TIMER0);
  17.     CLK_SysTickDelay(50);

  18.     NVIC_EnableIRQ(TMR0_IRQn);

  19.     /* Start Timer0 counting */
  20.     TIMER_Start(TIMER0);
  21.     CLK_SysTickDelay(50);

  22. }
dongnanxibei 发表于 2019-12-30 22:42 | 显示全部楼层
代码不全啊,看不出来,你参考官方的例子试试。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:QQ 2419286292

82

主题

181

帖子

3

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