stm32f103 systeminit
更多
在 STM32F103 系列微控制器中,SystemInit() 是 ST 官方提供的系统初始化函数,通常由启动文件(如 startup_stm32f10x_xx.s)中的 Reset_Handler 调用。它的主要作用是初始化芯片的时钟系统和关键外设配置,确保芯片在启动后以正确的时钟频率运行。
主要功能:
-
时钟配置
- 默认使用内部高速时钟(HSI,8MHz)作为系统时钟源。
- 配置 Flash 预取(Prefetch)和等待周期(根据时钟频率自动调整)。
- 可选配置外部时钟(HSE)和锁相环(PLL)以提升系统时钟(最高 72MHz)。
-
中断向量表重定位
- 设置中断向量表的起始地址(默认在 Flash 的
0x08000000)。
- 设置中断向量表的起始地址(默认在 Flash 的
调用时机
- 在系统上电或复位后,
SystemInit()会被自动调用(在进入main()函数之前执行)。 - 用户一般不需要手动调用它,除非需要重新初始化系统时钟。
自定义配置
如果你需要修改默认的时钟配置(例如使用外部晶振 HSE 或超频):
- 在
system_stm32f10x.c文件中找到SystemInit()函数。 - 修改以下宏定义以启用外部时钟和 PLL:
#define SYSCLK_FREQ_72MHz 72 // 目标系统时钟频率 #define USE_HSE // 使用外部晶振 - 调整 PLL 分频系数(例如 HSE 8MHz → PLL 9倍频 → 72MHz 系统时钟)。
注意事项
- 如果使用标准外设库(Standard Peripheral Library),
SystemInit()的实现在system_stm32f10x.c中。 - 如果使用 HAL 库,时钟配置通常在
SystemClock_Config()函数中实现(需手动调用)。 - 默认配置使用 HSI,如需更高性能,必须手动启用 HSE 并配置 PLL。
示例代码(标准库)
void SystemInit(void) {
// 1. 复位 RCC 寄存器到默认值
RCC->CR |= 0x00000001; // 启用 HSI
RCC->CFGR = 0x00000000; // 复位时钟配置
// ... 其他寄存器复位
// 2. 配置时钟
#ifdef USE_HSE
RCC->CR |= 0x00010000; // 启用 HSE
while(!(RCC->CR & 0x00020000)); // 等待 HSE 就绪
// 配置 PLL:HSE 作为输入,9倍频 → 72MHz
RCC->CFGR |= 0x001D0400;
#endif
// 3. 设置 Flash 等待周期
FLASH->ACR |= 0x12; // 2 等待周期(72MHz 时需要)
}
如果需要更详细的时钟配置,可以参考 STM32CubeMX 工具自动生成的代码。
STM32F103VET6
1970-01-01 08:00:00 至 1970-01-01 08:00:00
stm32f103 flash模拟eeprom
STM32F103是意法半导体(STMicroelectronics)推出的一款32位单片机系列,该系列芯片具有高性能和丰富的外设接口,广泛应用于工业控制、消费电子、汽车电子等领域。其中
2024-01-09 11:21:36
学习STM32F103的ADC功能
三勺最近在学习STM32F103的ADC功能,居然连最简单的独立模式的单通道的电压采集都不能实现,这就不能忍了,这是对智商的侮辱。
2023-10-24 16:06:03
7天热门专题
换一换
换一换
- 如何分清usb-c和type-c的区别
- 中国芯片现状怎样?芯片发展分析
- vga接口接线图及vga接口定义
- 芯片的工作原理是什么?
- 华为harmonyos是什么意思,看懂鸿蒙OS系统!
- 什么是蓝牙?它的主要作用是什么?
- ssd是什么意思
- 汽车电子包含哪些领域?
- TWS蓝牙耳机是什么意思?你真的了解吗
- 什么是单片机?有什么用?
- 升压电路图汇总解析
- plc的工作原理是什么?
- 再次免费公开一肖一吗
- 充电桩一般是如何收费的?有哪些收费标准?
- ADC是什么?高精度ADC是什么意思?
- EDA是什么?有什么作用?
- dtmb信号覆盖城市查询
- 苹果手机哪几个支持无线充电的?
- type-c四根线接法图解
- 华为芯片为什么受制于美国?
- 怎样挑选路由器?
- 元宇宙概念股龙头一览
- 锂电池和铅酸电池哪个好?
- 什么是场效应管?它的作用是什么?
- 如何进行编码器的正确接线?接线方法介绍
- 虚短与虚断的概念介绍及区别
- 晶振的作用是什么?
- 大疆无人机的价格贵吗?大约在什么价位?
- 苹果nfc功能怎么复制门禁卡
- amoled屏幕和oled区别
- 单片机和嵌入式的区别是什么
- 复位电路的原理及作用
- BLDC电机技术分析
- dsp是什么意思?有什么作用?
- 苹果无线充电器怎么使用?
- iphone13promax电池容量是多少毫安
- 芯片的组成材料有什么
- 特斯拉充电桩充电是如何收费的?收费标准是什么?
- 直流电机驱动电路及原理图
- 传感器常见类型有哪些?
- 自举电路图
- 通讯隔离作用
- 苹果笔记本macbookpro18款与19款区别
- 新斯的指纹芯片供哪些客户
- 伺服电机是如何进行工作的?它的原理是什么?
- 无人机价钱多少?为什么说无人机烧钱?
- 以太网VPN技术概述
- 手机nfc功能打开好还是关闭好
- 十大公认音质好的无线蓝牙耳机
- 元宇宙概念龙头股一览