ZKX's LAB

stm32时钟pcc配置 stm32为什么要配置系统时钟

2020-10-04知识8

stm32的中RCC时钟配置问题

stm32时钟pcc配置 stm32为什么要配置系统时钟

STM32时钟配置问题 0X00000400用二进制表示:0100 0000 0000(低12位[11:0],其余高20位全为0),CFGR的10:8位是控制APB1分频的,那么0X00000400对应的10:8位为100,也就是对系统时钟2分频,系统时钟最高72M,除2以后当然不超过36了;[2:0]是指从0位到第二位,即有三位,位0,位1,位2。[3:0][1:0]类似。51学的时候是用C还是用汇编?多看看汇编,多了解怎么对硬件进行操作的,那么从8位单片机到32位单片机不难。

stm32时钟pcc配置 stm32为什么要配置系统时钟

stm32配置时钟时 是的,配置了也没关系!

stm32时钟pcc配置 stm32为什么要配置系统时钟

STM32时钟配置 正常的pll三倍频就好了;RCC_PLLConfig(RCC_PLLSource_HSE_Div1,RCC_PLLMul_3);72Mhz是最大允许频率,不过可以超频工作的,所以可以在75M下工作的…

STM32的时钟到底如何配置? 时钟配置的话,你可以先想好自己的程序里面需要用到哪些外设,然后根据时钟树打开相应的外设时钟就行了。我这里给你一个一般的时钟配置的子程序吧:void rcc_configuration(void){ErrorStatus HSEStartUpStatus;定义变量HSEStartUpStatusRCC_DeInit();RCC重新配置RCC_HSEConfig(RCC_HSE_ON);打开HSE时钟HSEStartUpStatus=RCC_WaitForHSEStartUp();读入RCC状态if(HSEStartUpStatus=SUCCESS)/HSE时钟稳定{FLASH_PrefetchBufferCmd(FLASH_PrefetchBuffer_Enable);Flash预取缓冲使能;FLASH_SetLatency(FLASH_Latency_2);72MHz运行时,Flash需要等到2个周期;RCC_PLLConfig(RCC_PLLSource_HSE_Div1,RCC_PLLMul_9);使用外部时钟的9倍作为PLL时钟;RCC_PLLCmd(ENABLE);使能PLL;while(RCC_GetFlagStatus(RCC_FLAG_PLLRDY)=RESET)/等待PLL时钟稳定;{}RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK);把系统时钟切换到PLL时钟;while(RCC_GetSYSCLKSource()。0x08)/判断PLL是否是系统时钟{}}下面这个是总线上的时钟配置:RCC_HCLKConfig(RCC_SYSCLK_Div1);主时钟为72MHzRCC_PCLK2Config(RCC_HCLK_Div1);APB2时钟为72MHzRCC_PCLK1Config(RCC_HCLK_Div2);APB1。

#stm32#倍频#单片机#pll

随机阅读

qrcode
访问手机版