历史上的今天
今天是:2025年08月19日(星期二)
2018年08月19日 | STM32 HAL 库学习笔记之-------(系统时钟配置)
2018-08-19 来源:eefocus
使用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);
}
史海拾趣
|
我这几天就要做毕业设计了,但以前没怎么做过,现在基本上没有头绪,请大家帮帮忙啊 课题:基于硅光电池的无线接收器实验研究设计 内容提要:在分析研究现有的红外无线接收器技术的基础上, 以硅光电池为无线接收器进行试验研究,探 ...… 查看全部问答> |
|
找了好长时间,还是修改已有驱动没成功,deviceid等到底是改什么,查了芯片手册没发现差别啊,求教已经修改成功的同学,折腾的头大,现在被卡住在网卡这个地方了,有谁帮一把,谢谢各位!… 查看全部问答> |
|
EK-LM3S811_ND Rev3 开发板上的作为仿真器的芯片发热严重 刚收到的EK-LM3S811_ND 开发板插上电,仿真器的那颗芯片发热,大家的开发板有没有这种现象.....??… 查看全部问答> |
|
altium不能调用集成库中的封装了,不知道怎么回事。 比如我在院里图中放置一个电阻,现在想更换该电阻的封装 我记得原来只用在封装的选项里面点浏览, 然后更换封装就好了。 但是现在不行,集成库已经添加,但是在可用的封装里面没有显示。 ...… 查看全部问答> |
|
更改形状按以下步骤:“设计”--->\"板子形状\"--->\"重新定义PCB外形\" ,然后就可以重新定义外形了。 建议在重定义PCB外形前,先在\"KEEPOUT层\"(禁止布线层)上先用直线把大概轮廓画出来,也包括固定孔。如果想精确定位pcb的外 ...… 查看全部问答> |
|
我是用的TPS65910A3A1,处理器是AM3352。电源供电的时候可以产生1.8V的VRTC输出。断电后只有电池供电时没有产生1.8V的VRTC,电池电压在3.1V左右,通过引脚27输入VBACKUP,但VRTC输出还是0V,因此时间日期不能保存。不知道该怎么解决。相关的原理图 ...… 查看全部问答> |




