历史上的今天

今天是:2024年08月25日(星期日)

正在发生

2020年08月25日 | STM32 HAL 库学习笔记之-------(系统时钟配置)

发布者:平稳心绪 来源: eefocus关键字:STM32  HAL  系统时钟配置 手机看文章 扫描二维码
随时随地手机看文章

使用CubeMX工具,让开发者不用理会底层的实现,是整个配置变简单


一、准备工具STM32_CubeMX

ST官网可下载 http://www.st.com/content/st_com/en/search.html#q=cubemx-t=tools-page=1


二、打开STM32_CubeMX开始配置,使用内部RC,最大倍频至64MHZ,芯片大于64MHZ,应该选择HSE


STM32F103为例子

HSI配置

 HSE配置

三、以下是STM32F103 HES 72MHZ配置例子:
工具生成基本直接可以使用,需要注意是,外部晶振源,有8khz(默认),12khz,可以在System_stm32f1xx.h修改

/** System Clock Configuration*/
void SystemClock_Config(void)
{
  RCC_OscInitTypeDef RCC_OscInitStruct;
  RCC_ClkInitTypeDef RCC_ClkInitStruct;

    /**Initializes the CPU, AHB and APB busses clocks */
  RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSE;
  RCC_OscInitStruct.HSEState = RCC_HSE_ON;
  RCC_OscInitStruct.HSEPredivValue = RCC_HSE_PREDIV_DIV1;
  RCC_OscInitStruct.HSIState = RCC_HSI_ON;
  RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON;
  RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE;
  RCC_OscInitStruct.PLL.PLLMUL = RCC_PLL_MUL9;
  if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK)
  {
    _Error_Handler(__FILE__, __LINE__);
  }
    /**Initializes the CPU, AHB and APB busses clocks */
  RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK|RCC_CLOCKTYPE_SYSCLK
                              |RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2;
  RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK;
  RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1;
  RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV2;
  RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV1;


  if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_2) != HAL_OK)
  {
    _Error_Handler(__FILE__, __LINE__);
  }

    /**Configure the Systick interrupt time */
  HAL_SYSTICK_Config(HAL_RCC_GetHCLKFreq()/1000);


    /**Configure the Systick   */
  HAL_SYSTICK_CLKSourceConfig(SYSTICK_CLKSOURCE_HCLK);

  /* SysTick_IRQn interrupt configuration */
  HAL_NVIC_SetPriority(SysTick_IRQn, 0, 0);
}

/** NVIC Configuration*/
static void MX_NVIC_Init(void)
{
  /* RCC_IRQn interrupt configuration */
  HAL_NVIC_SetPriority(RCC_IRQn, 0, 0);
  HAL_NVIC_EnableIRQ(RCC_IRQn);
}

关键字:STM32  HAL  系统时钟配置 引用地址:STM32 HAL 库学习笔记之-------(系统时钟配置)

上一篇:STM32时钟详解
下一篇:STM32各种时钟的区别

推荐阅读

中国第一家运营型服务机器人公司希格斯动力科技公司于8月23日香港召开发布会,面向全球市场正式发布实用型餐饮揽客机器人品牌“四眼超人”,同时发布了以机器人为载体的餐饮互联网营销和数据服务“回头客”系统,餐饮机器人联盟商家会员服务三款产品。希格斯动力合作伙伴Robotou同期进行全球首家服务机器人运营平台的启动仪式,正是在Robotou的帮助下四眼...
中国机器人和全球机器人市场一样,从2009年以后,有一个非常长的快速增长期。中国是2013年开始成为全球最大的市场,直到2017年,成了全球两个之最:每年市场规模最大,每年增速最高。 机器人的新时代来临了。企业扩大规模,投资机构全力以赴。机器人从技术到市场作为一个新的风口,市场越来越大,增速越来越快。同时,新的技术不断地为机器人的发展赋能...
集邦咨询(TrendForce)旗下拓墣产业研究院最新调研结果显示,由于年底是欧美消费旺季,加上中国大陆十一长假及“双11”促销活动,带动目前下游客户端拉货动能旺盛,使晶圆代工产能与需求连带稳定提升,预估第三季全球晶圆代工厂营收将成长14%,其中台积电第3季量产5nm,预计单季营收达113.5亿美元居冠。分析指出,台积电2020年第三季营收年成长预估21%,...
1.舵机准备舵机是单片机机械控制入门必学的模块,在一些机器人关节中也是采用舵机作为控制,学习并熟练掌握使用舵机是我们对单片机的进一步认识。所以我们不能一直局限地使用开发板进行学习,而是扩展一些电子模块来辅助我们更加深入了解单片机。所以大家需要自行购买舵机。小型的舵机与大型的舵机控制原理几乎大同小异,考虑到经济的合理使用,我们选择小...

史海拾趣

小广播
最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

厂商技术中心

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

 
机器人开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2026 EEWORLD.com.cn, Inc. All rights reserved