0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

stm32内部时钟有哪些时钟源 stm32使用内部时钟配置教程

ss 来源:CSDN、博客园 作者:baidu_39521615、Worl 2021-07-22 10:38 次阅读

stm32内部时钟有哪些时钟源

在STM32中,可以用内部时钟,也可以用外部时钟,在要求进度高的应用场合最好用外部晶体震荡器,内部时钟存在一定的精度误差。

内部时钟有2个时钟源可以选分别是HSI、LSI、(内部高速,内部低速,),高速时钟主要用于系统内核和总线上的外设时钟。低速时钟主要用于独立看门狗IWDG、实时时钟RTC。

1、HSI是高速内部时钟,RC振荡器,频率为8MHz,上电后默认的系统时时钟 SYSCLK = 8MHz,Flash编程时钟。

2、LSI是低速内部时钟,RC振荡器,频率为40kHz,可用于独立看门狗IWDG、实时时钟RTC。

使用时需要注意 注释掉这个SystemInit(); 时钟配置函数

//配置内置振荡器 36MHz

RCC_DeInit(); /*将外设RCC寄存器重设为缺省值 */

RCC_HSICmd(ENABLE); //使能内部时钟 HSI

while(RCC_GetFlagStatus(RCC_FLAG_HSIRDY)== RESET);//等待HSI就绪

RCC_HCLKConfig(RCC_SYSCLK_Div1); /*设置AHB时钟(HCLK) RCC_SYSCLK_Div1——AHB时钟 = 系统时*/

RCC_PCLK2Config(RCC_HCLK_Div1); /* 设置高速AHB时钟(PCLK2)RCC_HCLK_Div1——APB2时钟 = HCLK*/

RCC_PCLK1Config(RCC_HCLK_Div2); /*设置低速AHB时钟(PCLK1)RCC_HCLK_Div2——APB1时钟 = HCLK / 2*/

//下面这语句设置时钟频率 记住参考

RCC_PLLConfig(RCC_PLLSource_HSI_Div2, RCC_PLLMul_9);/*设置PLL时钟源及倍频系数,频率为8/2*9=36Mhz*/

RCC_PLLCmd(ENABLE); /*使能PLL *///这里使用的内部时钟所以不能被 失能

while(RCC_GetFlagStatus(RCC_FLAG_PLLRDY) == RESET) ; /*检查指定的RCC标志位(PLL准备好标志)设置与否 等待是否配置成功*/

RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK); /*设置系统时钟(SYSCLK) */

//选择哪一个做为时钟

0x00:HSI 作为系统时钟 RCC_SYSCLKSource_HSI

// 0x04:HSE作为系统时钟 RCC_SYSCLKSource_HSE

// 0x08:PLL作为系统时钟 RCC_SYSCLKSource_PLLCLK

while(RCC_GetSYSCLKSource() != 0x08);//需与被选择的系统时钟对应起来,RCC_SYSCLKSource_PLL

整合自:CSDN、博客园

编辑:jq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • STM32
    +关注

    关注

    2239

    文章

    10671

    浏览量

    348745
收藏 人收藏

    评论

    相关推荐

    STM32CubeMX 6.5.0时钟配置页面的ADC时钟无法配置怎么解决?

    最新版STM32CubeMX 6.5.0,启动ADC功能后,时钟配置页面的ADC时钟仍无法配置
    发表于 03-25 07:04

    STM32CubeIDE产生初始程式, timer选择内部时钟为什么SMCR的ETPS配置为01吗?

    请问有人可以解释STM32CubeIDE 产生初始程式, timer 选择内部时钟为什么SMCR 的 ETPS 配置为 01 吗? sCl
    发表于 03-13 07:27

    请问stm32f429如何改内部rc时钟工作?

    stm32f429标准库如何改内部rc时钟工作?
    发表于 01-17 06:25

    STM32使用内部晶振还是外部晶振?

    STM32使用内部晶振还是外部晶振? 在设计和开发STM32应用时,有两种主要的时钟源选择可供选择:内部晶振和外部晶振。
    的头像 发表于 12-15 14:14 2923次阅读

    利用STM32CubeMX解读时钟

    提供给芯片中的RTC(实时时钟)及IWDG(独立看门狗)使用。2,中速时钟MSIRC是“中速内部时钟”或“中速内部振荡器”,是
    的头像 发表于 11-24 08:00 354次阅读
    利用<b class='flag-5'>STM32</b>CubeMX解读<b class='flag-5'>时钟</b>树

    Xilinx FPGA芯片内部时钟和复位信号使用方法

    如果FPGA没有外部时钟源输入,可以通过调用STARTUP原语,来使用FPGA芯片内部时钟和复位信号,Spartan-6系列内部时钟源是5
    的头像 发表于 10-27 11:26 1085次阅读
    Xilinx FPGA芯片<b class='flag-5'>内部</b><b class='flag-5'>时钟</b>和复位信号使用方法

    STM32的SysTick时钟源来自哪里?

    STM32的SysTick时钟源来自哪里?
    的头像 发表于 10-26 15:58 964次阅读
    <b class='flag-5'>STM32</b>的SysTick<b class='flag-5'>时钟</b>源来自哪里?

    STM32失能时钟和复位外设的区别

    STM32失能时钟和复位外设的区别
    的头像 发表于 10-17 11:48 555次阅读
    <b class='flag-5'>STM32</b>失能<b class='flag-5'>时钟</b>和复位外设的区别

    STM32的独立看门狗用的时钟内部时钟还是外部时钟呢?

    STM32的独立看门狗用的时钟内部时钟还是外部时钟
    发表于 10-15 11:58

    STM32F0系列MCU硬件电路时钟/复位/烧录设计

    STM32F0系列MCU支持使用内部RC时钟源作为芯片参考时钟,或者通过OSC_IN/OUT、OSC32_IN/OUT的时钟信号作为参考
    的头像 发表于 09-27 11:25 1188次阅读
    <b class='flag-5'>STM32</b>F0系列MCU硬件电路<b class='flag-5'>时钟</b>/复位/烧录设计

    STM32 RTC实时时钟(一)

    STM32处理器内部集成了实时时钟控制器(RTC),因此在实现实时时钟功能时,无须外扩时钟芯片即可构建实时
    的头像 发表于 07-22 15:41 2863次阅读
    <b class='flag-5'>STM32</b> RTC实时<b class='flag-5'>时钟</b>(一)

    STM32时钟系统中的SysTick、FCLK、SYSCLK、PCLK和HCLK

    时钟信号好比是单片机的脉搏,了解STM32时钟系统是必要的,下图是STM32F1xx用户手册中的时钟系统结构图。
    发表于 06-15 17:07 3832次阅读
    <b class='flag-5'>STM32</b><b class='flag-5'>时钟</b>系统中的SysTick、FCLK、SYSCLK、PCLK和HCLK

    RTC时钟与触摸功能详解(下)

    是CPU内部集成RTC模块。STM32F103内部集成了RTC模块,可以通过配置相应的寄存器来实现实时时钟的功能。
    的头像 发表于 05-26 14:45 914次阅读
    RTC<b class='flag-5'>时钟</b>与触摸功能详解(下)

    RTC时钟与触摸功能详解(上)

    是CPU内部集成RTC模块。STM32F103内部集成了RTC模块,可以通过配置相应的寄存器来实现实时时钟的功能。
    的头像 发表于 05-26 14:44 1357次阅读
    RTC<b class='flag-5'>时钟</b>与触摸功能详解(上)

    单片机STM32时钟详解

    众所周知STM32有5个时钟源HSI、HSE、LSI、LSE、PLL,其实他只有四个,因为从上图中可以看到PLL都是由HSI或HSE提供的。 其中,高速时钟(HSE和HSI)提供给芯片主体的主
    的头像 发表于 05-22 10:09 3052次阅读
    单片机<b class='flag-5'>STM32</b><b class='flag-5'>时钟</b>详解