嵌入式历史与生态
-
- 嵌入式历史与生态核心逻辑
-
- 1.1 计算机发展的底层驱动力
- 1.2 军转民
- 1.3 摩尔定律
- 1.4 通用与专用计算机
- 1.5 嵌入式系统为什么叫"嵌入式"
-
- 认识计算机
-
- 2.1 常见计算机形态
- 2.2 单片机 vs 嵌入式系统
- 2.3 嵌入式系统技术方向
-
- 发展生态
-
- 3.1 需求拉动产量
- 3.2 ARM发展史与商业模式
- 3.3 SoC 片上系统
- 3.4 ARM版图扩张
- 3.5 意法半导体(ST)
- 3.6 MCU
- 3.7 STM32
- 3.8 MCU选型:STM32F103ZET6
- 3.9 MCU产品化
-
- STM32 文档与社区生态
-
- 4.1 文档化逻辑
- 4.2 核心文档
- 4.3 常见文档分类
-
- STM32 开发工具链
-
- 5.1 裸机开发
- 5.2 STM32工具链选择
- 5.3 推荐工具链各工具作用
- 5.4 HAL库入门说明
-
- 扩展:其他常见单片机(了解)
1. 嵌入式历史与生态核心逻辑
1.1 计算机发展的底层驱动力
从二战结束之后,世界格局进入美苏冷战阶段,苏联1991 年解体,但是斗争一直在进行。
斗争体现在各个方面,政治、军事、文化、科技等。而科技发展的原始动力,就是因为有斗争。所以你应该听过军备竞赛和科技竞赛这样的说法。
计算机就是在这样的背景下诞生和发展的。
核心结论:计算机发展的底层驱动力是国家间斗争。
1.2 军转民
早期新科技多由国家主导,优先用于军工 。
为保持技术领先,必须让科技发展可持续,因此需要"军转民 ",增加政府收入增长点。
典型军转民产品:互联网、GPS/北斗、微波炉、计算机等。

1.3 摩尔定律
集成电路上可容纳的晶体管数量 ,约每18-24个月翻一番 。
意义:为计算机小型化提供了可能。
1.4 通用与专用计算机
计算机按应用场景可分为三类:
| 类型 | 特点 | 典型代表 |
|---|---|---|
| 通用计算机 | 一台机器能干多种事,功能由软件决定 | PC、笔记本 |
| 超级计算机 | 解决人类级大规模计算难题 | 超算中心 |
| 专用计算机(嵌入式系统) | 为特定功能而生,强调低功耗、实时性、稳定性 | 空调、冰箱、无人机、汽车ECU等 |
核心结论:嵌入式系统诞生的目的是低成本解决特定领域问题。
1.5 嵌入式系统为什么叫"嵌入式"
嵌入式系统是被"嵌入"到更大设备或系统中的专用计算机,不是独立通用计算机。
特点:
不是独立产品,而是产品的"大脑"或"控制器"
藏在设备内部,用户通常看不到
功能单一且固定,软硬件高度定制
实时性强:必须在规定时间内响应
资源受限:内存可能只有几KB到几百KB
低功耗、低成本
核心结论:通用计算机是"站出来让你用的",嵌入式是"蹲在里面替你干的"。
2. 认识计算机
2.1 常见计算机形态
个⼈电脑PC(台式机/笔记本):通用计算机,生产力工具。
手机/平板:算力大幅提升,但受软件生态限制,还不能完全替代PC生产力。
服务器:高性能通用计算机,C/S或B/S架构的核心,提供高算力与存储。
单片机(MCU):微型控制单元,性能低、成本低,针对特定场景解决特定问题。
2.2 单片机 vs 嵌入式系统
单片机(MCU):是构建嵌入式系统的核心硬件芯片。
嵌入式系统:是完整概念系统,包含MCU、电路、传感器、软件等。
类比:单片机(MUC)是"老板",嵌入式系统是"公司";处理器与手机的关系类似。
2.3 嵌入式系统技术方向
嵌入式系统按核心处理器/计算架构可分为4个方向:
| 方向 | 核心特点 | 典型应用 |
|---|---|---|
| MCU | 实时、低功耗、低成本,裸机或RTOS | 家电、工业控制、汽车电子、物联网终端 |
| 应用处理器 | 高性能,运行Linux/Android,强调高算力 | 手机、平板、车机、边缘计算网关 |
| FPGA | 硬件可重构,并行执行,纳秒级延迟 | 通信、视频处理、工业控制、AI加速 |
| DSP | 数字信号处理优化,单周期乘加运算 | 音频处理、电机控制、通信信号处理 |
多技术融合趋势: 实际复杂系统常将MCU、应用处理器、FPGA、DSP组合使用,如 FPGA+CPU、MCU+DSP 等。
核心结论:MCU开发偏软件方向,后续学习聚焦MCU。
3. 发展生态
3.1 需求拉动产量
Intel 芯⽚+ PC个人电脑:芯片依附于终端产品,PC起量带动Intel发展,形成"Wintel"联盟。
ARM芯片 + 手机:ARM以低功耗优势切入,智能手机时代出货量超越Intel。
核心结论:新需求产生新设备,新设备拉动芯片需求。
3.2 ARM发展史与商业模式
ARM不制造芯片,只设计CPU IP核 ,通过IP授权和收取版税盈利。
这种模式让ARM成为所有芯片公司的"朋友",最终成为基础平台。
什么是IP核?
IP = Intellectual Property,知识产权核。ARM卖的不是实体芯片,而是受法律保护的芯片设计使用权。
3.3 SoC 片上系统
SoC(System on a Chip):将CPU、GPU、内存控制器、NPU、ISP、DSP、接口控制器等集成到单颗芯片上。
⼿机体积⼩,电池容量受限,对性能和功耗极度敏感,那么必须把所有核⼼芯⽚( CPU、GPU 、内存控制器等)从"主板上分散"变成"⼀个硅⽚上集成",这就是 SoC 的本质。
集成SoC本质就是在追求:⽤⼾⽤得爽,⼚商造得省
CPU是SoC的一部分,SoC = CPU + 其他功能模块。
集成好处:功耗低、体积小、带宽高、成本低、可靠性高。
手机/嵌入式主流是ARM架构SoC,PC主流是x86 CPU。
注意:芯⽚不仅仅指的是 CPU 这类逻辑类芯⽚,还有存储类芯⽚,接⼝类芯⽚,模拟类芯⽚,包括各种传感器等都属于芯⽚范畴。
3.4 ARM版图扩张
ARM 将业务版图扩张到了以下四个关键领域:
移动计算(基本盘),汽⻋电⼦(新增⻓极),服务器与数据中⼼(⾼端突破),AIoT / 物联⽹(⼴阔蓝海)。
为了满⾜不同领域,不同需求的场景, ARM 便有了不同种类的 CPU IP 核的设计⽅案。
ARM为不同应用场景提供不同CPU IP核:
| 系列 | 定位 | 应用场景 |
|---|---|---|
| Cortex-X | 极致性能 | 高性能旗舰设备 |
| Cortex-A | 应用处理器 | 运行复杂OS(Linux/Android) |
| Cortex-R | 实时处理器 | 对响应时间严格要求的系统 |
| Cortex-M | 微控制器 | 小、低功耗、资源受限设备 |
核心结论:未来主学Cortex-M系列。
访问armchina.com (安谋科技(Arm China)的官网页面)

3.5 意法半导体(ST)
ST从ARM购买Cortex核心IP,集成设计并封装为标准化MCU(最著名的是STM32系列),卖给终端公司。
ST做得早、市场占有率高、生态完整,后来者多选择与STM32兼容。
核心结论:学习MCU从STM32开始是主流选择。
3.6 MCU
MCU = Microcontroller Unit,微控制单元,又称单片机 。
内部集成:CPU内核、Flash/RAM、定时器、ADC、串口等。
MCU与SoC的关系:MCU可以看作一种功能特定、高度集成的SoC。SoC 是⼀个更宽泛的概念,⽽ MCU 是这个概念下⾮常经典的⼀个分⽀。
为什么MCU会存在?
物理世界中有海量控制任务(家电、电机、传感器等),要求极低的成本、功耗和硬实时响应。通用处理器无法低成本兼顾这些,只有专用MCU 才能成为最优解。
核心结论:MCU是为低成本实时控制而生的专用计算机。
3.7 STM32
STM32 = ST + M(微控制器)+ 32(32位),意法半导体生产的32位MCU系列总称 。 MCU 就相当于 "⼿机",那么 STM32 就相当于 "华为⼿机"
STM32 不是⼀个单⼀的芯⽚,⽽是⼀个庞⼤的家族。它的子系列定位:
| 子系列 | 定位 |
|---|---|
| F | Foundation,基础/通用 |
| G | General-purpose,主流高性价比 |
| L | Low-power,低功耗 |
| U | Ultra-low-power,超低功耗 |
| H | High-performance,高性能 |
其他还有无线系列WB/WL、边缘AI系列N6、MPU混合系列MP1/MP2。
学习一款STM32后,其他型号开发大同小异。
3.8 MCU选型:STM32F103ZET6
STM32F1系列2007年发布,终结了8位/16位MCU的统治地位。
STM32F103ZET6 的 CPU 内核是:ARM Cortex-M3 。
它属于 STM32F1 系列 ,最高主频 72 MHz。

选择STM32F103ZET6的原因?
最主流,学习资料最多
引脚多,一块板子能解决几乎所有的入门问题
访问www.stmcu.com.cn (意法半导体(ST)中文官网)可查看全部STM32/STM8产品以及其子系列。

3.9 MCU产品化
终端产品公司基于MCU设计产品 主板:原理设计 → PCB设计 → 打样焊接调试 → 量产。
培训机构/开发板公司也基于MCU制作教学板 。

CPU、MCU、板子三者的关系?
ARM公司提供CPU IP核 → ST等厂商制成MCU → 终端/机构设计成板子/产品。(CPU在MCU内部,MCU焊接在板子上)
访问嘉⽴创官⽹:**https://www.jlc.com/\*\*或者
⽴创商城官⽹:https://www.szlcsc.com/

4. STM32 文档与社区生态
4.1 文档化逻辑
产业分工产生知识壁垒,文档打破知识壁垒。
阅读文档是嵌入式工程师的必然学习过程。
4.2 核心文档
| 提供方 | 文档 | 用途 |
|---|---|---|
| ARM | 技术参考手册 | 偏硬件设计,普通开发者通常不直接看 |
| MCU厂商 | 数据手册 | 芯片体检表,引脚/电压/地址,硬件工程师画板 |
| MCU厂商 | 参考手册 | 操作说明书,寄存器位含义,软件工程师写驱动 |
| 板级设计公司 | 原理图 | MCU引脚与外设连接关系,开发参考 |
我们最关心文档:STM32《参考手册》 + 《嵌入式板原理图》。
4.3 常见文档分类
| 文档类型 | 核心内容 | 主要使用者 |
|---|---|---|
| 数据手册 Datasheet | 物理规格、引脚、电气特性、封装 | 硬件工程师选型/画原理图 |
| 参考手册 Reference Manual | 外设功能、寄存器地址与位含义 | 软件工程师写驱动 |
| 勘误手册 Errata Sheet | 芯片已知问题与规避方案 | 调试时查阅 |
| 编程手册 Programming Manual | 内部Flash操作指南 | 底层工程师/IAP(在应用内更新程序)/存参数 |
| 应用笔记 Application Note | 特定主题实战教程 | 实现特定功能时查阅 |
| 用户手册 User Manual | 开发板操作指南或库函数API | 使用开发板/库时查阅 |
| 内核文档(ARM) | Cortex-M内核编程模型(NVIC/SysTick等) | 操作CPU内核寄存器时查阅 |
5. STM32 开发工具链
5.1 裸机开发
裸机开发:在没有操作系统支持下,直接在MCU上编写程序。
STM32开发过程

5.2 STM32工具链选择
常见组合:
Keil MDK + 标准外设库(SPL)------ 官方已弃用,不建议。
Keil MDK + STM32CubeMX + HAL库 ------ Keil编写代码体验差。
C语言 + Keil MDK + VSCode + STM32CubeMX + HAL库 ------ 企业常用Keil,VSCode补足编辑体验,推荐采用。
STM32CubeIDE + HAL库 ------ 集成化太高,不利于学习,暂不建议。
IAR + STM32CubeMX + HAL库 ------ 无社区版、授权贵,不适合新手。
5.3 推荐工具链各工具作用
| 工具 | 公司 | 主要作用 |
|---|---|---|
| Keil MDK | ARM | 编译、链接、调试,生成机器码 |
| VSCode | 微软 | 现代化代码编辑器,通过插件扩展开发环境 |
| STM32CubeMX | ST | 图形化配置引脚、时钟,自动生成初始化代码 |
| HAL库 | ST | 硬件抽象层API,屏蔽寄存器操作,提升可移植性 |
5.4 HAL库入门说明
标准库已淘汰,手写配置仅出现在维护老项目中。
STM32CubeMX + HAL库自动生成配置代码 (非业务代码),提高开发效率。
学习方式:通过阅读HAL库生成的源码理解配置,避免图形化界面导致理解成本提高。
6. 扩展:其他常见单片机(了解)
- 51单片机(Intel 8051架构):经典8位MCU,如STC89C52;曾统治市场20年,现多用于低端遥控器、温度计等。
- MSP430:TI 16位MCU,主打低功耗,已基本退出主流。
- GD32:兆易创新,兼容STM32,成本低20%-30%,学会STM32自然就会。
- ESP32:乐鑫科技,内置Wi-Fi/蓝牙,适合物联网,支持ESP-IDF/Arduino/MicroPython等,市场份额增长快。
- 树莓派:卡片计算机,运行Linux/Android,DIY常用,企业级开发受成本功耗限制。
写在最后:嵌入式系统本质上是一种专用计算机,其核心特征在于实时性、资源受限以及低功耗和低成本设计。ARM公司通过IP授权模式提供Cortex-M等处理器内核,而意法半导体(ST)基于这些内核设计并制造出STM32系列MCU,成为嵌入式开发的主流选择。因此,学习嵌入式的一条清晰主线是:先建立历史与生态的宏观认知,理解计算机的分类与定位,再聚焦于MCU及STM32的具体知识,进而学会查阅参考手册和原理图,最后掌握完整的开发工具链使用。
在后续的学习中,我们将以STM32F103ZET6为核心硬件,结合《参考手册》和《原理图》进行开发,工具链采用Keil MDK + VSCode + STM32CubeMX + HAL库的组合。如果小伙伴们有不懂的地方,欢迎单独私信或在评论区留言,我们一起交流进步💪
