最近系统在梳理自己的学习路线顺便总结出来分享给同样在入门嵌入式的同学。这条路线我按先打基础 → 再上板子 → 最后做项目的逻辑来排避免一上来就啃 STM32、结果连 C 语言指针都迷糊的尴尬。路线不是让你学完一门再学下一门可以穿插进行。但基础不牢后面会非常痛苦。一、整体路线一览→ C → Linux基础 → 网络编程 → STM32/单片机 → 项目实战 → 面试每一阶段不用学完再进下一阶段可以并行。但 C 语言、数据结构这两块是地基。二、阶段一C语言最重要没有之一嵌入式 95% 的代码是 C这一关必须过。必掌握数据类型、运算符、控制流函数、数组、指针重中之重结构体、联合体、枚举内存布局栈 / 堆 / 静态区 / 代码段预处理、typedef、宏高频易错点指针和数组的关系指针传参传值 vs 传址野指针、内存泄漏字符串与字符数组的区别动手练手写单链表增删改查自己实现strcpy/strcmp/strlen用指针遍历二维数组三、阶段二数据结构不用全背先掌握常用的结构重点线性表数组、单/双链表栈和队列实现 应用场景二叉树四种遍历前/中/后/层序排序冒泡、快排、归并要会写讲原理查找二分、哈希表面试高频链表反转、快排原理、二叉树层序遍历、两个栈实现队列。四、阶段三C嵌入式岗位对 C 要求不等但学了不亏。类与对象、封装/继承/多态构造/析构函数、拷贝构造智能指针unique_ptr / shared_ptr现代 C 重点STL 常用容器vector / map / unordered_map面向对象的设计思维如果时间紧C 学到能看懂工程代码 写基本类的程度即可把更多时间留给 C 和项目。五、阶段五Linux 基础嵌入式开发基本都在 Linux 下常用命令ls / cd / grep / find / vim / top文件权限、软硬链接进程 / 线程概念与区别基础 shell 脚本gcc 编译流程、Makefile 入门核心搞懂一件事程序是怎么从.c源码变成可执行文件的预处理→编译→汇编→链接。六、阶段六网络编程嵌入式设备联网是趋势TCP 与 UDP 的区别与适用场景socket 编程客户端 / 服务端HTTP 协议基础请求/响应、状态码多线程 / 多进程服务器模型阻塞与非阻塞、I/O 多路复用select / epoll 入门七、阶段七STM32 / 单片机我下个月才开这门课先列框架GPIO、中断、定时器UART / I2C / SPI 通信协议PWM、ADC 采集跑一个 RTOSFreeRTOS看懂数据手册datasheet的能力建议先点灯再逐步上外设别一上来就搞复杂项目。八、项目实战光看不练等于没学。简历里放 2-3 个项目STM32 小系统温控 / 智能小车 / 环境监测Linux 下的 C 项目简易 shell / 文件同步工具网络编程小工具局域网聊天室 / 文件传输把项目推到 GitHub写清楚 README面试时能讲深讲透比项目本身高级更重要。九、面试准备10月秋招每天用豆包模拟面试 30 分钟整理高频八股C语言 / 数据结构 / 操作系统 / 网络项目经历准备STAR讲法能应对深挖刷牛客 / LeetCode 简单~中等题每周写一篇技术总结文章CSDN逼自己输出十、资源推荐书《C Primer Plus》《嵌入式 Linux 应用开发完全手册》视频B站搜 STM32 入门嵌入式 Linux 有一堆优质 UP 主刷题牛客网、LeetCode社区CSDN、掘金、Stack Overflow结语嵌入式这条路不算短但每一步都算数。我把路线贴出来也是逼自己按表推进。如果你也在学欢迎评论区一起卷一起加油