OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4411|回复: 4

关于APB1和APB2时钟的预分配系数取值与时钟上所挂的定时器的时钟频率时钟

[复制链接]

10

主题

129

帖子

0

精华

高级会员

Rank: 4

积分
744
金钱
744
注册时间
2020-5-11
在线时间
70 小时
发表于 2021-4-2 20:00:00 | 显示全部楼层 |阅读模式
10金钱
本帖最后由 混分小公举 于 2021-4-2 20:08 编辑

我所采用的是F407板子,我通过system_stm32f10x.c中的SystemInit()函数中所定义的时钟分频系数:


如图

由于用的是407,所以APB1的时钟分频为2,而APB2的时钟分频为4;
但是先前查阅了一些人的博客和资料,
这个倍频器的作用是:当APB1的预分频系数为1时,这个倍频器不起作用,定时器的时钟频率等于APB1的频率;当APB1的预分频系数为其他数值时(即预分频系数为2、4、8或16),这个倍频器起作用,定时器的时钟频率等于APB1的频率的2倍。
如上文加粗下划线部分
既然预分频系数为2,4,8,16都不会改变定时器的时钟频率为APB1的2倍,那为什么还要设立到4、8、16这些的分频系数呢?
这个预分配系数可以设到4、8、16,未免有些大材小用了吧
希望大佬可以指点指点。谢谢

]$8URMW4N973W75NA35NKON.png

最佳答案

查看完整内容[请看2#楼]

因为APB1和APB2上面还挂了其他的外设,串口/SPI什么的,从全局角度来看就有用了,这样时钟结构会更灵活一些
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

6

主题

1097

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3571
金钱
3571
注册时间
2014-12-2
在线时间
365 小时
发表于 2021-4-2 20:00:01 | 显示全部楼层
因为APB1和APB2上面还挂了其他的外设,串口/SPI什么的,从全局角度来看就有用了,这样时钟结构会更灵活一些
坚决不用寄存器,拒绝重复造轮子。
回复

使用道具 举报

10

主题

129

帖子

0

精华

高级会员

Rank: 4

积分
744
金钱
744
注册时间
2020-5-11
在线时间
70 小时
 楼主| 发表于 2021-4-2 20:06:16 | 显示全部楼层
忘记贴图了
回复

使用道具 举报

10

主题

129

帖子

0

精华

高级会员

Rank: 4

积分
744
金钱
744
注册时间
2020-5-11
在线时间
70 小时
 楼主| 发表于 2021-4-3 14:36:48 | 显示全部楼层
捞我自己
回复

使用道具 举报

10

主题

129

帖子

0

精华

高级会员

Rank: 4

积分
744
金钱
744
注册时间
2020-5-11
在线时间
70 小时
 楼主| 发表于 2021-4-4 11:03:29 | 显示全部楼层
xkwy 发表于 2021-4-4 10:24
因为APB1和APB2上面还挂了其他的外设,串口/SPI什么的,从全局角度来看就有用了,这样时钟结构会更灵活一些

清楚了一些了,谢谢大佬
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-2-28 03:31

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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