当前位置: 首页 > news >正文

stm32 晶振换算

系统时钟通常由PLL生成,公式为:

SystemClock_Config(void) 开发板的输出参数为 96MH

配置如下:

1.8M

SystemClock_Config()

  RCC_OscInitStruct.PLL.PLLM = 12;
  RCC_OscInitStruct.PLL.PLLN = 288;
  RCC_OscInitStruct.PLL.PLLP = RCC_PLLP_DIV2;
  RCC_OscInitStruct.PLL.PLLQ = 4;

#if !defined  (HSE_VALUE)
  #define HSE_VALUE    8000000U /*!< Value of the External oscillator in Hz */

2.12M晶振配置如下

    RCC_OscInitStruct.PLL.PLLM = 12;  // PLLM = 12
    RCC_OscInitStruct.PLL.PLLN = 192;  // PLLN = 336
    RCC_OscInitStruct.PLL.PLLP = RCC_PLLP_DIV2;  // PLLP = 2
    RCC_OscInitStruct.PLL.PLLQ = 4;  

#if !defined  (HSE_VALUE)
  #define HSE_VALUE    8000000U /*!< Value of the External oscillator in Hz */

总结:

a->PLL.PLLM通常等同于晶振的大小 :外部是xMH晶振则配置为X

b->RCC_PLLP_DIV2分频系数为系统自带:设置为2 

c->PLLN:通常决定SystemClock_Config()的函数输出

d->PLL.PLLQ 决定USB的输出,仅在USB工作频率是48M时USB 才参与工作

SystemClock_Config(void) 函数的输出

注意:

  • PLLM:通常范围为2到63。

  • PLLN:通常范围为50到432。

  • PLLP:通常为2、4、6或8。

思考:SystemClock_Config该函数的输出决定的是什么?

           UART的函数的时钟频率由什么决定?

A-> 我们配置的是SYSCLK() 函数

B-> 各总线的功能

  • AHB 总线时钟(HCLK):用于 CPU、内存和 DMA。

  • APB1 总线时钟(PCLK1):用于低速外设(如 UART2、I2C1)。

  • APB2 总线时钟(PCLK2):用于高速外设(如 UART1、SPI1、TIM1)

相关文章:

  • 【蔚蓝星球的节日】世界海洋日的探索与海洋的重要性
  • 【Rust基础】Rust后端开发常用库
  • ssm框架整合
  • 芯科科技推出的BG29超小型低功耗蓝牙®无线SoC,是蓝牙应用的理想之选
  • 哈尔滨算力服务器托管推荐-青蛙云
  • 利用DeepSeek搭建跨工作表数据的可视化分析动态面板
  • VSCode 搭建C++编程环境 2025新版图文安装教程(100%搭建成功,VSCode安装+C++环境搭建+运行测试+背景图设置)
  • 智能三防手持终端破解传统仓储效率困局
  • 每天一道算法题【蓝桥杯】【两两交换链表中的节点】
  • 【SpringBoot】实现登录功能
  • ES 使用geo point 查询离目标地址最近的数据
  • Vue系统学习day01
  • idea中lombok插件的安装与使用
  • 接口自动化入门 —— JSON中的万能密码--JSONPath解析!
  • PyTorch 入门学习
  • 鸿蒙开发者社区资源的重要性
  • Smart Time Plus smarttimeplus-MySQLConnection SQL注入漏洞(CVE-2024-53544)
  • 快手__NS_sig3数据分析
  • c++介绍智能指针 十二(2)
  • 【C++】 —— 笔试刷题day_4
  • 俄罗斯总统普京到库尔斯克州视察
  • 歼-10CE首战大放异彩,聊聊中国战机海外实战的那些事儿
  • 《远山淡影》改编电影入围戛纳关注单元,张怡微谈石黑一雄
  • 媒体谈平台帮商家“拉黑”客户:平台治理需兼顾商家与消费者权益
  • 中国古代文学研究专家、南开大学教授李剑国逝世
  • 自媒体假扮官方蹭反间谍热度攫取利益,国安机关提醒