AI Pulse
📡 X 信号

嵌入式系统工程师25阶段全栈学习路线图

嵌入式系统工程师学习路线图

1. 计算机科学基础
- 数制与二进制运算
- 数据结构与算法
- 计算机组成原理
- CPU、寄存器与指令集
- 存储层次结构
- 操作系统基础
- 进程与线程
- 并发与同步
- Linux 基础

2. C 编程与嵌入式 C
- 指针与内存管理
- 结构体、联合体与枚举
- 函数指针与回调
- 位运算
- const、volatile、static 与 extern
- 内存对齐与填充
- 栈与堆的区别
- 未定义行为
- 预处理器与宏
- MISRA C 与编码规范

3. C++ 与软件设计
- 面向对象编程
- 类与继承
- 多态与封装
- 模板与 STL
- RAII 与移动语义
- 内存管理
- SOLID 原则
- 设计模式
- 组合优于继承

4. 电子学与数字逻辑
- 电压、电流与电阻
- 模拟与数字电子学
- 二极管、BJT 与 MOSFET
- 逻辑门与布尔代数
- 组合逻辑与时序逻辑
- 触发器与计数器
- 运算放大器
- ADC 与 DAC
- 信号调理

5. 微控制器架构
- 微控制器与微处理器的区别
- CPU 与总线架构
- ARM Cortex-M 架构
- 寄存器与内存映射
- Flash、SRAM 与 EEPROM
- 时钟与复位系统
- NVIC 与中断架构
- DMA
- 内存保护单元(MPU)
- STM32 / ESP32 / NXP / Nordic

6. 裸机编程
- 启动代码与向量表
- 复位处理程序
- 链接脚本
- 寄存器级编程
- 内存映射 I/O
- 中断处理
- 定时器与计数器
- 基于 DMA 的传输
- 固件优化

7. 外设驱动开发
- GPIO 驱动
- UART 驱动
- SPI 与 I2C 驱动
- CAN 驱动
- ADC 与 DAC 驱动
- 定时器与 PWM 驱动
- DMA 驱动
- QSPI 与 Flash 驱动
- 硬件抽象层(HAL)
- 可移植、与 MCU 无关的驱动

8. 通信协议
- UART / USART
- SPI / I2C / I3C
- RS-232 / RS-485
- CAN / CAN FD
- CANopen / J1939
- Modbus RTU / TCP
- USB / 以太网
- 蓝牙 / BLE
- Wi-Fi / Zigbee / LoRa
- 协议设计与状态机

9. 实时操作系统
- RTOS 基础
- 任务调度
- 上下文切换
- 抢占式与协作式调度
- 队列与信号量
- 互斥锁与事件组
- 竞态条件与死锁
- 优先级反转
- 中断到任务的通信
- FreeRTOS / Zephyr / ThreadX

10. 嵌入式 Linux
- Linux 内核架构
- 用户空间与内核空间
- Linux 系统调用
- 内核模块
- 设备驱动
- 设备树
- U-Boot 与启动流程
- Buildroot
- Yocto 与 BitBake
- 交叉编译

11. 引导加载程序与固件更新
- 引导加载程序架构
- 应用程序交接
- 向量表重定位
- 固件镜像格式
- UART / CAN / USB 引导加载
- OTA 更新
- A/B 固件分区
- 固件校验
- 回滚与恢复机制

12. 内存与存储系统
- SRAM / NOR / NAND Flash
- EEPROM / FRAM
- SD 卡 / eMMC
- QSPI Flash
- 文件系统基础
- FAT / LittleFS / SPIFFS
- 磨损均衡
- 循环日志
- 数据完整性
- 断电恢复

13. 物联网与互联设备
- 物联网架构
- TCP / UDP / IP
- MQTT / HTTP / CoAP
- TLS / SSL
- Wi-Fi 连接
- 蜂窝通信
- AT 命令
- SIM / APN / 网络注册
- GNSS 与短信
- 设备配置与车队管理

14. 传感器与信号处理
- 传感器基础
- 温度 / 压力 / 电流传感
- 电压与电流测量
- 4–20mA / 0–10V 接口
- ADC 采样与量化
- 信号调理
- 数字滤波器
- FFT 与 DSP 基础
- 传感器校准与融合

15. 硬件设计与 PCB 工程
- 原理图设计
- 元器件选型
- 电源设计
- PCB 布局
- 接地与信号完整性
- EMI / EMC
- 保护与隔离
- 电源时序
- 硬件调试
- KiCad / Altium / LTspice

16. 固件架构与设计
- 超级循环与 RTOS 架构的对比
- 分层架构
- 硬件抽象
- 板级支持包
- 有限状态机
- 事件驱动编程
- 异步编程
- 基于回调的接口
- 模块化与可移植性
- 固件文档

17. 调试与诊断
- GDB 与 OpenOCD
- JTAG / SWD
- 断点与观察点
- 寄存器与内存检查
- HardFault 分析
- 栈与堆调试
- 示波器
- 逻辑分析仪
- 协议分析仪
- 根本原因分析

18. 嵌入式系统安全
- 密码学基础
- AES / RSA / ECC
- 哈希与数字签名
- TLS 与双向 TLS
- 安全启动
- 硬件信任根
- 安全密钥存储
- 固件签名
- 安全 OTA
- IEC 62443 / ISO 21434

19. 测试与验证
- 单元测试
- 集成测试
- 系统测试
- 硬件在环(HIL)
- 软件在环(SIL)
- 硬件模拟
- 静态代码分析
- MISRA 合规
- 代码覆盖率
- 压力与可靠性测试

20. 构建系统与开发工具
- GCC / Clang / ARM Compiler
- Make 与 CMake
- Ninja
- 链接器与汇编器
- ELF / HEX / BIN 文件
- Git 与版本控制
- Docker
- CI/CD 流水线
- Jenkins / GitHub Actions
- 自动化固件构建

21. 性能与可靠性工程
- CPU 与内存优化
- 中断延迟
- 最坏情况执行时间
- 电源管理
- 低功耗模式
- 看门狗机制
- 故障检测与恢复
- 掉电处理
- MTBF / MTTR
- 故障安全设计

22. 高级嵌入式领域
- 汽车嵌入式系统
- AUTOSAR
- 工业自动化
- PLC / SCADA / HMI
- 机器人与运动控制
- 电机控制与 FOC
- FPGA 与 Verilog
- DSP 与 CMSIS-DSP
- TinyML 与边缘 AI
- 功能安全

23. 嵌入式工具与技术
- 编程语言:C / C++ / Python / Rust
- 微控制器:STM32 / ESP32 / NXP / Nordic
- RTOS:FreeRTOS / Zephyr
- Linux:Yocto / Buildroot
- 调试:GDB / OpenOCD / J-Link
- IDE:VS Code / Keil / STM32CubeIDE
- 构建:GCC / CMake / Make
- 硬件:KiCad / Altium
- 测试:Unity / CMock / Tessy

24. 嵌入式系统项目
- 从零编写 GPIO 驱动
- UART 命令行界面
- 自定义引导加载程序
- 可移植外设 HAL
- 基于 RTOS 的传感器监视器
- CAN / Modbus 通信协议栈
- 工业数据记录器
- 基于 MQTT 的物联网网关
- 嵌入式 Linux 设备驱动
- 自定义 Yocto 发行版
- 安全 OTA 更新系统
- 端到端工业物联网产品

25. 工程精通与职业准备
- 数据手册与参考手册分析
- 软硬件协同设计
- 架构与设计评审
- 技术文档
- 复杂系统调试
- 开源贡献
- 生产级固件开发
- 可测试性设计
- 产品生命周期管理
- 持续学习

最终目标:成为一名优秀的嵌入式系统工程师
- 在电气与架构层面理解硬件
- 编写高效且可维护的固件
- 从零开发驱动与抽象层
- 构建确定性实时系统
- 理解 RTOS 与嵌入式 Linux 内部原理
- 设计可靠的通信系统
- 构建安全的互联设备
- 调试复杂的软硬件交互
- 架构生产级嵌入式产品

跟风玩梗是这样的——

本文由 AI 翻译自英文原帖,技术名词保留英文。

查看 X 原帖

订阅 AI Pulse

每天 08:00 · 12:30 · 18:30 · 23:50 更新