STM32修改主频的方法

大家都知道STM32F103C8T6的主频是72M,那怎么样才能在程序中获得这个主频的值呢?怎么样才能更改主频的值呢?

如图找到主频的变量,然后显示这个变量就是显示主频了。

cs 复制代码
#include "stm32f10x.h"                  // Device header
#include "OLED.h"


int main(void)
{
	OLED_Init();       //oled  屏幕初始化
	
	OLED_ShowString(1,1,"Freq:");
	OLED_ShowNum(1,6, SystemCoreClock, 8);  //OLED显示主频数值
	
}

上面是怎么显示主频的方法,下面是怎么更改主频的方法了:

想要修改主频就得修改这些个带有小钥匙的文件,首先要把这些个文件的属性修改了,修改成不是只读的属性,具体的方法就是先在工程文件夹中找到stm32f10x.c这个文件,然后修改它的属性:

按照上面的方法把文件的属性中的只读去掉,就可以了。

依据下方的方法把自己想要的主频的一行解开注释,把72M的一行注释掉,就这样更改了主频。

比如下面我更改了主频为24M的结果就是:

这样主频就更改成了24M了,编译下载后的结果就是:

如果想改成其他的主频,就自行更改就好了。更改主频的好处就是节省电量了,频率降低一半,耗电量也会降低一半的,有充足电源的时候不用考虑,如果是电池供电,那就很有必要了。缺点就是程序运行速度会变慢了。如果有些地方一天24小时只采集一次数据,那就快慢无所谓了。这个问题咱们就不深究了。

相关推荐
Heartache boy3 小时前
野火STM32_HAL库版课程笔记-手动建立工程模板与CubeMX后续用法(重要)
笔记·stm32·单片机·嵌入式硬件
可乐鸡翅好好吃6 小时前
UUID----私有服务与公有服务
嵌入式硬件
Wave8457 小时前
Freertos中PendSV与sysTick
单片机·嵌入式硬件
jghhh017 小时前
带红外抄板和LCD显示的单相电能表设计
stm32·单片机·嵌入式硬件
wggmrlee8 小时前
GD32 vs STM32
单片机·嵌入式硬件
czhaii8 小时前
STM32 F103 Altium一键下载PCB图
stm32·单片机·嵌入式硬件
雾削木9 小时前
基于STM32F411RET6 + 双路MB85RS2MT的铁电U盘
stm32·单片机·嵌入式硬件
笨笨饿9 小时前
33_顺序表(待完善)
linux·服务器·c语言·嵌入式硬件·算法·学习方法
点灯小铭9 小时前
基于单片机的多路温湿度采集与WIFI智能报警控制系统设计
单片机·嵌入式硬件·毕业设计·课程设计·期末大作业
嵌入式×边缘AI:打怪升级日志9 小时前
MX6ULL 的 GPIO 操作方法(保姆级教程)
stm32·单片机·嵌入式硬件