STM32 缺一不可的最基础的初始化部分

STM32 缺一不可的最基础的初始化部分

初始化部分 必须初始化 作用 关键配置
系统时钟(RCC)​ 所有STM32程序的基础 为CPU、总线和外设提供时钟信号 1.选择时钟源(HSI/HSE/PLL) 2.配置系统时钟频率(如168MHz) 3.使能外设时钟(如GPIO、USART等)
通用输入输出(GPIO​) 只要使用外设或控制引脚 配置引脚模式 (输入/输出/复用功能) 1.引脚模式 2.上下拉电阻 3.速度(低速/高速,影响信号边沿)
中断控制器(NVIC) 如果使用中断(如USART 接收、定时器中断) 管理中断优先级和使能 1.设置中断优先级组 2.使能特定中断通道
SysTick定时器
电源配置(PWR) 低功耗模式需要, 但默认无需配置
外设初始化: ​USART/UART ​SPI/I2C ​定时器(TIM) ​ADC/DAC ... 根据项目需求选择

总结:
必须初始化: 系统时钟(RCC)GPIO中断(若使用)。
推荐初始化: SysTick( 用于HAL库延时/为操作系统提供系统时钟节拍心跳 )。
​按需初始化: USART、SPI、定时器等外设。

相关推荐
蓝斯49713 小时前
从.到实现一个Windows上的虚拟hid键盘设备
windows·单片机·计算机外设
熙芯XiChip14 小时前
硬实时与软实时RTOS核心区别
嵌入式硬件
伟大的前程14 小时前
unsigned int 定义的变量 在 电脑的 64 位系统中 和 32 位 cortex-m0 和 8 位的 51 单片机
单片机·嵌入式硬件
小渔村的拉线工15 小时前
1.HPM6E80 解析芯片整体工作原理和存储架构
单片机·嵌入式硬件·mcu·架构·hpm6e80
熙芯XiChip16 小时前
CAN与CANopen的本质区别
单片机
lilihewo16 小时前
Altium Designer 封装库的创建(分享pcb 3D封装库)
嵌入式硬件·51单片机
神罚天下ET17 小时前
典型arm位单片机启动流程(从上电到main.c)
c语言·arm开发·单片机
碧海银沙音频科技研究院18 小时前
蓝牙耳机使用WSDF5361锂保芯片进入船运模式实现方法
嵌入式硬件·算法
Zevalin爱灰灰18 小时前
模拟信号链电路——基于TL431的电压基准电路
单片机·嵌入式硬件
csdn杰哥19 小时前
瑞萨单片机开发教程[二十七] DTC 外部中断触发传输实验
单片机·嵌入式硬件·mongodb·瑞萨·ra6m5