1. 时钟使能配置:
RCC_LSEConfig()、RCC_HSEConfig()、
RCC_HSICmd()、RCC_LSICmd()、RCC_PLLCmd()......
2. 时钟源相关配置:
RCC_PLLConfig()、RCC_SYSCLKConfig()、
RCC_RTCCLKConf().....
3. 分频系数选择配置:
RCC_HCLKConfig()、RCC_PCLK1Config()、RCC_PCLK2Config()......
4. 外设时钟使能:
RCC_APB1PeriphClockCmd(); // APB1线上外设时钟使能
RCC_APB2PeriphClockCmd(); // APB2线上外设时钟使能
RCC_APBPeriphClockCmd(); // AHB线上外设使能
5. 其他外设时钟使能
RCC_ADCCLKConfig(); RCC_RTCCLKConfig();
6. 状态参数获取参数:
RCC_GetClocksFreq();
RCC_GetSYSCLKSource();
RCC_GetFlagStatus();
7. RCC中断相关函数:
RCC_ITConfig()、RCC_GetITStatus()、RCC_ClearITPendingBit()......
实际程序中我们是调用system_stm32f10x.h中的SystemInit();,具体实现可查看SystemInit()。
关键字:STM32 时钟 RCC 配置参考
引用地址:
STM32 时钟RCC相关配置参考stm32f10x_rcc.h
推荐阅读最新更新时间:2024-11-08 04:33
stm32单片机的基本组成是什么
stm32是一款高性能、低成本、低功耗、可裁剪的嵌入式单片机。那么stm32单片机的基本组成是什么呢?下面小编就为大家来介绍一下stm32单片机的基本组成。 大家都知道,单片机是由PC发展来的,优点有高可靠性、高抗干扰性、价格便宜,被广泛的应用在工业控制、医疗器械、信息通信等领域上。 STM32单片机内部由CPU、FLASH、RAM、总线、外设、电源、PLL锁相环和时钟管理器,只有电源不需要提供时钟输入,其他的外设和CPU的工作都需要提供时钟输入。 CPU cpu也叫中央处理器,有着备数据计算和指令执行的作用。 RAM RAM也叫数据存储器、随机存储器,能够可读可写。能够存储一些中间变量,数据丢失。 ROM rom也叫
[单片机]
STM32定时器的TRGO信号
定时器的框图中有一个TRGO信号输出,此信号可以用来触发ADC、DAC、其他定时器等。 此信号怎么产生呢? 要使用 TIM_SelectOutputTrigger(TIM1, TIM_TRGOSource_Update); 函数来选择TRGO信号的事件源,这个函数给TIMx_CR2寄存器的位6到位4赋值,位6到位4是MMS ,描述如下: 如果MMS 值为000:当TIMx_EGR寄存器的UG位有效,就会触发TRGO输出。 如果MMS 值为010:当产生更新事件时,就会触发TRGO输出。 另外: 当配置MMS 值为010:当产生更新事件时,就会触发TRGO输出。还可以配合重复计数寄存器来使用: 即重复多少
[单片机]
stm32位带操作中对内存的浅显理解
基础知识 进制 计算机以二进制代码储存信息,每个二进制数表示一位 (bit),每8个二进制数表示一个字节 (Byte) , 而再往上的KB,就是210倍的字节,总结有以下进制关系。 1 Byte = 8 bit 1 KB = 1024Byte(210=1024) 1 MB = 1024KB 1 GB = 1024MB 1 GB = 230Byte 内存地址 内存地址使用16进制数表示,内存地址只是一个编号表示,一个内存空间,计算机以字节存储数据,所以一个内存地址对应的应该是一个字节(8 bit)的大小,这个之后会详细解释。 这里用32位机的内存做一个图例。32位机的内存地址用8位16进制数表示。 0x00000
[单片机]
STM32入门学习笔记之文件系统FatFs的移植3
21.2.2 ffsystem.c文件的修改 (1)内存分配ff_memalloc void* ff_memalloc( UINT msize ) { return ( void* )mymalloc( SRAMIN, msize ) ; } (2)内存释放ff_memfree void ff_memfree( void* mblock ) { myfree( SRAMIN, mblock ) ; } 21.2.3 exfuns.c与exfuns.h文件的创建 (1)创建exfuns.h文件,并输入以下代码。 #ifndef _EXFUNS_H #define _EXFUNS_H #i
[单片机]
STM32入门学习之EXTI外部中断(STM32F030F4P6基于CooCox IDE)
下面的代码,是把PA0当做一个按键口,芯片内部上拉,按键闭合时,IO口被拉低,触发中断。 #include stm32_lib/inc/stm32f0xx_rcc.h #include stm32_lib/inc/stm32f0xx_exti.h #include stm32_lib/inc/stm32f0xx_gpio.h #include stm32_lib/inc/stm32f0xx_syscfg.h #include stm32_lib/inc/stm32f0xx_misc.h int main(void) { //时钟使能 RCC_AHBPeriphClockCmd(RCC_AHBPeriph_G
[单片机]
STM32软件复位的实现方法
前些天写程序的时候,需要做一个自动复位的功能,也就是当收到外部通讯设备复位指令时,主设备立刻执行复位操作。当时是想到的用看门狗实现。但是觉得似乎不太妥当,因为看门狗的复位是需要一定的时间。而在这段时间内系统还是处于正常运行当中,而且所有中断都会正常响应。这恰好与要实现的功能南辕北辙。需求是当收到复位指令时,系统停止执行后面的所有操作,包含中断响应。所以看门狗无法实现。 我用的是STM32F103芯片,了解这颗芯片能用来复位的只有5种,外部复位、独立/窗口看门狗、软件复位功耗管理。看来我能用的也就只有软件复位了。但是我查了所有STM32F103芯片相关的资料,还是没有找到具体的实现方法,最多是提到过这种复位寄存器SYSRESET
[单片机]
STM32 GPIO 寄存器的配置
配置每组IO口的寄存器:(每一组一套寄存器) 1、两个32位的配置寄存器;GPIOx_CRL,GPIOx_CRH 2、两个32位的数据寄存器:GPIOx_IDR,GPIOx_ODR 3、一个32位置位/复位寄存器:GPIOx_BSRR 4、一个16位的复位寄存器GPIOx_BRR 5、一个32位的锁定寄存器GPIOx_LCKR 详解 : CRL和CRH控制IO口,是四个位控制一个口,所以要两个32位的来控制16个口 1、GPIOx_CRL:端口配置低寄存器: 每个口由四位控制,为MODE+CNF联合配置,具体模式在下图中。(输入要与输入对应,输出也要与输出对应) 具体对应输入输出配置表(对上图的详解): 2、GPIOx_
[单片机]