- 1、本文档共45页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
1.STM32芯片架构我们这里讲的STM32F1系统架构主要针对的STM32F103系列芯片。
2.STM32芯片系统结构6.3STM32的时钟树本节主要内容 6.3.1STM32时钟源 6.3.2内部RC振荡器与外部晶振的选择 6.3.3STM32常用的时钟6.3.4时钟输出的使能6.3.5时钟设置的基本流程 时钟树6.3.1STM32时钟源在STM32中,有5个时钟源,分别为HSI、HSE、LSI、LSE、PLL。HSI是高速内部时钟,RC振荡器,频率为8MHz。可作为系统时钟或PLL锁相环的输入。HSE是高速外部时钟,可接石英谐振器、陶瓷谐振器,或者接外部时钟源,它的频率范围为4MHz~16MHz。HSE可以作为系统时钟和PLL锁相环输入,还可以经过128分频后输入给RTC。LSI是低速内部时钟,RC振荡器,频率为40kHz。可供独立看门狗和RTC使用,并且独立看门狗只能使用LSI时钟。LSE是低速外部时钟,通常外接一个32.768KHz的晶振,供RTC使用。PLL是锁相环,用于倍频输出,其时钟输入源可选择为HIS/2、HSE或者HSE/2,经过2~16倍频后输入给PLLCLK,如果系统时钟选择由PLLCLK提供,则PLLCLK最大值不要超过72M。6.3.2内部RC振荡器与外部晶振的选择STM32可以选择内部时钟(内部RC振荡器),也可以选择外部时钟(外部晶振)。但如果使用内部RC振荡器而不使用外部晶振,必须清楚以下几点:(1)对于100脚或144脚的产品,OSC_IN应接地,OSC_OUT应悬空。(2)对于少于100脚的产品,有两种接法:①方法1:OSC_IN和OSC_OUT分别通过10kΩ电阻接地。此方法可提高EMC性能。②方法2:分别重映射OSC_IN和OSC_OUT至PD0和PD1,再配置PD0和PD1为推挽输出并输出0。此方法相对于方法1,可以减小功耗并节省两个外部电阻。(3)内部8MHz的RC振荡器的误差在1%左右,内部RC振荡器的精度通常比用HSE(外部晶振)要低十倍以上。STM32的ISP就是利用了HSI(内部RC振荡器)。6.3.3STM32常用的时钟(1)SYSCLK系统时钟。它是STM32中绝大部分部件工作的时钟源。它的时钟来源可以由HSI、HSE、PLLCLK提供,一般程序中采用PLL倍频到72Mhz。(2)MCO是STM32的一个时钟输出IO(PA8),它可以选择一个时钟信号输出,可以选择为PLL输出的2分频、HSI、HSE或者系统时钟。这个时钟可以用来给外部其他系统提供时钟源。(3)RTC时钟。从时钟树图中线的流向可知,RTC时钟来源可以是内部低速的LSI时钟,外部低速LSE时钟(32.768K),还可以通过HSE128分频后得到。(4)USB时钟。STM32中有一个全速功能的USB模块,其串行接口引擎需要一个频率为48MHz的时钟源,该时钟源只能从PLL输出端获取,可以选择为1.5分频或者1分频,也就是当需要使用USB模块时,PLL必须使能,并且PLLCLK时钟频率配置为48MHz或72MHz。(5)其他所有外设。从时钟图上可以看出,其他所有外设的时钟最终来源都是SYSCLK。SYSCLK通过AHB分频器分频后送给各模块使用。这些模块包括:①AHB总线、内核、内存和DMA使用的HCLK时钟。②通过8分频后送给Cortex系统定时器时钟,即SysTick。③直接送给Cortex的空闲运行时钟FCLK。④送给APB1分频器。APB1分频器输出一路供APB1外设使用(PCLK1,最大频率36MHz),另一路送给定时器(Timer)1、2倍频使用。⑤送给APB2分频器。APB2分频器分频输出一路供APB2外设使用(PCLK2,最大频率72MHz),另一路送给定时器(Timer)1倍频器使用。⑥送给ADC分频器。ADC分频器经过2、4、6、8分频后送给ADC1/2/3使用,ADC最大频率为14MHz。⑦二分频后送给SDIO使用。6.3.4时钟输出的使能在以上的时钟输出中有很多是带使能控制的,如AHB总线时钟、内核时钟、各种APB1外设时钟、APB2外设时钟等。当需要使用某模块时,必须先使能对应的时钟。需要注意的是定时器的倍频器,当APB的分频为1时,它的倍频值为1,否则它的倍频值就为2。连接在APB1上的设备(低速外设)有:电源接口、备份接口、CAN、USB、I2Cl、I2C2、UART2、UART3、SPI2、窗口看门狗、Timer2、Timer3、Timer4。注意:USB模块虽然需要一个单独的48MHz时钟信号,
文档评论(0)