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小时只采集一次数据,那就快慢无所谓了。这个问题咱们就不深究了。

相关推荐
阿拉斯攀登6 分钟前
51单片机:了解最小核心系统
单片机·嵌入式硬件·51单片机
DIY机器人工房10 小时前
(十三)嵌入式面试题收集:6道
单片机·嵌入式硬件·diy机器人工房
国科安芯10 小时前
国产RISC-V架构MCU在工控系统中的节能性分析
网络·单片机·嵌入式硬件·fpga开发·性能优化·架构·risc-v
夜月yeyue11 小时前
Linux内高端内存
linux·运维·单片机·嵌入式硬件·ci/cd·硬件架构
沉在嵌入式的鱼15 小时前
linux串口对0X0D、0X0A等特殊字符的处理
linux·stm32·单片机·特殊字符·串口配置
学习路上_write15 小时前
AD5293驱动学习
c语言·单片机·嵌入式硬件·学习
影阴15 小时前
存储器和寄存器
stm32·单片机·嵌入式硬件
吃西瓜的年年16 小时前
3. C语言核心语法2
c语言·嵌入式硬件·改行学it
李洛克0716 小时前
RDMA CM UDP 通信完整指南
单片机·网络协议·udp
思茂信息17 小时前
CST电动车EMC仿真——电机控制器MCU滤波仿真
javascript·单片机·嵌入式硬件·cst·电磁仿真