打印

关于定时器级联成32位时从定时器配置问题

[复制链接]
2067|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
w王小毛|  楼主 | 2012-7-7 20:35 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
今天下午学习定时器级联的问题,看了AN2592说明,以及运行仿真了下载的inputCapture例程,有个问题不懂,希望被指点一下。谢谢了先。
关于从定时器TIM2的TIM_TimeBaseStructure.TIM_Prescaler = 65535;不明白为什么?主定时器计满0xFFFF后溢出产生更新事件驱动从定时器计数加一,为什么从定时器还要把这个频率先分频65535呢?
网上搜了看到一个帖子http://blog.21ic.com/user1/5538/archives/2011/84221.html
这个网友用的例程还比我下载的例程多一句话TIM_PrescalerConfig(TIM2, 65535, TIM_PSCReloadMode_Update); 帖子上说65535改成0就没问题了。我下载仿真发现1:将TIM2的TIM_TimeBaseStructure.TIM_Prescaler 改成0、2、100或其他值都能测到我加载的外部信号;2:有没有TIM_PrescalerConfig(TIM2, 65535, TIM_PSCReloadMode_Update);这句话或将其中的值改为0或他值也能测量。
我就糊涂了,额,我自己学这个定时器总感觉弄不明白,希望可以得到指点帮助。非常感谢!!!
沙发
airwill| | 2012-7-7 22:07 | 只看该作者
定时器级联成32位, 是讲达到 32 位的定时精度. 跟预分频没有关系

使用特权

评论回复
板凳
w王小毛|  楼主 | 2012-7-7 22:20 | 只看该作者
额,不懂诶:$
我先把我错误的脑海里的认识说一下,以供大家指正:这个预分频(比如设为2)不是说来的信号来2个才按照一次计算?那主定时器(存储32位的低位LSB)的计满一次,给从定时器一个信号,那从定时器计数加1(高16位被进位),那分频后 不就是低16位溢出两次,高16位才加1.
2楼说的,没懂,能具体点吗?或给出数据手册里哪详细讲了这点?我自己再去琢磨琢磨。
谢谢

使用特权

评论回复
地板
w王小毛|  楼主 | 2012-7-8 17:10 | 只看该作者
嗯 又下了个基于3.0版本库编写的 32定时器 这个从定时器TIM2的TIM_TimeBaseStructure.TIM_Prescaler = 0;且更改为其他值 测得的频率就不对了。
不过TIM_PrescalerConfig(TIM2, 65535, TIM_PSCReloadMode_Update);这句更改第二个参数 看不出什么影响。

使用特权

评论回复
5
w王小毛|  楼主 | 2012-7-10 16:54 | 只看该作者
这个32位定时器 实现高精度测频 已经实现了  
不过我还是不知道一些设置的原因,以后再慢慢用的过程中钻研吧。
嗯  算结贴了
谢谢关注

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

6

帖子

0

粉丝