《单片机原理及接口技术——基于armcortexm3的stm32系列》课件47

上传人:大米 文档编号:589516385 上传时间:2024-09-10 格式:PPT 页数:16 大小:272.09KB
返回 下载 相关 举报
《单片机原理及接口技术——基于armcortexm3的stm32系列》课件47_第1页
第1页 / 共16页
《单片机原理及接口技术——基于armcortexm3的stm32系列》课件47_第2页
第2页 / 共16页
《单片机原理及接口技术——基于armcortexm3的stm32系列》课件47_第3页
第3页 / 共16页
《单片机原理及接口技术——基于armcortexm3的stm32系列》课件47_第4页
第4页 / 共16页
《单片机原理及接口技术——基于armcortexm3的stm32系列》课件47_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《《单片机原理及接口技术——基于armcortexm3的stm32系列》课件47》由会员分享,可在线阅读,更多相关《《单片机原理及接口技术——基于armcortexm3的stm32系列》课件47(16页珍藏版)》请在金锄头文库上搜索。

1、重庆大学重庆大学 电气工程学院电气工程学院ARMCortex-M3的STM32系列MDK5环境中的时钟配置函数 MDK5环境中的时钟配置函数程序框架文件文件 Test.cTest.cintmain(void)/变量定义Stm32_Clock_Init(9);/系统时钟设置delay_init(72); /延时初始化/其它初始化while(1)2 MDK5环境中的时钟配置函数程序框架在sys.h中定义Stm32_Clock_Init函数原型voidStm32_Clock_Init(u8PLL);/时钟初始化在sys.c中定义Stm32_Clock_Init函数体voidStm32_Clock_I

2、nit(u8PLL)unsignedchartemp=0;MYRCC_DeInit();/复位并配置向量表RCC-CR|=0x00010000;/外部高速时钟使能HSEONwhile(!(RCC-CR17);/等待外部时钟就绪RCC-CFGR=0x00000400;/APB1=DIV2;APB2=DIV1;AHB=DIV1;PLL-=2;/需要抵消2,设成111时是9倍频RCC-CFGR|=PLLCFGR|=1ACR|=0x32;/FLASH2个延时周期RCC-CR|=0x01000000;/PLLONwhile(!(RCC-CR25);/等待PLL锁定RCC-CFGR|=0x00000002

3、;/PLL作为系统时钟while(temp!=0x02)/等待PLL作为系统时钟设置成功temp=RCC-CFGR2;temp&=0x03;/取2、3两位,等其变为104 MDK5环境中的时钟配置函数讨论与交流手册上查得:APB2ENR第6位为1,使能PORTE时钟APB2ENR地址为:0x40021018分析下面的代码,理解其程序实现4 MDK5环境中的时钟配置函数讨论与交流4在stm32f10x_map.h文件中已定义:typedefstructvu32CR;vu32CFGR;vu32CIR;vu32APB2RSTR;vu32APB1RSTR;vu32AHBENR;vu32APB2ENR;

4、vu32APB1ENR;vu32BDCR;vu32CSR;RCC_TypeDef;#definePERIPH_BASE(u32)0x40000000)#defineAHBPERIPH_BASE(PERIPH_BASE+0x20000)#defineRCC_BASE(AHBPERIPH_BASE+0x1000)#defineRCC(RCC_TypeDef*)RCC_BASE)代码 RCC-APB2ENR|=16; 使能PORTEThanks MDK5环境中的时钟配置函数时钟控制寄存器(RCC_CR)位16 HSEON:外部高速时钟使能由软件置1或清零。当进入待机和停止模式时,该位由硬件清零,关闭

5、外部时钟。当外部时钟被用作或被选择将要作为系统时钟时,该位不能被清零。0:HSE振荡器关闭1:HSE振荡器开启 MDK5环境中的时钟配置函数位17 HSERDY:外部高速时钟就绪标志由硬件置1来指示外部时钟已经稳定。在HSERDY位清零后,该位需要6个外部时钟周期清零。0:外部1-25MHz时钟没有就绪1:外部1-25MHz时钟就绪时钟控制寄存器(RCC_CR) MDK5环境中的时钟配置函数时钟控制寄存器(RCC_CR)位24 PLLON:PLL使能由软件置1或清零。当进入待机和停止模式时,该位由硬件清零。当PLL时钟被用作或被选择将要作为系统时钟时,该位不能被清零。0:PLL关闭1:PLL使

6、能 MDK5环境中的时钟配置函数时钟控制寄存器(RCC_CR)位25 PLLRDY:PLL时钟就绪标志PLL锁定后由硬件置1。0:PLL未锁定1:PLL锁定 MDK5环境中的时钟配置函数时钟配置寄存器(RCC_CFGR)位7:4 HPRE:AHB预分频由软件设置来控制AHB预分频系数。0xxx:SYSCLK不分频位10:8 PPRE1:低速APB预分频(APB1)由软件设置来控制低速APB1预分频系数。保证APB1时钟频率不超过36MHz。100:HCLK 2分频位13:11 PPRE2:高速APB预分频(APB2)由软件设置来控制高速APB2预分频系数。0xx:HCLK不分频 MDK5环境中

7、的时钟配置函数时钟配置寄存器(RCC_CFGR)位21:18 PLLMUL:PLL倍频系数由软件设置来确定PLL倍频系数。只有在PLL关闭的情况下才可被写入。PLL输出频率不能超过72MHz0000:PLL 2倍频输出 0001:PLL 3倍频输出 0010:PLL 4倍频输出0011:PLL 5倍频输出 0100:PLL 6倍频输出 0101:PLL 7倍频输出0110:PLL 8倍频输出 0111:PLL 9倍频输出 1000:PLL 10倍频输出1001:PLL 11倍频输出 1010:PLL 12倍频输出 1011:PLL 13倍频输出1100:PLL14倍频输出 1101:PLL 1

8、5倍频输出 1110/1111:PLL 16倍频输出 MDK5环境中的时钟配置函数时钟配置寄存器(RCC_CFGR)位16 PLLSRC:PLL输入时钟源由软件设置来选择PLL输入时钟源。该位只有在PLL关闭时才可以被写入。0:HSI时钟2分频后作为PLL输入时钟1:HSE时钟作为PLL输入时钟 MDK5环境中的时钟配置函数时钟配置寄存器(RCC_CFGR)位1:0 SW:系统时钟切换由软件设置来选择系统时钟源。00:HSI作为系统时钟01:HSE作为系统时钟10:PLL输出作为系统时钟11:不可用 MDK5环境中的时钟配置函数时钟配置寄存器(RCC_CFGR)位3:2 SWS:系统时钟切换状态由硬件置1和清零来指示哪一个时钟源被作为系统时钟。00:HSI作为系统时钟01:HSE作为系统时钟10:PLL输出作为系统时钟11:不可用

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号