杨桃32学习笔记,本文图片文字皆为转述
RCC时钟复位和设置功能的缩写,它可以设置单片机的时钟输入源,以及cpu和
内部总线的时钟频率。在我们之前学过的程序内开头都有rcc的设置程序,接下
来就讲解rcc设置函数的内容从而结束stm32核心板的内容。
内部时钟都是RC,外部时钟都是晶体,高速都是提供系统时钟。
8MHZ的高速内部时钟的通过多路选择器和倍频器达到不同频率的时钟提供给不同的外设流程图。
由于具体设计函数较多不一一列出请大家在之前的文章中找出固件库用户手册进行查看理解。继续看if语句中的第一个语句选择的就是绿色:第三条路线。需要注意区别pll选择器和sw选择器的区别。
第二条语句是设置AHB时钟,因为AHB时钟是其他总线的前端,之后的总线频率都是由AHB分频而来,除了USB所需的时钟频率由图可以看出是通过直接分频后直接过来。
第三四条语句是设置AHB1和AHB2总线时钟,他们也可以设置分频系数,如图所示:
这里设置APB1二分频,APB2不分频。
接下来是内部flash的相关设置,因为内部主频和相关功能的分频不同,flash读写速度也受到一定影响,所以对flash按照相应的评率来设置这里我们的系统主频是72Mhz所以按下图选择。
还有flash的预期缓存模式就是把要读取的数据提前从flash当中读出来到sram当中,当执行语句的时候SRAM中已经有了读取好了的数据。如果没有开启,就需要在命令执行时从flash读取从而拖慢系统运行速度。
此时我们已经配置好了频率,秉着先配置在使用的原则,接下来将选择器打开。
至此单片机的主频时钟源三大 内部总线的分频都已经设置好了,接下来单片机的内部功能就可以使用设置好的时钟了,但是在接下来的程序当中把这行时钟的开启函数都屏蔽掉了,是因为我们当时用到时再去开启例如led初始化程序中,这样的好处就是在不使用相关功能的时候就不会加载相关功能的.c文件也就不会开启相关时钟的rtc设置。
STM32核心板内容完结,继续更新扩展板视频内容。
也许你之前听说过前端组件代码可以运行在浏览器,运行在移动端 App 里面,甚至可...
目录 1、线程的互斥 2、可重入VS线程安全 3、线程的同步 1、线程的互斥 1线程互...
本文实例讲述了Laravel框架集合用法。分享给大家供大家参考,具体如下: 前言 集...
一般在php中会使用fopen进行生成文件,但是当文件名存在中文时保存文件会出现中...
当我们想用document.write()输出换行时,可能会第一时间想到加"\n",但是其实不...
项目的前期为了开发速度会使用单一应用,就是一个 Laravel 框架实现 API 和后台...
复制代码 代码如下: Function getTreeRootId(pNodeId) getSQL = "select note_id...
耗时一周制作的第一人称射击游戏希望能帮助到大家 这里写目录标题 代码 FPS_KeyP...
借鉴自某位大佬不记得了 using System.Collections;using System.Collections.Ge...
本文实例讲述了php实现将数组或对象写入到文件的方法。分享给大家供大家参考,具...