建立编程与工具感
先学会把问题拆成步骤,并让代码能被版本管理、编译和调试。完全零基础也从这里开始。
重点学习
- 变量、条件、循环、函数与最基本的算法思维
- 终端、文件路径、十六进制与二进制
- Git 的提交、分支、差异与回退
必须产出
建立第一个 Git 仓库,完成 5 个小程序,并能独立编译、运行和定位一个故意制造的错误。
过关标准
能看懂编译错误;能解释源码、目标文件和可执行文件不是同一个东西。
BEFORE YOU START
电脑、编译器、编辑器和 Git 足够,先把 C 与调试练扎实。
一块带板载调试器的 Cortex-M 开发板即可,不要同时追多个芯片系列。
万用表和串口工具先用;学总线阶段再补逻辑分析仪,示波器可以借用。
24-WEEK MAIN ROUTE
每个阶段都包含学习内容、必须完成的作品和进入下一阶段的验收标准。
先学会把问题拆成步骤,并让代码能被版本管理、编译和调试。完全零基础也从这里开始。
建立第一个 Git 仓库,完成 5 个小程序,并能独立编译、运行和定位一个故意制造的错误。
能看懂编译错误;能解释源码、目标文件和可执行文件不是同一个东西。
嵌入式的门槛不在语法数量,而在指针、生命周期、位操作和内存边界。
不用现成容器,完成环形缓冲区、二进制协议解析器和带测试的状态机。
能解释悬空指针、越界、结构体填充和 volatile 的边界,并用调试器证明判断。
选择一块带调试器的 Cortex-M 开发板,理解代码如何从复位跑到 main,再驱动真实外设。
完成按键控制、串口命令行、定时采样和 PWM 输出;至少一个外设尝试从寄存器层理解。
能画出上电到 main 的路径;能说明中断入口、栈和优先级发生了什么。
从“代码看起来没问题”升级到用波形、寄存器和日志建立证据。
实现传感器采集和显示链路,主动制造 NACK、超时、断线与缓冲区溢出,并完成恢复。
能拿出成功/失败波形、错误计数和排查记录,而不是只说“换线后好了”。
先理解并发问题,再使用任务、队列和锁;不要把每个功能机械拆成一个任务。
把裸机采集程序重构为 RTOS 版本,明确任务职责、通信方式、超时和资源所有权。
能解释为什么这样分任务;能测量栈水位,并定位一次人为构造的死锁或优先级问题。
把前面的知识收束为一个能演示、能测量、能复盘的作品,而不是下载一份代码跑起来。
完成“温控与数据采集终端”:传感器、显示、串口 CLI、RTOS、配置保存、故障记录和看门狗。
仓库包含 README、架构图、测试记录和一次真实故障闭环;能回答为什么、怎么做、怎么查、如何优化。
OPTIONAL · WEEK 25–32
完成 C、裸机与调试主线后再学 Linux,会更容易理解交叉编译、启动链、设备树和驱动边界。不要零基础直接从字符驱动模板开始抄。
浏览 Linux 路线题目Shell、进程线程、文件、网络、GDB、Make/CMake 与交叉编译。
Boot ROM → U-Boot → Kernel → DeviceTree → RootFS,用 Buildroot 生成可启动系统。
修改设备树、匹配 platform driver、处理中断和并发,完成一个传感器网关。
PORTFOLIO PROJECT
建议主项目做“温控与数据采集终端”:I²C 传感器、SPI 显示、UART CLI、FreeRTOS、参数持久化、看门狗和故障记录。Linux 分支可把它扩展成串口采集网关。
OFFICIAL RESOURCES
这些资料用于学习和查证,不建议从头到尾一次读完。遇到当前阶段的问题,再进入对应章节。
WEEKLY RHYTHM
只学本周项目需要的知识。
自己实现、测量并制造失败。
记录现象、证据、根因和验证。
NEED A CUSTOM PLAN?
把你的基础、每周时间和目标岗位发给我,可以进一步做一对一学习路线与项目规划。