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

相关推荐
小郭团队27 分钟前
1_4_五段式SVPWM (传统算法反正切+DPWM0)算法理论与 MATLAB 实现详解
嵌入式硬件·算法·硬件架构·dsp开发
XINVRY-FPGA38 分钟前
XCZU47DR-2FFVE1156I XilinxFPGA Zynq UltraScale+ RFSoC
嵌入式硬件·fpga开发·云计算·硬件工程·射频工程·fpga
望云山1901 小时前
ESP32—S3学习--入门五个基础实验
嵌入式硬件·学习
wit_yuan1 小时前
openbmc 支持mctp over pcie(三)(支持作为endpoint)
linux·服务器·嵌入式硬件
小郭团队1 小时前
1_2_五段式SVPWM (传统算法反正切+DPWMmin)算法理论与 MATLAB 实现详解
开发语言·嵌入式硬件·matlab·dsp开发
小郭团队1 小时前
1_3_五段式SVPWM (传统算法反正切+DPWMmax)算法理论与 MATLAB 实现详解
开发语言·嵌入式硬件·matlab·dsp开发
2301_772204281 小时前
51单片机——UART
单片机·嵌入式硬件·51单片机
Zeku1 小时前
Linux应用与驱动开发:mmap和内存映射
stm32·freertos·linux驱动开发·linux应用开发
qq_411262421 小时前
如果 4G 模块的 UART TX 高电平真的是 3.7V,直接接到 ESP32 的 UART RX/GPIO 不建议,存在风险。
单片机·嵌入式硬件
电化学仪器白超1 小时前
计量室电路板长期稳定性自动化测试系统开发与部署
python·单片机·嵌入式硬件·自动化