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

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扩展软件包
关注我们
微信公众号二维码 微信公众号
手机版二维码 手机版