• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

STM32的倍频功能程序中在哪里设置的额,

huihui163 2017-09-30 浏览量:1772
STM32的倍频功能程序中在哪里设置的额,平时都没有设置直接都是倍频8*9为72M
-1 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 使用PLL作为系统时钟,加入RCC的库

      RCC_HSEConfig(RCC_HSE_ON);
      RCC_WaitForHSEStartUp();
      RCC_PLLConfig(RCC_PLLSource_HSE_Div1,RCC_PLLMul_9); (这句是设置PLL倍频的)
      RCC_PLLCmd(ENABLE); (这句使能PLL)
    while(RCC_GetSYSCLKSource()!=0x08)
      {
      RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK);
      }
    RCC_PLLMul_9是乘数,
    RCC_PLLSource_HSE_Div1是除数,
    倍频=基频*RCC_PLLMul_9/RCC_PLLSource_HSE_Div1

    • 发布于 2017-10-01
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:5
  • 在cubeMX的图形配置界面上,有一个时钟树配置,那里可以配置相应的倍频参数,设置时钟,设置好后生成代码就好了~
    • 发布于2017-10-03
    • 举报
    • 评论 0
    • 0
    • 0

  • 不知道你用的是哪款单片机,每个系列大致是一样的,我这个是STM32F4系列的HAL库,你看看
      RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSE;
      RCC_OscInitStruct.HSEState = RCC_HSE_ON;
      RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON;
      RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE;
      RCC_OscInitStruct.PLL.PLLM = 6;
      RCC_OscInitStruct.PLL.PLLN = 192;
      RCC_OscInitStruct.PLL.PLLP = RCC_PLLP_DIV8;
      RCC_OscInitStruct.PLL.PLLQ = 4;
      if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK)
      {
        _Error_Handler(__FILE__, __LINE__);
      }
    具体的参数HAL库stm32f4xx_hal_rcc.h文件
    标准库你可以看stm32f4xx_rcc.h文件
    • 发布于2017-10-06
    • 举报
    • 评论 0
    • 0
    • 0

  • cubemx可以直接在时钟页那里调,如果不使用cubemx,那就需要找到程序中描述RCC的那一段,进行修改
    • 发布于2017-10-10
    • 举报
    • 评论 0
    • 0
    • 0

  • PLL倍频,在时钟初始化里面设置,找个源码仔细看看就知道了
    • 发布于2017-10-12
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

STM32的倍频功能程序中在哪里设置的额,