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

【经验分享】STM32L0xxHal库SystemClock_Config函数

[复制链接]
STMCU小助手 发布时间:2021-11-19 22:00
STM32L051c8t6 使用内部HSI时钟初始化。
+ O& D' H% S  [" Q6 P& M
4 z  k/ s/ d! h& W% o: ERCC_ClkInitTypeDef RCC_ClkInitStruct;   //结构体初始化) k1 E5 X) i6 S: l, Q$ B1 B

; K+ R! P- p7 u/ \( p4 URCC_OscInitTypeDef RCC_OscInitStruct; //结构体初始化
2 b# P. c' G4 D+ y- ]
( j5 N6 T7 \& E1 j__HAL_RCC_PWR_CLK_ENABLE();  //使能电源控制时钟   
' l8 D: w; }* k7 Z
+ A1 S8 I' q/ e) y, v  l$ ]. m0 u__HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE1);//设置调压器输出电压级别1
- i4 m2 b) W1 d2 M0 M- m3 M4 W: f+ J/ _- S$ o5 B8 @' x
这个设置用来设置调压器输出电压级别,以便在器件未以最大频率工作时使性能与功耗实现平衡0 q! x9 u, w- X5 r( b1 Q
4 z" N1 ]: _- A9 m
RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSI; //时钟源为HSI内部高速时钟
% x8 B* a) L/ H
' k/ s$ z$ j3 ?4 |. B. _                                                               //RCC_OSCILLATORTYPE_HSE   高速外部时钟+ R' W3 y2 c# S

8 Q3 K" G$ @0 {RCC_OscInitStruct.HSEState = RCC_HSE_OFF;  //关闭HES0 m5 E! {# L9 M- r0 g( g2 a2 Y
; d& l/ o% L* k% J- n
RCC_OscInitStruct.HSIState = RCC_HSI_ON;    //打开HSI/ _0 I9 _8 R1 `/ q5 g: }% H
  U) t- ~+ D( R3 z
RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON; //打开PLL- k: T0 @$ [3 O8 w
7 r& J* }: f! Q. t5 T' j# L2 m$ e. z
RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSI;//设置PLL时钟源为HSI
8 n- k8 m9 l- l2 _0 g) K
5 m8 Q# Y) m6 M" a* R5 PRCC_OscInitStruct.PLL.PLLMUL = RCC_PLL_MUL4;//PLL VCO输入时钟的倍频系数9 p  F1 J5 _$ y& v9 T

- ^& z5 T* d0 G2 d8 n, o, L8 Q4 J  ARCC_OscInitStruct.PLL.PLLDIV = RCC_PLL_DIV2;//PLL VCO输入时钟的分频系数+ R. D9 R" S, r# n
* @) F& }; T( u* ?4 {5 a. y
RCC_OscInitStruct.HSICalibrationValue = 0x10;//HSI校准调整值
" v7 U3 [0 C3 _) A& ^. d' ^$ a5 K3 @1 f  Z: v
HAL_RCC_OscConfig(&RCC_OscInitStruct);  //初始化8 v3 i1 J8 {4 b1 b) _) [  Q8 J
, A" N+ ~) D* `1 e- Y
RCC_ClkInitStruct.ClockType = (RCC_CLOCKTYPE_SYSCLK | RCC_CLOCKTYPE_HCLK | RCC_CLOCKTYPE_PCLK1 | RCC_CLOCKTYPE_PCLK2);    //选中PLL作为系统时钟源并且配置HCLK,PCLK1和PCLK23 k8 l9 h" C5 D
. j( N$ U/ l: b* X% T
RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK; //设置系统时钟源
: _5 Z8 A% J3 c7 n' J9 Q2 e5 E) P0 _; b" f+ ]  `, M: ^$ l
RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1; //AHB分频系数为1! A  u& g9 }* n
  ]7 ~' {) n" u* y
RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV1;  //APB1分频系数为1
9 R6 ?" }4 v+ E1 B! F0 V, ]8 f- P( Y4 ~
RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV1;  //APB2分频系数为1
! Q, Z  _; S0 R# m9 r& j0 ^
# W$ Z1 [8 U- [7 C9 n. |, j; s6 G! l% dHAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_1);//初始化并同时设置FLASH 的延迟周期为19 K. b3 x% x" f' b! O8 S
" I) Q, L, _) H& z9 l: n
. r$ w8 g+ u/ v( G0 R# \
Q[L([3QABDFH1GIDSGE(6TV.png
赞 收藏 评论0 发布时间:2021-11-19 22:00

举报

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