STM32学习笔记(一)----系统时钟

发布者:创意火舞最新更新时间:2015-10-19 来源: eefocus关键字:STM32  学习笔记  系统时钟 手机看文章 扫描二维码
随时随地手机看文章
        STM32的系统时钟来源可分为三个:HSI(高速内部时钟)、HSE(高速外部时钟)、PLL

(经PLL倍频后的时钟信号)。  

        在设置系统时钟时,要先重置下RCC->CR 及 RCC->CFGR 寄存器,具体可参照STM32

的官方库,里面每个步骤都有详细说明的。下面大概地说一下关于系统时钟选择的设置:

        1)以HSI作为系统时钟来源:            RCC->CFGR   [1:0] SW=00

-----------------------------------------------------------------------------------------------------------------------------------

        2))以HSE作为系统时钟来源:         RCC->CFGR   [1:0] SW=01

-----------------------------------------------------------------------------------------------------------------------------------

        3)以PLL作为系统时钟来源:        (分三种时钟信号输入)

        A、以HSI 2分频作为PLL时钟输入: RCC->CFGR   [1:0] SW=10

                                                                         RCC->CFGR   [16] PLLSRC=0

-----------------------------------------------------------------------------------------------------------------------------------

       B、以HSE 全速作为PLL时钟输入:    RCC->CFGR   [1:0] SW=10

                                                                          RCC->CFGR   [16] PLLSRC=1

                                                                          RCC->CFGR   [17] PLLXTPRE=0

-----------------------------------------------------------------------------------------------------------------------------------

       C、以HSE 全速作为PLL时钟输入:   RCC->CFGR   [1:0] SW=10

                                                                          RCC->CFGR   [16] PLLSRC=1

                                                                          RCC->CFGR   [17] PLLXTPRE=1

        经过以上设置,基本上是设置完了系统时钟的来源,如果设置了是以PLL为系统时钟来

源,则要再通过 RCC->CFGR[21:18] PLLMUL 来选择PLL的倍频系数。设置好之后,就是

ENABLE PLL了:RCC->CR[24] PLLON,至此,系统时钟来源就设置并启动好了,通过读取

RCC->CFGR[3:2]来确认时钟来源是否已生效。(这一步最好在程序中要加上,以免出现系统

时钟未生效而不能正常启动的问题)

        系统时钟启动完后,就可以来设置STM32内设(比如:APB1/APB2/ADC/TIM1……)

RCC->CFGR的总线频率了。

关键字:STM32  学习笔记  系统时钟 引用地址:STM32学习笔记(一)----系统时钟

上一篇:STM32的IO口的8种配置(GPIO)
下一篇:STM32学习笔记----SysTick

推荐阅读最新更新时间:2024-03-16 14:36

stm32利用语音识别与播报智能控制led灯
上次写了一个语音识别的文章,但是那个模块是用串口进行通信的。这次要讲的是另一种识别与播报模块,这种模块相对于上次那种,功能更多,当然价格也更贵。这种识别模块与播报模块都是利用IIC进行传输的,所以本次利用了stm32f103c8t6控制板上面的两个IIC分别是PB6、PB7以及PB10、PB11。本文章主要实现的功能是: 根据说出的指令让识别模块识别到相应的词语后,做出相应的动作,并且利用播报模块说出对应动作是否完成。在这里我只是简单的控制led灯,当然你也可以控制其他东西,如家用电器等等。 其中语音识别模块有三种模式,循环模式:模块时刻处于语音识别状态;口令模式:当检测到口令时候进行语音识别;按键模式:当按下按键后处于语音识
[单片机]
<font color='red'>stm32</font>利用语音识别与播报智能控制led灯
MSP430F5529的IO口管脚的中断学习笔记
非常简单的一个程序,在F5529的开发板上用按键的IO中断控制LED的亮灭: #include int main(void) { WDTCTL = WDTPW + WDTHOLD; // Stop watchdog timer P1DIR |= BIT0; //将LED1对应的IO口P1.0设置为输出 P1OUT &= ~BIT0; //初始化该灯设置为灭 P1DIR &= ~BIT7; //将按键1对应的IO口P1.7设置为输入 P1IFG &= ~BIT7; //初始化清空中断标志位 P1IE |= BIT7; //P1.7中断使能 P1IES |= BIT7; //下降沿产生中断
[单片机]
stm32.cube(六)——HAL.FLASH
一、片内Flash特性 1.1 FLash结构简图 我的开发板是stm32f103xx,所以片内flash主存储器大小128K,单页为1K。不同的芯片flash大小不同,页大小也不同。 主存储器 用来存储Rom程序,烧写的区域。当然也可以存一些其他东西,比如做nvram使用。 信息块 这个区域分两个部分。 存储区,用户不可写区域,用来存储ISP下载时用到的程序。当用ISP模式进行烧写时,自动调用里面的程序下载数据并烧写到flash里。 用户选项字,存储硬件配置信息。某些复用的外设可能在上电复位后就要立即知道它被用作其中哪个用途。 用户选项字默认不可写,它上电自动加锁。只有通过向FLASH_OPTKEYR依次写入约定解锁码KE
[单片机]
从库函数方向入门stm32的个人建议
必备工具:stm32开发板,一本库函数方向的书籍; (1)选定一个开发板后,注意该版对应的stm32型号,一般选F103ZET6,网上资料多,查看它对应的flash的大小,以后开发时会设置编译器用到。 (2)循序渐进地根据书中介绍进行工程的建设(我是使用野火的《stm32库函数开发》),在开始我们要注意其中如core.c,f103.h等等文件的作用,如内核驱动,系统时钟的设置,外设的驱动文件等等这些是那些文件,在以后的工程文件建设中,这些将几乎可以不修改地添加到其他工程文件中,而需要我们写入程序,实现我们想要功能的是如下文件:stm32.it.c:写入中断服务函数;stm32.conf.h:添加需要控制到的外设驱动文件,x
[单片机]
基于STM32设计的动态密码锁
1. 前言 随着人们生活水平的提高及科学技术的发展,个人信息保护显得至关重要,设计了一款智能电子密码锁,以STM32单片机为主控制器,由触摸矩阵键盘、ESP8266、步进电机等模块组成,具有远程控制、随机密码生成等功能。经软硬件测试,系统响应迅速,灵敏度高,实时性好,系统识别准确率高达99%,该系统运行稳定,安全可靠,功耗低及具有较好的扩展性。 当前支持的开锁方式: (1)手机APP远程开锁。支持手机APP远程开锁。手机APP连接上ESP8266创建的WIFI热点和TCP服务器,可以在手机APP上对设备端的RTC时间进行校准,设备唯一ID获取,生成随机开锁密码。 (2)随机密码开锁。手机APP与本地设备采用时间、作为算
[单片机]
基于<font color='red'>STM32</font>设计的动态密码锁
意法半导体和Sensory 开展合作,赋能大众市场嵌入式声控技术应用
意法半导体和Sensory 开展合作,通过STM32Cube 软件生态系统赋能大众市场嵌入式声控技术应用 STM32 MCU搭配 Sensory 的 VoiceHub 技术,简化穿戴设备、物联网和智能家居产品声控用户界面开发 2022 年 6 月 20 日,中国——服务多重电子应用领域、全球排名前列的半导体公司意法半导体(STMicroelectronics,简称ST),与世界排名前列的嵌入式语音识别技术供应商、意法半导体授权合作伙伴 Sensory Inc公司 宣布了一项合作协议,赋能STM32 微控制器 (MCU)用户社区为各种智能嵌入式产品开发直观的语音识别用户界面及产品原型。 该合作项目整合了意法半导体S
[模拟电子]
意法半导体和Sensory 开展合作,赋能大众市场嵌入式声控技术应用
STM32中使用printf打印串口数据
摘要 该方法适用于STM32,实现了使用printf等标准C流函数输出数据的办法,极大的减少了输出串口数据时所需要做的数据处理。 实现原理 在C库中,printf()等输出流函数都是通过fputc()这个函数实现的,所以我们通过重映射的方式,修改这个函数的定义使它输出在STM32的寄存器中,便可以实现使用printf()函数在STM32串口上输出数据的功能。 Keil环境 重映射 在STM32的Keil开发环境中,C的库函数有两种实现方式 使用标准的C函数库 就是我们平常在PC Window平台上用的C库函数,此库的的优点在于实现的功能全面。但是由于这个库基本上是专为PC设计的,故而如果在嵌入式芯片中调用时将会使得工
[单片机]
<font color='red'>STM32</font>中使用printf打印串口数据
STM32 Cotex-M3处理器系列编程】按键灯亮
//分别按下S1~S4,D1~D4分别点亮 #include stm32f10x.h void Delay(unsigned int x); int main(void) { RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC | RCC_APB2Periph_GPIOD | RCC_APB2Periph_GPIOE,ENABLE);//IO口使能设置 GPIO_InitTypeDef GPIO_InitStructure; //定义结构体 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6 | GPIO_Pin_7; //LED管脚
[单片机]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved