OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4710|回复: 14

stm8定时器不准确的问题

[复制链接]

22

主题

68

帖子

0

精华

初级会员

Rank: 2

积分
123
金钱
123
注册时间
2015-4-20
在线时间
0 小时
发表于 2015-11-2 11:32:46 | 显示全部楼层 |阅读模式
5金钱
void TIM2_Config(void)
{
  TIM2_DeInit();
  TIM2_TimeBaseInit(TIM2_PRESCALER_2,50);//定时器设置1M的计数频率,1US的分辨率 ,计时50us
  TIM2_ClearFlag(TIM2_FLAG_UPDATE);
  TIM2_ITConfig(TIM2_IT_UPDATE, ENABLE);
  TIM2_Cmd(ENABLE);
}

大家看看这个程序,没有啥问题啊?为什么会不准确

为了测试一下,我在中断函数里做了一下测试:500ms闪烁,但是结果要差不多1S了???
u16 t,k;;
void Time2InitFun(void)
{
  if(TIM2_GetITStatus(TIM2_IT_UPDATE)==SET)
  {                            
            t++;
           if(t==100)
          {
                  t=0;
                   k++;
                  if(k=100)
                   {
                        k=0;
                        GPIO_WriteReverse(LED_GPIO_PORT,LED_GPIO_PINS1);
                  }
                }
            TIM2_ClearITPendingBit(TIM2_IT_UPDATE);                        
  }      

}
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

0

主题

33

帖子

0

精华

初级会员

Rank: 2

积分
53
金钱
53
注册时间
2014-3-7
在线时间
0 小时
发表于 2015-11-2 11:32:47 | 显示全部楼层
回复

使用道具 举报

22

主题

68

帖子

0

精华

初级会员

Rank: 2

积分
123
金钱
123
注册时间
2015-4-20
在线时间
0 小时
 楼主| 发表于 2015-11-2 11:38:54 | 显示全部楼层
补充一下,我的项目是直接使用库函数,如果库函数定时有问题,能不能在工程里面用操作寄存器的方法来定时呢?那需要什么其他配置吗?能不能定时器用操作寄存器的,然后进入中断函数后,还是使用库函数呢?
回复

使用道具 举报

16

主题

409

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1292
金钱
1292
注册时间
2014-12-20
在线时间
534 小时
发表于 2015-11-2 11:46:14 | 显示全部楼层
系统时钟是多少?
回复

使用道具 举报

22

主题

68

帖子

0

精华

初级会员

Rank: 2

积分
123
金钱
123
注册时间
2015-4-20
在线时间
0 小时
 楼主| 发表于 2015-11-2 12:50:01 | 显示全部楼层
回复【3楼】BMN李:
---------------------------------
回复【3楼】BMN李:
-----------------------------默认 8分频 也就是2M
回复

使用道具 举报

22

主题

68

帖子

0

精华

初级会员

Rank: 2

积分
123
金钱
123
注册时间
2015-4-20
在线时间
0 小时
 楼主| 发表于 2015-11-2 12:50:55 | 显示全部楼层
我又把系统时钟改为16M,然后定时器时钟16分频,其他不变,就正常了,好奇怪
回复

使用道具 举报

120

主题

7877

帖子

13

精华

资深版主

Rank: 8Rank: 8

积分
12010
金钱
12010
注册时间
2013-9-10
在线时间
427 小时
发表于 2015-11-2 13:06:19 | 显示全部楼层
建议看看时钟树
现在,程序把烂铜烂铁变得智能化了,人呢,一旦离开了这烂铜烂铁就不知道干啥了
回复

使用道具 举报

22

主题

68

帖子

0

精华

初级会员

Rank: 2

积分
123
金钱
123
注册时间
2015-4-20
在线时间
0 小时
 楼主| 发表于 2015-11-2 16:58:12 | 显示全部楼层
回复【6楼】八度空间:
---------------------------------
嗯嗯
回复

使用道具 举报

0

主题

33

帖子

0

精华

初级会员

Rank: 2

积分
53
金钱
53
注册时间
2014-3-7
在线时间
0 小时
发表于 2015-11-3 00:43:28 | 显示全部楼层
先不说时钟,楼主代码有问题
回复

使用道具 举报

22

主题

68

帖子

0

精华

初级会员

Rank: 2

积分
123
金钱
123
注册时间
2015-4-20
在线时间
0 小时
 楼主| 发表于 2015-11-3 09:49:58 | 显示全部楼层
回复【8楼】揭阳老咸菜:
-------------------------哪里呢?
回复

使用道具 举报

6

主题

48

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
200
金钱
200
注册时间
2013-6-30
在线时间
30 小时
发表于 2015-11-3 11:00:19 | 显示全部楼层
还是用外部晶振吧,实践表明,STM8的晶振很不稳定,
回复

使用道具 举报

0

主题

33

帖子

0

精华

初级会员

Rank: 2

积分
53
金钱
53
注册时间
2014-3-7
在线时间
0 小时
发表于 2015-11-3 11:27:10 | 显示全部楼层
回复【10楼】donqy:
---------------------------------
我试过,如果用外振EFT好像差很多
回复

使用道具 举报

10

主题

44

帖子

0

精华

初级会员

Rank: 2

积分
148
金钱
148
注册时间
2015-6-2
在线时间
22 小时
发表于 2015-11-3 17:40:59 | 显示全部楼层
回复【11楼】揭阳老咸菜:
---------------------------------
阁下好眼力
我还需努力,因为我还没做到持之以恒
回复

使用道具 举报

14

主题

1590

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
2618
金钱
2618
注册时间
2014-7-17
在线时间
350 小时
发表于 2015-11-3 19:06:16 | 显示全部楼层
回复【13楼】宋小六:
---------------------------------
哈哈。。。代码有问题
回复

使用道具 举报

0

主题

33

帖子

0

精华

初级会员

Rank: 2

积分
53
金钱
53
注册时间
2014-3-7
在线时间
0 小时
发表于 2015-11-3 21:53:00 | 显示全部楼层
回复【13楼】宋小六:
---------------------------------
其实我是近视的
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-9-30 04:26

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表