关于STM8S105K4定时器TIM2,TIM3使用问题。

wujialing 2014-11-17 09:08:49
由于项目需要使用STM8S105K4这个款单片机。使用中就需要使用到定时器。
初始化代码如下。
CLK_PeripheralClockConfig(CLK_PERIPHERAL_TIMER3,ENABLE);
TIM3_TimeBaseInit(TIM3_PRESCALER_4096, 3905);
TIM3_SetCounter(0);
TIM3_ITConfig(TIM3_IT_UPDATE, ENABLE);
TIM3_ClearFlag(TIM3_FLAG_UPDATE);
TIM3_Cmd(ENABLE);
16M环境下1S产生中断,现在问题出来了。只要TIM3_Cmd(ENABLE);启动定时器,就会立马进入中断。根本就没有计时达到1S后才进入中断。从第二次中断开始又是正常定时时间。
经过测试发生,从使能定时器的到中断之间产生的第一次中断时间大概为16M/3905的时间。相当于没有对系统进行4096分频。
不知道大家有遇到这种情况没?
...全文
792 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
woshi_ziyu 2014-11-19
  • 打赏
  • 举报
回复
 /* Generate an update event to reload the Prescaler value immediatly */
  TIMx->EGR = TIM_PSCReloadMode_Immediate;
关于定时器的使用
wujialing 2014-11-17
  • 打赏
  • 举报
回复
问题已解决,使用TIM3_PSCRELOADMODE_IMMEDIATE

27,509

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 单片机/工控
社区管理员
  • 单片机/工控社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧