Embedded
Roadmap

嵌入式系统工程学习路线图 · 中文参考手册



HW0% BD0% SW0% SS0% TOTAL0% REQ0% POS-- NEXT--
MODE TYPE QUAL TYPE / QUAL 只过滤资源清单

What is an embedded system? 按 ISO/IEC/IEEE 24765 标准的说法,嵌入式系统是“作为更大系统的一部分、并承担该系统部分功能需求的计算机系统”——飞机上的航电、地铁里的控制器都是例子。它的软硬件都为特定功能做了裁剪与优化,至少包含一颗微控制器、微处理器或数字信号处理器,并在可靠性、成本、体积与功耗之间锱铢必较。

Elecia White 在《Making Embedded Systems》里给出更简洁的版本:嵌入式系统是“为其应用场景专门打造的计算机化系统”。它通常对用户隐形:微波炉的控制器、汽车的发动机管理单元、防抱死刹车——你每天都在用几十台计算机,却从未见过它们的界面。

本手册基于 m3y54m 的开源路线图整理翻译而成。原图把这门手艺划成三大领域——硬件、软件与软技能,并给每个知识点标注了优先级;本页保留原图结构,把两框交叠的地带单列成“软硬件交界”,并加上了可勾选的进度仪表与每组的自测问题。

CPU CORE PIN 1 MARK FLASH SRAM GPIO PORT
FIG_001[ MICROCONTROLLER / TOP VIEW ]© 1986

MANUAL使用说明 HOW TO USE


每个知识点都带三样东西:一个复选框、一枚优先级标签、一份可展开的资源清单。优先级严格照搬原图的三档配色,翻译如下:

资源条目前的机器标记表示类型与质量:BOOK 书籍、VIDEO 视频或课程、ART 文章、LINK 站点或工具、AUDIO 音频;EASY 表示入门友好(原仓库的“婴儿”标记),GEM 表示公认的经典权威(原仓库的“宝石”标记)。没有先验知识时先挑 EASY,想吃透一个主题时再啃 GEM。

勾选状态保存在浏览器 localStorage 里——只存在你这台机器上,换浏览器不同步,清缓存会丢失;顶部仪表条的 RESET 可一键清空。POS 读数按原图箭头顺序推算你的“当前位置”:找到第一个必修项尚未全部勾完的知识组;NEXT 列出该组还差的必修项。软技能贯穿全程,不参与推算。

仪表条第二行是筛选器:REQ ONLY 把整本手册收拢成必修主干,适合起步阶段减少干扰;TYPE 与 QUAL 按类型或质量过滤所有资源清单——比如只看 EASY,就得到一条纯入门书单。左侧浮动目录随滚动高亮当前章节,右侧数字是每组的勾选进度。

WARNING · 原作者的警告

没有必要读完这里的每一本书、每一篇文章、每一个视频——真要那么做可能得花上好几年,只会让你疲惫失望。对必修主题建立基本理解就足够;很多资源只作参考,用到再查。当然,投入学习与项目的时间越多,功力自然越深。

原版大图已嵌入下文,点击即可全屏缩放查看;最新版本见 GitHub 仓库

PATH推荐学习顺序 THE RECOMMENDED PATH


原图的虚线箭头给出一条双起点的路径:从 START 出发,电子学与编程基础两条腿同时迈——硬件这条腿走向测试仪器,软件这条腿走向 C 语言;两条腿在微控制器与 RTOS 处会合,然后依次踏过接口协议、调试、构建与版本控制、测试。此后的安全、物联网、边缘 AI、GUI、AUTOSAR、FPGA 等灰色方向,按你的行业目标自选。

岗位侧重决定你在每一域的用力程度:Embedded Software / Firmware / Embedded Linux 工程师以软件为重,Embedded Hardware / Hardware Design 工程师深耕电子学,而 Embedded Systems Engineer 通常要求软硬兼通。同一职位在不同公司的要求也可能大不相同——把路线图当地图用,而不是当课表背。

右侧竖线是第五个维度:六项软技能与 C 语言同为黄色必修,但它们不属于任何一站,而是所有站点的背景音。

START 01 电子学ELECTRONICS 02 编程基础FUNDAMENTALS 03 测试仪器TEST EQUIPMENT 04 编程语言C FIRST 05 微控制器MCU PERIPHERALS 06 操作系统RTOS BASICS 07 接口与协议UART / I2C / SPI 08 调试JTAG / GDB 09 构建与版本控制GCC / MAKE / GIT 10 测试TDD / CI SOFT SKILLS 软技能贯穿全程 此后按行业选修: 安全 / IOT / EDGE AI / GUI / AUTOSAR / FPGA / DSP / 控制
FIG_002[ RECOMMENDED PATH / PER ORIGINAL ARROWS ]© 1986

MAP原版大图 THE ORIGINAL MAP


这是 Meysam Parvizi 绘制的原版路线图(V1.2.3 (2023-12-23))。黄色为必修、橙色为建议、灰白为可选,虚线箭头即上一节“推荐学习顺序”的出处。点击图片全屏查看:滚轮缩放、拖拽平移、双击复位、ESC 退出,可逐个节点与本手册对照勾选。

Embedded Systems Engineering Roadmap 原版路线图大图
FIG_003[ THE ORIGINAL MAP / V1.2.3 (2023-12-23) ]© MEYSAM PARVIZI / CC BY-SA 4.0

LIVE进度总览 PROGRESS OVERVIEWSYNCED WITH YOUR CHECKBOXES


下图按本手册四部结构重绘:每个小块是一个知识组,蓝色填充随勾选进度增长,点击任意块直接跳转到对应章节。它和顶部仪表条读的是同一份本地存档。

PART 0 起步 GETTING STARTED 0.1 先跑起来0.1 先跑起来 0.2 会搜索,会提问0.2 会搜索,会提问 0.3 Arduino 之门0.3 Arduino 之门 0.4 课程与频道0.4 课程与频道 0.5 网站、社区与职业0.5 网站、社区与职业 0.6 开发环境0.6 开发环境 PART 1 硬件 HARDWARE 1.1 电子学1.1 电子学 1.2 测试仪器1.2 测试仪器 1.3 原型制作1.3 原型制作 1.4 FPGA 开发1.4 FPGA 开发 PART 2 软硬件交界 THE HW/SW BOUNDARY 2.1 微控制器2.1 微控制器 2.2 接口与协议2.2 接口与协议 2.3 存储与文件系统2.3 存储与文件系统 2.4 硬件仿真2.4 硬件仿真 2.5 传感器与执行器2.5 传感器与执行器 2.6 数字信号处理2.6 数字信号处理 2.7 控制理论2.7 控制理论 PART 3 软件 SOFTWARE 3.1 编程基础3.1 编程基础 3.2 编程语言3.2 编程语言 3.3 操作系统3.3 操作系统 3.4 调试3.4 调试 3.5 构建系统3.5 构建系统 3.6 版本控制3.6 版本控制 3.7 开发流程模型3.7 开发流程模型 3.8 测试3.8 测试 3.9 嵌入式安全3.9 嵌入式安全 3.10 嵌入式 GUI3.10 嵌入式 GUI 3.11 物联网3.11 物联网 3.12 边缘 AI3.12 边缘 AI 3.13 AUTOSAR3.13 AUTOSAR PART 4 软技能 SOFT SKILLS 4.1 六项核心软技能4.1 六项核心软技能

INDEX目录 TABLE OF CONTENTS131 CHECKPOINTS · 793 RES


  1. PART 0 · 起步 GETTING STARTED
  2. 0.1 先跑起来 START SMALL1 PTS · 11 RES
  3. 0.2 会搜索,会提问 SEARCH & ASK11 RES
  4. 0.3 Arduino 之门 THE ARDUINO GATE6 RES
  5. 0.4 课程与频道 COURSES & CHANNELS13 RES
  6. 0.5 网站、社区与职业 SITES & CAREER20 RES
  7. 0.6 开发环境 TOOLING11 RES
  8. PART 1 · 硬件 HARDWARE
  9. 1.1 电子学 ELECTRONICS5 PTS · 32 RES
  10. 1.2 测试仪器 USING TEST EQUIPMENT3 PTS · 7 RES
  11. 1.3 原型制作 PROTOTYPING SKILLS4 PTS · 34 RES
  12. 1.4 FPGA 开发 FPGA DEVELOPMENT1 PTS · 7 RES
  13. PART 2 · 软硬件交界 THE HW/SW BOUNDARY
  14. 2.1 微控制器 MICROCONTROLLERS11 PTS · 63 RES
  15. 2.2 接口与协议 INTERFACES & PROTOCOLS34 PTS · 114 RES
  16. 2.3 存储与文件系统 MEMORY & FILE SYSTEMS4 PTS · 21 RES
  17. 2.4 硬件仿真 SIMULATION / EMULATION3 PTS · 19 RES
  18. 2.5 传感器与执行器 SENSORS & ACTUATORS2 PTS · 16 RES
  19. 2.6 数字信号处理 DIGITAL SIGNAL PROCESSING2 PTS · 14 RES
  20. 2.7 控制理论 CONTROL THEORY3 PTS · 14 RES
  21. PART 3 · 软件 SOFTWARE
  22. 3.1 编程基础 PROGRAMMING FUNDAMENTALS5 PTS · 31 RES
  23. 3.2 编程语言 PROGRAMMING LANGUAGES6 PTS · 72 RES
  24. 3.3 操作系统 OPERATING SYSTEMS16 PTS · 107 RES
  25. 3.4 调试 DEBUGGING3 PTS · 16 RES
  26. 3.5 构建系统 BUILD SYSTEM4 PTS · 20 RES
  27. 3.6 版本控制 VERSION CONTROL2 PTS · 3 RES
  28. 3.7 开发流程模型 SDLC MODELS2 PTS · 8 RES
  29. 3.8 测试 TESTING4 PTS · 42 RES
  30. 3.9 嵌入式安全 EMBEDDED SECURITY3 PTS · 30 RES
  31. 3.10 嵌入式 GUI EMBEDDED GUI1 PTS · 4 RES
  32. 3.11 物联网 IOT2 PTS · 5 RES
  33. 3.12 边缘 AI EDGE AI3 PTS · 17 RES
  34. 3.13 AUTOSAR AUTOSAR1 PTS · 7 RES
  35. PART 4 · 软技能 SOFT SKILLS
  36. 4.1 六项核心软技能 THE SIX SKILLS6 PTS · 2 RES
展开 / 收起全部资源清单
PART 0 / GETTING STARTED

起步 GETTING STARTED


面对一整张密密麻麻的路线图,最常见的错误是打算从第一页啃到最后一页。原作者的建议恰恰相反:如果你感到无从下手,先做几个简单的入门项目热身——学嵌入式需要时间与耐心,一时看不懂很正常,动手做下去,理论自然会在项目里找上门来。

0.1先跑起来 START SMALL


动手做项目是最有效的学习方式:一个看似简单的小项目,往往比几个小时漫无目的的阅读教给你更多。不要一上来就挑战复杂系统,从点亮一颗 LED、读一个传感器这样的小目标开始;在真实项目里被问题卡住时,再回头查书、查课程,理解会深刻得多。

本组通用资源 · 11
  • 建议

    NOTE: 本手册添加的检查点,原图未单列

0.2会搜索,会提问 SEARCH & ASK


卡住是这个行业的常态。先用搜索引擎找答案;搜不到再问 AI 助手——注意 AI 可能一本正经地答错,重要结论务必用可靠来源核实;仍然解决不了,就去 Electrical Engineering Stack Exchange 或 r/embedded 向真人提问。

本组通用资源 · 11

0.3Arduino 之门 THE ARDUINO GATE


如果完全没有嵌入式编程背景,Arduino 的板子和库是最好的起点。但要清楚它的边界:多数 Arduino 库为教学而生,并未按工业标准优化;Arduino Core 替你包办了大量底层硬件操作——而那些恰恰是职业嵌入式工程师必须亲手掌握的。想走向专业,最终要能熟练使用芯片厂商认可的 SDK:CMSIS、STM32Cube、ESP-IDF 等。

本组通用资源 · 6

0.4课程与频道 COURSES & CHANNELS


YouTube 就是一所大学:嵌入式领域有海量免费的优质内容;Coursera 与 edX 上有出色的免费课程,Udemy 有一些高质量的付费选择。挑一两个跟完,比收藏二十个吃灰有用。

本组通用资源 · 13

0.5网站、社区与职业 SITES & CAREER


收藏几个常读的教育站点,胜过无数次临时搜索;行业动态与求职信息也值得保持关注,让学习始终对准岗位需求。

本组通用资源 · 20

0.6开发环境 TOOLING


厂商 IDE(Keil、IAR、STM32CubeIDE 等)是行业标配;VS Code 加插件是现代化的替代方案;PlatformIO 让个人小项目免去繁琐的工具链配置,适合快速起步,但在工业大型项目中尚未普及。

本组通用资源 · 11
PART 0 SUMMARY · 本部小结
  • 建议0 / 1
PART 1 / HARDWARE

硬件 HARDWARE


“Hardware is hard!”——但这正是嵌入式与纯软件开发的分水岭。原图的 START 箭头从这里进入:数学、电路、电子学、数字设计、计算机体系结构,这条链构成你读懂数据手册与原理图的底层能力。

1.1电子学 ELECTRONICS


五个主题环环相扣:微积分是电路分析的语言,电路原理给你欧姆定律与基尔霍夫定律,电子学基础带你认识二极管、三极管与运放,数字设计教你逻辑门与时序电路,计算机体系结构则解释处理器如何取指、译码、执行你的代码。原图将这五项全部标为必修;对 ARM 与 RISC-V 两大指令集的理解,在业内被视为嵌入式开发者的基本功。

MCU 3V3 LOGIC GPIO PA5 R 330Ω LED VF≈2V GND I = (3.3V - 2.0V) / 330Ω ≈ 4MA 每一次点灯都是一道欧姆定律应用题
FIG_004[ GPIO DRIVES AN LED / OHM'S LAW AT WORK ]© 1986

1.2测试仪器 USING TEST EQUIPMENT


嵌入式调试一半在代码里,另一半在电表与波形里。万用表、示波器、逻辑分析仪是你的眼睛:量电压、看信号、解协议——它们能证实或推翻你对系统行为的每一个假设。

TRIG CH1 1V/DIV T 500µS/DIV FREQ 1.0KHZ DUTY 25% VPP 3.3V 读出频率与占空比, 是 1.2 组自测的第二题
FIG_005[ OSCILLOSCOPE / PWM ON SCREEN ]© 1986

1.3原型制作 PROTOTYPING SKILLS


硬件设计主要是硬件工程师的职责,但嵌入式软件工程师掌握基础的原型技能,在调试硬件相关问题时能更快定位根因:面包板让你零焊接验证电路,焊接与返修让你修得动手里的板子,PCB 设计与 EMC 知识让你看得懂制板文件、听得懂硬件同事的讨论。

1.4FPGA 开发 FPGA DEVELOPMENT可选


FPGA 用硬件描述语言“画”电路,追求并行度与时序确定性,其设计与验证方法和嵌入式软件开发差异极大,是嵌入式版图中自成体系的专门领域。按你的方向选修即可。

PART 1 SUMMARY · 本部小结
  • 必修0 / 7
  • 建议0 / 5
  • 可选0 / 1
PART 2 / THE HW/SW BOUNDARY

软硬件交界 THE HW/SW BOUNDARY


在原图上,蓝色 SOFTWARE 与橙色 HARDWARE 两个边框恰好交叠出一块中间地带——微控制器、接口协议、存储、仿真、传感器都住在这里。这正是“嵌入式”三个字的本体:你的代码在这里第一次摸到电。

2.1微控制器 MICROCONTROLLERS


微控制器在一颗芯片上集成了处理器、存储器与外设,是绝大多数嵌入式系统的心脏。选型要评估应用需求、算力、内存与 I/O 能力,同时权衡成本、易用性、供货与扩展空间;AVR、PIC、STM32、MSP430、nRF、ESP32 都是常见家族,教学资源以 STM32 最为丰富。学习路径很直白:把下面这排外设一个个点亮——GPIO 是手,中断是反射,定时器是节拍器,DMA 是搬运工。

选型、家族与通用教程 · 22

2.2接口与协议 INTERFACES & PROTOCOLS


接口提供物理连接,协议约定数据交换的规则;选择取决于带宽、距离、功耗与安全。UART、I2C、SPI 三件套是绝对必修——几乎所有传感器与模块都靠它们说话;其余按行业方向选学:做物联网看无线,做工厂看工业总线,做汽车看 CAN。

1 START + 8 DATA + 1 STOP / LSB FIRST / DATA = 0x5A IDLESTART D0D1 D2D3 D4D5 D6D7 STOP HIGH = 1 / LOW = 0
FIG_006[ UART FRAME / 8N1 ]© 1986

2.3存储与文件系统 MEMORY & FILE SYSTEMS建议


嵌入式系统混用易失性存储(SRAM、DRAM、PSRAM)与非易失性存储(Flash、EEPROM、FRAM),按性能、成本、功耗与寿命权衡取舍。嵌入式文件系统通常是轻量级的,为掉电安全与磨损均衡而设计,与桌面文件系统思路很不一样。原图将本组整体标为建议,组内条目继承该优先级。

本组通用资源 · 1
FLASH 128K VECTORS .TEXT 代码 .RODATA FREE 0X0800 0000 0X0802 0000 SRAM 20K .DATA .BSS HEAP STACK 0X2000 0000 0X2000 5000 复位后启动代码把 .DATA 初值从 FLASH 拷入 SRAM
FIG_007[ MEMORY MAP / WHERE YOUR BYTES LIVE ]© 1986

2.4硬件仿真 SIMULATION / EMULATION建议


在真板到手之前,仿真让你先跑起来:Wokwi 这类在线仿真器适合入门试验,QEMU 与 Renode 能在 CI 里模拟整个 MCU 平台——缩短开发周期、降低硬件成本,也让固件测试可以完全自动化。原图将本组整体标为建议。

2.5传感器与执行器 SENSORS & ACTUATORS可选


传感器是系统的眼睛,把温度、光线、加速度变成电信号;执行器是系统的手,把电信号变成转动与开合。这一层的关键功课是读数据手册、做标定、处理噪声。

本组通用资源 · 1
ANALOG DOMAIN 模拟域 DIGITAL DOMAIN 数字域 物理量 传感器 放大 滤波 ADC MCU PWM 驱动器 执行器 感知 -> 计算 -> 动作: 嵌入式系统的一次完整呼吸
FIG_008[ SIGNAL CHAIN / SENSOR TO ACTUATOR ]© 1986

2.6数字信号处理 DIGITAL SIGNAL PROCESSING可选


采样进来的信号往往带着噪声与混叠。DSP 给你滤波器、FFT 与定点运算这些工具,让一颗 MCU 也能胜任音频、振动与生物信号的实时分析。

2.7控制理论 CONTROL THEORY可选


让电机停在想要的位置、让温度稳在设定值,靠的是反馈控制。PID 是嵌入式领域使用最广的控制器,MATLAB / Simulink 则是建模与调参的标准工具。

设定值 + - PID 被控对象 传感器 E(T) U(T) 输出 误差进, 修正出 - 反馈让系统学会停在该停的地方
FIG_009[ CLOSED LOOP / PID CONTROL ]© 1986
PART 2 SUMMARY · 本部小结
  • 必修0 / 11
  • 建议0 / 16
  • 可选0 / 21
  • 未标注0 / 11
PART 3 / SOFTWARE

软件 SOFTWARE


软件域覆盖从语言到工程化的完整链条。原图的态度很直白:C 与算法数据结构是黄色必修,GCC、Make、Git、GDB 这些工具链同样是黄色——会写代码只是一半,能构建、能调试、能测试才是职业选手。

3.1编程基础 PROGRAMMING FUNDAMENTALS


嵌入式在资源受限的环境里跑代码,对效率、内存与结构的要求比桌面开发更苛刻:算法与数据结构决定时间与空间开销,设计模式与状态机塑造固件架构,内存管理直接关系系统能否长期稳定运行。离散数学为这一切提供理论底座,按需补课即可。

IDLE RX PROC ERROR START BIT FRAME OK TIMEOUT / RESET DONE 双圈 = 初始状态; 虚线 = 异常路径
FIG_010[ FINITE STATE MACHINE / UART RECEIVER ]© 1986

3.2编程语言 PROGRAMMING LANGUAGES


C 是嵌入式的通用语,直接映射硬件;C++ 与 Rust 在复杂固件里提供更强的抽象与安全性;Python 常用于测试脚手架与上位机工具;汇编在启动代码与极致优化处仍有一席之地。原图的判断:C 必修,C++ 与 Python 建议,汇编与 Rust 可选。

3.3操作系统 OPERATING SYSTEMS


裸机还是上 OS?各有代价:操作系统带来资源管理、任务调度与通信能力,也带来开销。RTOS 以确定性调度换来实时保证,是航电、机器人、医疗设备的标配;嵌入式 Linux 则把完整的进程、驱动与网络栈带进资源更充裕的设备。RTOS 基础是本组唯一的黄色必修——先懂任务、调度与同步原语,再挑一个内核练手。

T1 HIGH T2 LOW IDLE IRQ EVENT PREEMPT TIME 高优先级任务随时抢占低优先级 - 这就是确定性的代价与回报
FIG_011[ RTOS / PRIORITY PREEMPTION TIMELINE ]© 1986

3.4调试 DEBUGGING


打印大法只是起点。JTAG / SWD 是通往芯片内部的门,GDB 是审讯室,OpenOCD 则是两者之间的翻译官。系统地学调试,比多写十倍代码更能提升你定位问题的速度。

本组通用资源 · 1
HOST PC DEBUG PROBE TARGET MCU GDB + OPENOCD ST-LINK / J-LINK BKPT UNIT USB SWDIO SWCLK 断点 / 单步 / 寄存器与内存读写, 全部经由这条链进入芯片内部
FIG_012[ DEBUG CHAIN / HOST TO SILICON ]© 1986

3.5构建系统 BUILD SYSTEM


从源码到可烧录的固件之间,隔着编译器、链接器与构建脚本。GCC 交叉工具链与 Make / CMake 是黄色必修;Bash 让重复劳动自动化;Docker 把整套环境封装成可复现的镜像,团队协作与 CI 都靠它。

.C / .S GCC 交叉编译 .O 链接器 + .LD .ELF .BIN / .HEX 源码与启动文件 ARM-NONE-EABI 段布局在此决定 含调试符号 OBJCOPY 提取 .MAP 内存报告 烧录 @ 0X0800 0000
FIG_013[ BUILD PIPELINE / SOURCE TO FLASH ]© 1986

3.6版本控制 VERSION CONTROL


Git 是行业默认语言——分支、合并、回滚与代码评审都建立在它之上;SVN 仍活在一些老项目里,见到不慌即可。

3.7开发流程模型 SDLC MODELS


敏捷 / Scrum 与 V 模型代表两种节奏:前者拥抱变化、快速迭代;后者强调验证与追溯,在汽车、医疗、航空这些安全攸关行业仍是主流。了解它们,你才能听懂项目经理在说什么。

3.8测试 TESTING


嵌入式测试从单元测试到硬件在环(HIL)层层递进。TDD 与单元测试是黄色必修——给驱动写测试并不比写驱动更难;CI/CD 让每一次提交都被自动验证;标准与认证(MISRA、ISO 26262、DO-178C)则是安全攸关行业的入场券。

本组通用资源 · 3

3.9嵌入式安全 EMBEDDED SECURITY可选


资源受限让安全在嵌入式里格外难做:算力有限、更新困难、设备还暴露在物理攻击之下。从攻击者视角学习硬件攻防,再落到密码学原语与安全启动、安全升级的工程实现。

本组通用资源 · 1
BOOT ROM BOOTLOADER APP FW 信任根 / 固化公钥 已验签才运行 已验签才运行 VERIFY SIG VERIFY SIG SIGNED UPDATE OTA 镜像同样先验签 每一环只运行上一环验证过的代码 - 信任由此传递
FIG_014[ CHAIN OF TRUST / SECURE BOOT ]© 1986

3.10嵌入式 GUI EMBEDDED GUI可选


资源受限设备上的图形界面,要在帧率、内存与美观之间找平衡。LVGL 与 TouchGFX 是 MCU 级的主流选择,Qt / QML 服务于更强的 Linux 设备。

3.11物联网 IOT可选


IoT 设备的大脑正是嵌入式系统:低功耗采集、组网上云、远程管理。OTA——尤其是节省带宽的差分升级——是量产设备的生命线。

传感器节点 网关 云端 看板 / APP MCU + RADIO 电池供电 协议转换 MQTT BROKER OTA SERVER LORA / BLE / WIFI TCP / TLS DELTA OTA 差分升级 低功耗采集, 组网上云, 远程升级 - 三件事定义一台 IOT 设备
FIG_015[ IOT TOPOLOGY / NODE TO CLOUD ]© 1986

3.12边缘 AI EDGE AI可选


让模型在设备端直接推理:省带宽、保隐私、低延迟。TinyML 专注于在 MCU 这类算力极小的平台上部署模型,TensorFlow Lite 是最常用的推理运行时。

本组通用资源 · 1

3.13AUTOSAR AUTOSAR可选


汽车行业的软件架构标准:为不同厂商的 ECU 提供统一的组件化平台,让它们能够无缝协同。进车厂做汽车电子,这是绕不开的一课;否则可以放心跳过。

PART 3 SUMMARY · 本部小结
  • 必修0 / 12
  • 建议0 / 11
  • 可选0 / 25
  • 未标注0 / 4
PART 4 / SOFT SKILLS

软技能 SOFT SKILLS


与其他职业一样,软技能无法从书本一次性获得——它在协作与解决实际工作难题的过程中长出来,而且没有放之四海皆准的练法,需要认清自己的长短板、投入时间刻意练习。原图把六项软技能全部标为黄色必修,与 C 语言同级。这不是客套。

4.1六项核心软技能 THE SIX SKILLS


软技能贯穿职业生涯全程,不参与“当前位置”的推算——它们不是某个阶段的课程,而是每个阶段的背景音。

本组通用资源 · 2
沟通 问题解决 团队协作 时间管理 自我驱动 适应与耐心 虚线为示例读数 - 自评一次, 画出你自己的六边形
FIG_016[ SOFT SKILLS / SELF RADAR ]© 1986
  • 必修
  • 必修
  • 必修
  • 必修
  • 必修
  • 必修
PART 4 SUMMARY · 本部小结
  • 必修0 / 6

EXIT行业出口 INDUSTRIES


原图把行业画成路线终点的分叉:同一套内核、总线与调试功夫,换一个行业只是换了协议与标准的口音。点击下面任意行业,页面会高亮与它强相关的选修主题——选定方向后,把它们逐个点亮即可。

CLICK AN INDUSTRY · 点击行业查看关联主题

Q/A常见问题 COMMON QUESTIONS


IN_01嵌入式开发和普通软件开发有什么不同?

OUT嵌入式系统是“为特定用途而造的计算机系统”,藏在更大的产品里工作:微波炉的控制器、汽车的发动机管理、飞机上的航电。它的软硬件都为专门功能做了裁剪与优化,在可靠性、成本、体积、功耗上锱铢必较——你写的代码要直接面对硬件、资源和实时性的约束。

IN_02我应该先学硬件还是先学软件?

OUT看目标岗位。Embedded Software / Firmware / Embedded Linux 工程师以软件为主,Embedded Hardware / Hardware Design 工程师以硬件与电子学为主,而 Embedded Systems Engineer 通常要求软硬兼通。本手册覆盖典型的全栈要求:想做软件岗就优先软件域,想做硬件岗就把更多时间投给电子学。

IN_03用 Arduino 入门算不算“不专业”?

OUT入门用它完全正当——没有编程基础时它是最好的起点。但多数 Arduino 库为教学而生,未按工业标准优化,Arduino Core 也替你包办了太多底层操作。想吃这碗饭,最终要能使用厂商认可的 SDK:CMSIS、STM32Cube、ESP-IDF 等。

IN_04资源太多,根本学不完怎么办?

OUT原作者的警告:不要试图读完这里所有的书、文章与视频——那可能要花好几年,只会让你疲惫失望。对必修主题建立起基本理解就够了,很多资源只作参考、用到再查。投入项目实践的时间越多,理解自然越深。

IN_05卡住了去哪里求助?

OUT顺序是:搜索引擎,然后 AI 助手——记住 AI 可能给出错误答案,重要结论要用可靠来源核实;最后去 Electrical Engineering Stack Exchange 或 r/embedded 向真人提问。提问前先把问题最小化复现,这本身常常就把问题解决了。

IN_06需要学离散数学吗?

OUT打基础阶段够用即可:逻辑、组合、图论帮你理解数字电路与算法。做编码理论、自动机、并发建模这类方向时再深入——附录 A 收录了系统的进阶书目。

APP.A进阶离散数学 ADVANCED DISCRETE MATHEMATICS


离散数学是计算机科学与计算机工程的公共理论底座:逻辑对应数字电路与开关代数,编码理论支撑音视频编解码与数据传输,自动机理论解释事件控制与并发建模。嵌入式工程师迟早会按自己的细分方向撞上其中某几块——原仓库附录给出了一份系统的进阶书目,供撞上时取用。

进阶书目 · 16