### 第一层:嵌入式开发基础(阶段01-03)
- **01 C语言编程** – 嵌入式核心语言,包括指针、内存管理、位运算等。
- **02 数据结构** – 链表、队列、栈、树、排序查找(代码效率关键)。
- **03 Shell + Makefile** – 编译过程控制、自动化构建、Shell脚本辅助开发。
### 第二层:应用层开发(阶段04-08)
- **04 文件操作** – Linux一切皆文件,掌握标准I/O、系统调用。
- **05 多线程 / IO模型** – 多任务、并发、select/poll/epoll。
- **06 网络编程** – socket、TCP/UDP、协议分析、并发服务器。
- **07 C++编程** – 面向对象在嵌入式应用中的使用。
- **08 QT编程** – 图形界面 / 人机交互,适合带屏幕的嵌入式设备。
### 第三层:底层与驱动开发(阶段09-11)
- **09 ARM接口技术** – GPIO、UART、I2C、SPI、中断、ADC、定时器等。
- **10 系统移植** – Bootloader(U-Boot)、内核裁剪、根文件系统构建。
- **11 Linux设备驱动** – 字符设备驱动、设备树、并发控制、中断驱动等。
### 第四层:项目实战与扩展(阶段12-14)
- **12 智能家居实战** – 综合应用+底层+网络+业务逻辑的企业级项目。
- **13 三大热门项目任选** – 物联网/智能硬件方向(如智能安防、车载、工业控制)。
- **14 硬件电路设计** – 原理图、PCB设计、元器件选型,补齐“软硬兼通”的能力。
---
### 给你的学习建议(如果准备按此路线学习)
1. **不要跳阶段**:尤其前三个阶段是“地基”,基础不牢后面会很吃力。
2. **重点卡点**:
- 阶段05(多线程/IO模型)和阶段11(驱动)是**两大分水岭**,淘汰率高。
- 阶段09(ARM接口)需要开发板实际动手(如STM32MP1、i.MX6、RK3568等)。
3. **项目必须亲手做**:阶段12-13是你简历上的核心亮点,不能只看不练。
4. **硬件电路可以后置**:如果你是纯软件背景,可以学到阶段11后再补阶段14,先保证嵌入式软件能力扎实。

![[衡天云]爆款云服务器 低至12元/月](/_next/image/?url=%2Fhty.png&w=3840&q=75)