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

STM32 不同时钟频率有什么不同的影响

[复制链接]
flyingstar 发布时间:2025-9-3 13:47
#STM32为什么需要RCC时钟树
; m- V% ?& ^1 ?9 Z: h# @        单片机本质上,是一个复杂的时序电路,而时序电路的行为依赖于,时钟信号来控制状态的变化,和数据的流动,如果没有时钟信号,单片机内部的时序逻辑将无法工作,整个系统将失去还有控制。
# ~) l( e- n& h" T  u
+ U& E' P; x* J" Y9 o时序电路:这是一种数字逻辑电路类型,输出取决于输出信号,和历史信号(电路之前的状态),通过存储原件保持状态信息,同时通过时钟信号来同步状态的更新。" ^* u  k$ u& B# a: i/ R4 D
/ }; B/ ?* Z3 J( R, |  R0 G
执行指令:指令的执行分为,取指,解码,执行,返回结果,而时钟信号为这些步奏,提供了时间基准,能过准确的执行指令
, [- a9 `; _1 c7 i/ \7 T( m
+ a3 x, u4 Z5 `: G1 a# R3 a; M
定时器使用:定时器功能中,计数还有输出PWM,这两个功能都需要时钟的控制,定时器还有计数器广泛生成精确的时间延迟。
) U1 t. F! S( D" R
单片机是时序电路,所以需要时钟树————————铁头山羊(B站)
, @6 Q9 c% F/ \# n* E: O" O# y- K0 F, N" L6 l% J$ q" O( e

7 Y0 ?/ |* S& h9 q3 d* R$ v0 j! H& F#时钟频率的不同意味着什么0 ~! ~' ?' D0 g4 Y5 h0 l% Z' z

& {6 E/ {1 `# k2 I        可能有的小伙伴单纯的认为,不同的时钟频率就是时钟频率不同,时钟频率意味着不同的执行速度,意味着相同单片机,不同的性能,同时部分外设要求限制相关频率,下面讲。
  ~7 |* g' k3 V" w/ i1 e/ @+ V7 \) Z
        这里使用 STM32F103用来论证,Cortex - M3内核,时钟频率72Mhz,每条指令平均需要一条时钟周期。
+ `2 V  Y% s% o' F$ E# Y0 c9 h0 R0 g' h8 d/ d
理解时钟频率:单片机的时钟频率表示的是每秒钟时钟信号的周期数,通常以(hz)为单位,8Mhz意味着每秒钟有  8000,000个时钟周期* w2 D& w2 {) ^
" D; u. v$ q4 g- T3 t
指令执行时间:最终的代码都会转化为指令,去由CPU去执行,这些指令的执行需要时钟周期,不同时钟周期在不同频率下所用时间不同,具体时间受时钟频率,内核架构不同收到影响,% [8 n  k: T3 j: ]

$ S0 ?" r& u5 a1 G( l/ \. C        这里举例是,STM32F103用来论证,Cortex - M3内核,时钟频率72Mhz,每条指令平均需要一条时钟周期,用这个来论证执行时间。& m4 M2 h5 N2 ?2 l1 I

6 i/ P# J5 n6 z6 k" x' k
计算不同频率下时钟周期所用时间:
0 `) ^3 M/ @' g5 d9 h# c' W9 s% L# X& m- b, ~+ x. h
                不同的频率下时钟周期,执行时间也不一样,公式如下,fclk 单片机时钟频率,Tclk 时钟周期执行时间,这里带入计算,                                                        Tclk=1/fclk
$ v5 ?% J) y  \                                                Tclk=1/72×10 6(6次方)≈13.89 ns9 Q3 v! Z- Q( @& K: ~! Y9 D
        每条指令在 Cortex-M3 内核、时钟频率为 72 MHz 的条件下,平均执行时间约为 13.89 纳秒。
9 X, Q) S* ]& J! O3 r4 ^% d9 H( n8 m1 c/ b5 }' F$ N( b
#验证不同频率的执行速度# F2 _4 i7 D7 f+ B& o
       前言: 这里是参考铁头山羊老师的,在STM32默认时钟频率为8Mhz,的情况下每个for循环需要8个指令周期,循环判断条件1000,000,近似每条for循环执行时间需要1s,
# H; b( T  m4 [- X+ ]
' s5 y: r/ k9 j6 e8 c 微信图片_2025-09-03_134609_888.png 1 X& ^, ^# a! J- y
9 {: C+ [( I8 c1 |3 \

! b: {/ i) c4 h4 j; T; w      实验现象,在默认情况下,板载LED闪烁频率为2s,如果将GPIOC挂载的总线使用STM32CubleMX配置为72Mhz,这个时候就会发现,执行的速度就会更快了。
3 ]! T! u& h3 q
8 d# T5 d8 x7 M* k# [, t
% ~  y% K  R, `6 i9 }6 o1 W. k9 T) I5 O4 @/ Q

/ R" _( R7 g7 F3 ~# K. z9 r' {) v# A
  w! e0 D4 p; q2 k' p+ R
收藏 评论0 发布时间:2025-9-3 13:47

举报

0个回答

所属标签

相似技术帖

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版