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

[复制链接]
179|1
 楼主 | 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. }
复制代码

使用特权

评论回复
| 2019-12-30 22:42 | 显示全部楼层
代码不全啊,看不出来,你参考官方的例子试试。

使用特权

评论回复
扫描二维码,随时随地手机跟帖
您需要登录后才可以回帖 登录 | 注册

本版积分规则

我要发帖 投诉建议 创建版块 申请版主

快速回复

您需要登录后才可以回帖
登录 | 注册
高级模式

论坛热帖

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