找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 7590|回复: 6
打印 上一主题 下一主题
收起左侧

关于stm32定时器定时计算问题

[复制链接]
跳转到指定楼层
楼主
ID:73735 发表于 2015-2-19 00:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
关于stm32定时器定时计算问题
下面是配置:
TIM_TimeBaseInitStruct.TIM_Period =1000;
TIM_TimeBaseInitStruct.TIM_Prescaler = 35999;
TIM_TimeBaseInitStruct.TIM_ClockDivision = 0;
TIM_TimeBaseInitStruct.TIM_CounterMode = TIM_CounterMode_Up;
TIM_TimeBaseInit(TIM2, &TIM_TimeBaseInitStruct);
TIM_CleaRFlag(TIM2, TIM_FLAG_Update);
TIM_ITConfig(TIM2, TIM_IT_Update, ENABLE);
TIM_Cmd(TIM2, ENABLE);
我想知道这里的定时时间是多少?
计算方法是什么?
答:
预分频系数为36000 —— TIM_Prescaler = 35999
计数周期为1000 —— TIM_Period =1000
向上计数方式 —— TIM_CounterMode = TIM_CounterMode_Up
从0计数到1000则产生中断 —— TIM_ITConfig(TIM2, TIM_IT_Update, ENABLE)
如果你测得0.5s进一次中断,则定时器的输入时钟应该为72MHz:
  72MHz / 36000(预分频)  / 1000  = 2Hz


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:401614 发表于 2018-11-2 10:44 | 只看该作者
感谢,正愁不会计算定时器定时问题
回复

使用道具 举报

板凳
ID:369225 发表于 2018-11-2 14:22 | 只看该作者
感谢啊,这个刚好在写定时器PWM的时候用上了
回复

使用道具 举报

地板
ID:368791 发表于 2018-11-7 22:57 来自手机 | 只看该作者
很好的,很实用
回复

使用道具 举报

5#
ID:348627 发表于 2018-11-8 10:06 | 只看该作者
我用的定时器4 同样的操作方法为啥不是0.5秒呢、  我很郁闷
回复

使用道具 举报

6#
ID:425130 发表于 2018-11-12 19:14 | 只看该作者
好东西,很给力
回复

使用道具 举报

7#
ID:408199 发表于 2018-11-14 14:41 | 只看该作者
之前一直不明白,现在懂了
回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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