STM32—— 嵌入式微控制器入门

1.1 嵌入式系统组成

若一台计算机(及其软件)是大系统的集成部分,且通过特定硬件装置控制或监控该系统,则可称为嵌入式系统。

嵌入式系统的核心架构分为三层,各层组件协同实现系统功能:

  • 硬件层:核心为嵌入式处理器,搭配外设 1、外设 2 等外围设备电路,构成嵌入式计算机系统的硬件基础(类似笔记本电脑主板的核心作用)。
  • 中间层:包含 BSP(板级支持包)和 HAL(硬件抽象层),负责衔接硬件与软件,屏蔽底层硬件差异。
  • 软件层:以嵌入式操作系统为核心,结合各类功能组件(组件 1、组件 2... 组件 n),支撑上层应用实现。

核心公式:嵌入式计算机系统 = 嵌入式处理器 + 外围设备电路

1.2 嵌入式处理器分类

嵌入式处理器按功能、集成度和应用场景,主要分为四大类:

1.2.1 微处理器(MPU)

采用增强型通用微处理器架构,专为嵌入式环境设计,性能对标通用计算机 CPU,但在工作温度、电磁兼容性和可靠性上要求更高。

  • 核心特点
    1. 仅含高性能 CPU 核心,需外部 RAM、存储设备和外设配合使用。
    2. 主频可达几百 MHz 至 GHz 级别,处理能力强,支持复杂计算。
    3. 可运行 Linux、Android、Windows 等完整操作系统,适配图形界面、多媒体流、AI 算法等复杂任务。
    4. 体积和功耗相对较大。
  • 典型产品:NXP i.MX 系列、NVIDIA Jetson 系列(重点用于边缘计算、AI 应用场景)。

1.2.2 微控制器单元(MCU)

俗称 "单片机",将 CPU、RAM(运行内存)、ROM(存储内存)、定时计数器和多种 I/O 接口集成在单一芯片上,是高度集成的嵌入式计算机系统,侧重低功耗和实时性能。

  • 核心特点
    1. 单芯片实现完整微型计算机功能,无需额外外部组件。
    2. 低功耗设计,工作电流从 uA 级到 mA 级,适合电池供电设备。
    3. 存储容量和处理能力弱于 MPU,不支持复杂操作系统。
    4. 成本低廉,最低仅需几元人民币。
  • 应用领域:智能家居设备、家电控制、消费电子、玩具、智能传感器、工业自动化控制、电机控制、医疗设备、可穿戴设备等。
  • 典型产品:80C51、STM32 系列(STM32F103、STM32F407)、Arduino 系列(ATmega328p)、瑞萨 RA 系列、德州仪器 MSP430 系列等。

1.2.3 数字信号处理器(DSP)

专为高速数字信号处理算法设计,采用哈佛架构(程序和数据分开存储),配备专用硬件乘法器,支持并行指令执行和流水线操作,大幅提升数学运算效率,处理速度可达每秒千万次操作。

  • 应用领域:音频处理(编解码、音效、语音识别)、图像处理(增强、滤波、压缩)、通信系统(调制解调、信道编码、4G/5G 基站)等。
  • 典型产品:德州仪器(TI)TMS320 系列,其中 C5000、C6000、C8000 三款处理器占据 5G 通信 DSP 市场的主导地位。

1.2.4 片上系统(SoC)

将多个处理器核心(CPU、GPU、DSP)、存储器、外围功能模块和嵌入式软件集成在单一芯片上,实现系统级功能,集成度极高。

  • 应用领域:智能手机(华为麒麟 990、高通骁龙系列)、平板电脑、智能电视、智能摄像头、安防设备(如海思 Hi3516,用于人脸识别等场景)、大型工厂自动化设备等。
  • 典型产品
    1. 华为麒麟 990(8 核 ARM+16 核 GPU+NPU)。
    2. 高通骁龙系列、苹果 A 系列、三星 Exynos 系列。
    3. 全志、瑞芯微、海思等国产 SoC 产品(多采用台积电工艺制造)。

1.3 ARM 内核与各处理器的关联

ARM 公司于 1990 年在英国剑桥成立,由苹果公司、Acorn 计算机公司、VLSI 技术公司合资创办。其核心业务并非生产实体芯片,而是设计 "处理器内核架构(IP 核)",通过授权模式提供给 ST、NXP、华为、高通等芯片厂商,厂商基于该 "架构蓝图" 搭配自有外设和存储器,生产专属芯片。

1.3.1 关联关系表

处理器类型 与 ARM 架构的关联 核心 ARM 内核系列 典型产品 / 场景
MCU 深度绑定(主流 MCU 均采用 ARM 内核) Cortex-M(M0/M3/M4/M7) STM32、瑞萨 RA、Arduino RP2040
MPU 高度关联(高性能场景主力) Cortex-A(A53/A72/A76) 树莓派 4、NXP i.MX8、工业网关
DSP 弱关联(辅助补充 / 异构配合) Cortex-M4/M7(带 DSP 扩展)、Cortex-A(NEON) 智能音箱(基础音频处理)、麒麟 SoC(ARM + 专用 DSP)

1.3.2 ARM 架构的核心定义

ARM 架构作为 "硬件设计蓝图",不仅定义指令集,还包含三大核心内容:

  1. 内核微架构:CPU 内部运算单元、寄存器、流水线的布局(如三级流水线设计)。
  2. 存储接口规范:支持哈佛架构或冯诺依曼架构的存储控制器设计(注:ARM 是 "指令集架构",负责指令执行;哈佛 / 冯诺依曼是 "存储架构",负责数据读取,二者为搭配使用关系)。
  3. 外设接口标准:明确与外部设备的连接方式和通信协议。

1.3.3 ARM 架构和内核演进及命名规则

架构版本 对应处理器(内核)
ARMv1 ARM 1
ARMv2 ARM 2、ARM 3
ARMv3 ARM6、ARM7
ARMv4 StrongARM、ARM7TDMI、ARM9TDMI
ARMv5 ARM7EJ、ARM9E、ARM10E、XScale
ARMv6 ARM11、ARM Cortex-M
ARMv7 ARM Cortex-A、ARM Cortex-M、ARM Cortex-R
ARMv8 Cortex-A35、Cortex-A50 系列

命名规则:ARM11(基于 ARMv6 架构)之后,内核命名统一以 Cortex 开头,分为三大系列:

  • Cortex-M:面向 MCU 微控制器,侧重低功耗和实时性。
  • Cortex-A:面向高端应用处理器(Application),支持完整操作系统。
  • Cortex-R:面向实时处理器(Real Time),适用于工业机器人等对实时性要求极高的场景。

1.3.4 ARM 内核与芯片厂商的协作模式(以 STM32F4 为例)

  • ARM 公司:负责设计核心部分,包括 Cortex-M4 内核、调试系统、总线架构。
  • 芯片厂商(如 ST 意法半导体):基于 ARM 内核蓝图,自主定义存储器、外设(GPIO、ADC、串口)、I/O 接口、时钟和复位电路等,最终形成完整芯片(如 STM32F4 系列 MCU)。

1.4 STM32F4 系列详解

1.4.1 ST 公司简介

STMicroelectronics(简称 ST,意法半导体)是全球领先的半导体解决方案提供商,于 1987 年由意大利 SGS Microelettronica 和法国 Thomson Semiconducteurs 合并成立,总部位于瑞士日内瓦。公司在全球 35 个国家设有分公司和生产基地,位列半导体行业 "十大厂商",在嵌入式 MCU、功率器件、传感器领域占据核心市场地位。

1.4.2 STM32 产品体系分类

STM32 系列按性能、功耗、功能可分为五大类,各系列对应不同 ARM 内核和应用场景:

大类 系列 内核 特性描述
入门级 MCU G0 Cortex-M0+ 全新入门级 MCU
模数混合型 MCU G4 Cortex-M4 兼具模拟与数字处理能力
基础型 MCU F0 Cortex-M0 入门级基础型 MCU
经典入门 MCU F1 Cortex-M3 经典入门系列,应用广泛
混合信号 MCU F3 Cortex-M4 侧重混合信号处理场景
高性能 MCU F2 Cortex-M4 高性能基础款
高性能 MCU F4 Cortex-M4 带 DSP/FPU,应用广泛(如 STM32F407)
高性能 MCU F7 Cortex-M7 更高主频,适配复杂算法
超高性能 MCU H7 Cortex-M7 超高性能,部分型号为双核(M7+M4)
超低功耗 MCU L0 Cortex-M0+ 超低功耗入门款
超低功耗 MCU L1 Cortex-M3 经典超低功耗系列
超低功耗 MCU L4 Cortex-M4 超低功耗均衡款
超低功耗安全 MCU L5 Cortex-M33 超低功耗 + 高性能 + 安全特性
超低功耗大容量 MCU U5 Cortex-M33 超低功耗 + 高性能 + 大容量 + 安全特性
无线 MCU WB Cortex-M4 + Cortex-M0+ 双核设计,集成 BLE 等短距离无线功能
远程无线 MCU WL Cortex-M4 适配 LoRa 等广域网,支持远程通信
微处理器 MPU MP1 Cortex-A7 + Cortex-M4 双核超高性能,支持 Linux 系统

1.4.3 STM32 命名规则(以 STM32F407VET6 为例)

STM32 的命名由多个字段组成,各字段含义如下:

1.4.4 应用场景

STM32F4 系列在多个领域应用广泛,包括工业控制、智能家居与消费电子、汽车电子(如 ECU 控制器)、物联网与边缘计算、医疗设备等。

1.4.5 STM32F407 核心资源配置

1. 核心性能参数

  • 内核:Cortex-M4(带 FPU 浮点运算单元 + DSP 指令集),支持复杂数学运算和信号处理(如滤波、FFT)。
  • 主频:168MHz,保障高性能运算和多任务、高实时性场景需求。
  • 存储:FLASH 512KB(程序存储)、SRAM 192KB(数据运行存储),满足中大型项目代码存储与数据缓存,无需额外扩展存储。
  • 封装:LQFP100,提供 84 个 IO 引脚,资源丰富,便于外设扩展和焊接调试。
  • 工作电压:3.3V,兼容主流嵌入式供电方案,稳定性高。

2. 关键外设资源

资源类别 具体配置 核心用途
定时器资源 基本定时器 ×2、通用定时器 ×10、高级定时器 ×2 基础时序控制、PWM 输出、电机调速、脉冲测量、高精度电机控制
模拟外设资源 ADC:3 个 12 位精度(18 个通道,支持多通道同步采样);DAC:2 个 12 位精度 高精度模拟信号采集(传感器、模拟量检测);波形生成、电压调节、音频驱动
通信接口资源 USART/UART×6、CAN 总线 ×2(支持 CAN 2.0A/B 协议)、SPI×3、IIC(I2C)×3、USB 接口 ×1(Device+OTG)、以太网接口(10/100M 自适应)、SDIO×1 串口通信、工业 / 汽车总线通信、高速外设扩展、低速外设连接、USB 数据传输、网络通信、SD 卡 /eMMC 扩展
其他功能资源 DMA 控制器 ×2、RTC 实时时钟 ×1、FSMC 灵活静态存储控制器 ×1 外设与存储高速数据传输(降低 CPU 负载)、定时唤醒 / 时间戳记录、外部存储扩展(SRAM、NOR Flash)

3. 总线架构

4.总线分类与核心作用

STM32 的总线体系可分为内核总线外设总线两大类,其中内核总线负责 CPU 与内部存储 / 外设的通信,外设总线则管理不同速率外设的访问。

1. 内核总线(S0、S1、S2)

这三类总线直接与 Cortex-M4 内核交互,是指令和数据传输的核心通道:

总线名称 作用 访问对象
S0(指令总线 I) 内核通过此总线从存储中获取指令 Flash、SRAM1、FSMC(外部存储器)
S1(数据总线 D) 内核通过此总线从存储中读取 / 写入数据 Flash、SRAM1、FSMC
S2(系统总线 S) 访问内部 SRAM、AHB 外设及外部存储器 SRAM1、SRAM2、AHB1 外设、AHB2 外设、FSMC
2. 外设总线(AHB、APB)

外设总线属于高级高性能总线(AHB) 架构的分支,用于管理不同速率的外设访问:

总线名称 类型 作用 典型外设
APB1 低速外设总线 连接对速率要求较低的外设 定时器(TIM2-7)、UART、IIC、CAN 等
APB2 高速外设总线 连接对速率要求较高的外设 GPIO、ADC、SPI、USART(高速)、以太网等
相关推荐
兆龙电子单片机设计2 小时前
【STM32项目开源】STM32单片机物联网门禁控制系统
stm32·单片机·物联网·开源·自动化
云雾J视界3 小时前
C语言位运算深度应用:嵌入式硬件寄存器控制与低功耗优化实践
c语言·stm32·嵌入式硬件·低功耗·数据压缩·寄存器
芋头莎莎3 小时前
MCU单片机驱动WS2812,点亮RGB灯带各种效果
单片机·嵌入式硬件
芋头莎莎5 小时前
STM32利用AES加密数据、解密数据
数据结构·stm32·算法
无垠的广袤5 小时前
【CPKCOR-RA8D1】Home Assistant 物联网 ADC 电压温度计
嵌入式硬件·物联网·智能家居·瑞萨
诸葛务农6 小时前
光电对抗分类及外场静爆试验操作规程
人工智能·嵌入式硬件·分类·数据挖掘
点灯小铭9 小时前
基于单片机的多波形信号发生器设计
单片机·嵌入式硬件·毕业设计·课程设计·期末大作业
SXSBJS_XYT11 小时前
在资源有限的M0单片机上运行RTOS
单片机·rt-thread·rtos
gfanbei15 小时前
ARM V8 Cortex R52 上电运行在什么状态?— Deepseek 解答
linux·arm开发·嵌入式硬件