你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

stm32F207 APB1输出最大时钟给TIMER3问题,求大神解决

[复制链接]
rabbit80 提问时间:2016-7-23 15:20 /
大家好,本人最近在编写F207定时器时(使用timer3,采用APB1总线).
问题描述:
(1)寄存器配置情况:
即此进,我对RCC_CFGR,不做任何配置(APB1:即PPRE1[2:0]为“000”。AHB:即HPRE[3:0],PLL作为系统时钟输出为120M)
(2)现象:
配置TIMER3,
120分频,溢出中断次数为1000,中断产生周期是1ms(APB1,未分频)。
(3)疑问:
按照芯片手册


PLLCLK = 120M; AHB 未分频;APBX未分频,从APBX出来的结果应该是120M,但由于APB1最大为30M,那么其输出到定时器最大时钟
应该最多为60M?
可是我查看溢出中断的波形分明为1ms,计数1000次,120分频计算的结果是120M.
请问如何达到120M, 给APB1 TIMER???

<
收藏 评论13 发布时间:2016-7-23 15:20

举报

13个回答
Dylan疾风闪电 回答时间:2016-7-25 09:02:15
本帖最后由 Dylan疾风闪电 于 2016-7-25 09:05 编辑

先上图,借cube模拟一个时钟配置: 1.jpg
从图中可以看到,APB1总线定时器的最高时钟频率为60MHz,即TIMx_CLK(max)=60MHz。
那么接下来就是TIMx_PSC分频后会产生一个 n * TIMx_CLK。

评分

参与人数 1ST金币 +2 收起 理由
zero99 + 2 很给力!

查看全部评分

Dylan疾风闪电 回答时间:2016-7-25 09:09:37
接2楼,APB1 Timer 时钟取最高60MHz,TIMER3  120分频,溢出中断次数为1000。

F=(60M*2)/(119+1)/(999+1)=1kHz

乞丐工程师 回答时间:2016-7-25 09:19:14
学习了
wenyangzeng 回答时间:2016-7-25 11:01:43
PLLCLK = 120M,一个上升沿,一个下降沿,应该要2个时钟周期了吧。
rabbit80 回答时间:2016-7-25 11:08:25
Dylan疾风闪电 发表于 2016-7-25 09:02
先上图,借cube模拟一个时钟配置:
从图中可以看到,APB1总线定时器的最高时钟频率为60MHz,即TIMx_CLK(ma ...

非常感谢您的回复,因为我司网络屏蔽了上传功能,无法上传图片。
您的这张图非常详细,再次感谢:
       在图解中可以看到APB1总线出来的最高频率为30MHZ,2倍以后,最大为60MZ,图示明确指出APB1定时器的最高输入时钟频率为60M。这一点我们的理解是一样的。
       我的重点问题是:根据我的调试计算,APB1的定时器时钟最高可达120M,与最大60M(30M*2=60M)相矛盾。此外,您说X2倍=120M,其实,从APB1出来的30M已经X2了,所以此处依然令人困扰,烦请解释呀。多谢谢了。
rabbit80 回答时间:2016-7-25 11:39:08
Dylan疾风闪电 发表于 2016-7-25 09:09
接2楼,APB1 Timer 时钟取最高60MHz,TIMER3  120分频,溢出中断次数为1000。

F=(60M*2)/(119+1)/(999+1 ...

TIMx_PSC=120;这个是预分频参数;重计数周期为1000,根据输出波形发现是1ms;
根据计算公式如下:
Tout=((arr+1)*(psc+1))/Tclk 得出Tclk = 120M;

看您的回复中
F=(60M*2)/(119+1)/(999+1 ...
我有点不明白60M为什么还要再乘以2;因为系统乘2,在APB1输出到TIMER3的时候,已经做过了。
huaiqiao 回答时间:2016-7-25 21:50:39
如果对这个时钟不太清楚的话,我建议你去用CubeMX的那个时钟配置界面去配置。或者ST官方的有一个Excel+pdf的时钟配置工具,您可以看看呢。
rabbit80 回答时间:2016-7-26 10:33:34
huaiqiao 发表于 2016-7-25 21:50
如果对这个时钟不太清楚的话,我建议你去用CubeMX的那个时钟配置界面去配置。或者ST官方的有一个Excel+pdf ...

谢谢指点,不过,我的疑问仅在于最大输出为60M,到了TIM3后,为何TIM3
rabbit80 回答时间:2016-7-26 10:33:53
huaiqiao 发表于 2016-7-25 21:50
如果对这个时钟不太清楚的话,我建议你去用CubeMX的那个时钟配置界面去配置。或者ST官方的有一个Excel+pdf ...

谢谢指点,不过,我的疑问仅在于最大输出为60M,到了TIM3后,为何TIM3的时钟源变成了120M???
12下一页

所属标签

相似问题

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版