STM32系列微控制器(MCU)的主系统架构基于ARM Cortex-M内核,其核心功能单元可分为以下几个关键模块:
1. 处理器核心(Cortex-M Core)
2. 时钟系统(Clock Tree)
3. 电源管理(Power Management)
4. 存储器(Memory)
Flash存储器:
SRAM:
EEPROM(部分型号支持):非易失性数据存储。
5. 总线与互联矩阵(Bus & Interconnect)
6. 外设接口(Peripherals)
通用外设:
GPIO:可配置为输入/输出、中断触发、复用功能(如I2C、SPI)。
定时器(TIM):PWM生成、输入捕获、编码器接口。
通信接口:USART/UART、SPI、I2C、CAN、USB、以太网(部分高端型号)。
ADC/DAC:模拟信号采集与输出(12位分辨率常见)。
高级外设:
7. 启动与复位系统
8. 调试与跟踪接口
STM32主系统协作示例
程序执行:CPU从Flash读取指令,通过AHB总线访问SRAM数据。
中断响应:外设(如定时器)触发中断,NVIC暂停当前任务,跳转到中断服务程序。
外设操作:ADC通过DMA将数据直接传输到SRAM,无需CPU干预。
低功耗模式:进入停机模式时,关闭CPU时钟,仅保留必要外设运行。
关键差异点(不同系列)
入门级(如STM32F0):简化时钟树,外设较少。
高性能(如STM32H7):双核架构(Cortex-M7+M4)、更大存储、高速外设(如千兆以太网)。
无线系列(如STM32WB):集成蓝牙/Wi-Fi射频模块。