|
|
@@ -1,86 +1,186 @@
|
|
|
-# 行动计划 v6(YJango+AI 压缩路线)
|
|
|
+# 行动计划 v6(2026-08 起)
|
|
|
|
|
|
-_方向:嵌入式 Linux + AI 端侧部署。学习框架:YJango 元学习 + AI 案例驱动。2026-07-30。_
|
|
|
+_双轨策略:Track 1 拿 MCU 实习(立即投) + Track 2 学 Linux+AI(持续积累)。2026-07-30 更新。_
|
|
|
|
|
|
---
|
|
|
|
|
|
-## 核心原则
|
|
|
+## 核心策略
|
|
|
|
|
|
-- **对象层驱动**:不是学知识体系,是做一个具体项目,需要什么学什么
|
|
|
-- **每次卡住 = 一次元学习教练会话**:AI 出案例→比较建规则→自己写→验证
|
|
|
-- **不以"学了多少"论进度,以"项目推进到哪"论进度**
|
|
|
-- ZET6 项目已够格,不再投入(2 天收尾)
|
|
|
+之前路线是「学完 Linux → 秋招拿 Offer」,现在改为:
|
|
|
|
|
|
-## Sprint 序列(目标:第一个嵌入式 AI 项目)
|
|
|
+```
|
|
|
+Track 1 ─ 包装已有 ZET6+FreeRTOS 项目 → 立刻投 MCU 实习 → 2026 年内入岗
|
|
|
+ ↓
|
|
|
+Track 2 ─ 并行学嵌入式 Linux + AI 部署 → 实习期间或结束后冲 Linux 岗
|
|
|
+ ↓
|
|
|
+毕业时 = MCU 实习经验 + Linux 项目能力 = 双重竞争力
|
|
|
+```
|
|
|
+
|
|
|
+**两条线不冲突,反而互补。** Track 1 的实习经历能让简历通过筛选,Track 2 的技能能让面试通过。
|
|
|
+
|
|
|
+---
|
|
|
+
|
|
|
+## 论文优先期(现在 ~ 08-30)
|
|
|
|
|
|
-每个 sprint 产出可运行增量,卡点用 `元学习教练指令.md` 解决。
|
|
|
+论文 2 消融实验重做中,8 月底前论文优先。嵌入式这边做**低量高产出**的事。
|
|
|
|
|
|
-| Sprint | 内容 | 产出 | 预计 |
|
|
|
-|:------:|------|------|:----:|
|
|
|
-| **S0** | C 基础:写一个多文件 C 项目,读文件→处理→输出,学编译/调试/构建 | 能编译运行的 C 项目 | 3-5 天 |
|
|
|
-| **S1** | VM 上跑通 Python 推理(已有 DL 基础,最快链路) | 模型加载→推理→结果 | 2 天 |
|
|
|
-| **S2** | C++ 推理(ONNX Runtime / TensorRT),学会编译链/API/内存 | C++ 推理可执行文件 | 3-5 天 |
|
|
|
-| **S3** | USB 摄像头接入(V4L2),学会图像采集+预处理 | 摄像头→推理→显示 | 3-5 天 |
|
|
|
-| **S4** | 多线程流水线(采集/推理/显示分离) | 实时流水线 | 3-5 天 |
|
|
|
-| **S5** | Orange Pi 5 到货,交叉编译+ARM 部署 | 在 ARM 板上跑通完整链路 | 5-7 天 |
|
|
|
-| **S6** | INT8 量化 + 性能优化 | 量化模型 + 性能报告 | 3-5 天 |
|
|
|
-| **S7** | 扩展:CAN 模拟/网络推流/Web 界面(可选) | 差异化功能 | 3-5 天 |
|
|
|
+### 每日时间
|
|
|
|
|
|
-**总时间:6-8 周到第一个嵌入式端到端 AI 项目。**
|
|
|
+| 时段 | 内容 | 说明 |
|
|
|
+|------|------|------|
|
|
|
+| 08:30-11:00 | 论文 2 主体段 | 白天效率最高时做论文 |
|
|
|
+| 11:00-11:55 | 实习准备(简历/项目包装) | 论文间隙换脑 |
|
|
|
+| 13:00-14:30 | 英语(固定) | 不断 |
|
|
|
+| 15:00-16:00 | 实习准备(面试八股) | 每天一个主题 |
|
|
|
+| 18:00-19:00 | 论文 2 灵活补 | 消融实验/写作 |
|
|
|
+| 19:00-21:00 | Linux 学习(最低节奏) | 不赶进度,保持手感 |
|
|
|
|
|
|
-## 每 Sprint 操作方式
|
|
|
+### 论文期内嵌入式任务
|
|
|
+
|
|
|
+| 任务 | 耗时 | 优先级 |
|
|
|
+|------|:----:|:------:|
|
|
|
+| ZET6 项目收尾:README + 演示视频 | 2 天 | 🔴 |
|
|
|
+| 做一页简历(项目 + 技能 + 论文) | 1 天 | 🔴 |
|
|
|
+| C 八股:指针/const/volatile/static/结构体对齐/位操作 | 并行每天 30min | 🔴 |
|
|
|
+| FreeRTOS 八股:任务状态/调度/临界区/优先级反转/IPC 选择 | 并行每天 20min | 🔴 |
|
|
|
+| STM32 八股:中断优先级/DMA/时钟树/HAL vs LL | 并行每天 15min | 🟡 |
|
|
|
+| 开始投递 | 8 月中起 | 🔴 |
|
|
|
+
|
|
|
+---
|
|
|
+
|
|
|
+## Track 1:MCU/FreeRTOS 实习线
|
|
|
+
|
|
|
+### 简历怎么包装
|
|
|
+
|
|
|
+不要写成"学习项目",要写**工程能力**:
|
|
|
|
|
|
```
|
|
|
-[起点] 项目当前状态(前一个 sprint 的产出)
|
|
|
-[卡住] 遇到不会的 X
|
|
|
- ↓
|
|
|
-1. 打开 元学习教练指令.md
|
|
|
-2. 确定 对象层 = 当前需要解决的具体问题
|
|
|
-3. AI 出 3 个 X 的案例(正例)+ 2 个近反例
|
|
|
-4. 比较 → 提取共有属性 → 建判别规则
|
|
|
-5. 自己实现 X
|
|
|
-6. AI 验证(给新场景测试)
|
|
|
- ↓
|
|
|
-[继续] 项目推进,进入下一个卡点
|
|
|
+基于 FreeRTOS 的 STM32 多传感器监控系统
|
|
|
+├── 架构:4任务 FreeRTOS(监控/LCD显示/输入/CLI)+ 5层驱动架构
|
|
|
+├── 驱动:LCD-FSMC / 触控校准 / DHT11 / 光敏 / Flash / LED / Button
|
|
|
+├── 交互:多页面 LCD 渲染、触控切页、按键唤醒、智能休眠
|
|
|
+└── 调试:IDE Debugger + 串口 CLI 命令行
|
|
|
```
|
|
|
|
|
|
-**这不是学习计划,是问题解决流程。** 你永远不会"学完",你永远在"做"。
|
|
|
+**亮点提炼:**
|
|
|
+- 独立设计驱动架构(5层分离:配置表/生命周期/API/调度/硬件抽象)
|
|
|
+- FreeRTOS 多任务协作(任务通知/信号量/优先级分配)
|
|
|
+- 触控+LCD+多传感器联合调试经验
|
|
|
+- 项目管理:CMake+Ninja 构建、Git 版本控制
|
|
|
|
|
|
-## 硬件策略
|
|
|
+### 目标公司清单
|
|
|
|
|
|
-| 阶段 | 设备 | 成本 |
|
|
|
-|:----:|------|:----:|
|
|
|
-| S0-S4 | Steam Deck VM + 台式机 4070Ti 远程 | 0 元 |
|
|
|
-| S5 | Orange Pi 5(RK3588,有 NPU) | ~400-500 元 |
|
|
|
-| 配件 | USB 摄像头 | ~50 元 |
|
|
|
+按匹配度分三批投递:
|
|
|
|
|
|
-Orange Pi 5 到 S5 再买,不提前。
|
|
|
+| 批次 | 行业 | 公司 | 你的匹配点 |
|
|
|
+|:----:|------|------|-----------|
|
|
|
+| 🔴 第一批 | 医疗器械 | 迈瑞、联影、鱼跃、理邦 | **医学背景+嵌入式**,差异化最大 |
|
|
|
+| 🔴 第一批 | IoT/智能家居 | 涂鸦智能、小米生态链、美的 | FreeRTOS+传感器 直接对口 |
|
|
|
+| 🟡 第二批 | 半导体/方案商 | 中科创达、华勤技术、芯驰科技 | 量大,实习生需求多 |
|
|
|
+| 🟡 第二批 | 工业控制 | 汇川技术、台达 | RTOS+工业协议基础 |
|
|
|
+| 🟢 第三批 | 消费电子 | OPPO/vivo/传音(嵌入式岗) | 量大,但竞争也大 |
|
|
|
|
|
|
-## 当前一周(07-30 ~ 08-06)
|
|
|
+### 投递渠道
|
|
|
|
|
|
-| 方向 | 任务 | 时间 |
|
|
|
-|------|------|:----:|
|
|
|
-| ZET6 收尾 | README + 演示视频(2 天封存) | 2h×2 |
|
|
|
-| Sprint 0 | VM Ubuntu 上写第一个多文件 C 项目 | 上午/灵活段 |
|
|
|
-| 论文 2 | 晚上 18-19 点写不依赖消融的部分 | 1h/d |
|
|
|
-| 英语 | 照常 1.5h | 1.5h/d |
|
|
|
+| 渠道 | 策略 |
|
|
|
+|------|------|
|
|
|
+| BOSS 直聘 | 主力,每天刷新,主动打招呼 |
|
|
|
+| 牛客网 | 看面经 + 找内推 |
|
|
|
+| 公司官网 | 批量投递 |
|
|
|
+| 学长/同学内推 | 效率最高,优先找 |
|
|
|
+
|
|
|
+### 面试准备
|
|
|
+
|
|
|
+**C 语言必问(嵌入式面试 80% 在这里刷人):**
|
|
|
+
|
|
|
+| 主题 | 关键考点 |
|
|
|
+|------|---------|
|
|
|
+| const 用法 | const int*, int* const, const int* const 区别 |
|
|
|
+| volatile | 为何用于寄存器变量、中断共享变量 |
|
|
|
+| static | 局部/全局/函数 static 分别什么效果 |
|
|
|
+| 结构体对齐 | #pragma pack 的作用、内存对齐规则 |
|
|
|
+| 字节序 | 大端小端判断、union 测试 |
|
|
|
+| 指针 | 指针与数组区别、函数指针、二级指针 |
|
|
|
+| 位操作 | 宏定义 SET_BIT/CLR_BIT、寄存器操作 |
|
|
|
+| malloc | 嵌入式里能不能用 malloc?为什么? |
|
|
|
+
|
|
|
+**FreeRTOS 必问:**
|
|
|
+
|
|
|
+| 主题 | 关键考点 |
|
|
|
+|------|---------|
|
|
|
+| 任务状态机 | Ready/Running/Blocked/Suspended 切换条件 |
|
|
|
+| 调度算法 | 抢占式 vs 时间片、优先级如何决定 |
|
|
|
+| 优先级反转 | 什么是优先级反转?怎么解决? |
|
|
|
+| 临界区 | taskENTER_CRITICAL 做了什么 |
|
|
|
+| IPC 选型 | 队列 vs 信号量 vs 事件组 vs 任务通知,各适合什么场景 |
|
|
|
+| 堆栈 | 栈大小怎么估算、溢出怎么检测 |
|
|
|
+
|
|
|
+**STM32 必问:**
|
|
|
+
|
|
|
+| 主题 | 关键考点 |
|
|
|
+|------|---------|
|
|
|
+| 中断优先级 | NVIC 分组、抢占优先级 vs 子优先级 |
|
|
|
+| DMA | 传输模式、循环/普通模式区别 |
|
|
|
+| 时钟树 | HSI/HSE/PLL 关系、APB1/APB2 时钟频率 |
|
|
|
+| HAL vs LL | 什么时候用 HAL、什么时候用 LL |
|
|
|
|
|
|
-Sprint 0 具体:对象层 = "C 程序读一个文件,做简单处理,输出到另一个文件"
|
|
|
-1. AI 出 3 个文件读写案例 → 建规则 → 写自己版本
|
|
|
-2. AI 出 3 个多文件编译案例 → 建规则 → 改 Makefile
|
|
|
-3. AI 出 3 个 gdb 调试案例 → 建规则 → 调自己的程序
|
|
|
+---
|
|
|
|
|
|
-## 资源
|
|
|
+## Track 2:嵌入式 Linux + AI 部署线
|
|
|
|
|
|
-- **元学习教练指令**:`F:\Documents\Obsidian-Knowledge-Base\X-Knowledge-Base\raw\Joplin\重构学习概念\重构工具\元学习教练指令.md`
|
|
|
-- **AI 工具**:opencode / Claude Code(当前会话即可)
|
|
|
-- **参考**:Ubuntu 已装好在 Steam Deck VMware,台式机 4070Ti 远程可用
|
|
|
+### 8 月论文期(低强度保持)
|
|
|
+
|
|
|
+Linux 学习每天 1-2h:
|
|
|
+- VMware Ubuntu 上写 Linux C 程序热身
|
|
|
+- 编译/调试/GCC/Makefile 熟悉
|
|
|
+- 目标:能写一个多文件的 Linux C 项目并编译运行
|
|
|
+
|
|
|
+### 9 月起(根据实习情况调整)
|
|
|
+
|
|
|
+**如果已入职实习:**
|
|
|
+- 工作日:实习学 MCU 工程实践,晚上 1-2h Linux 学习
|
|
|
+- 周末:集中 Linux + AI 项目时间 4-6h/天
|
|
|
+- Linux 学习按 Sprint 分拆(每两周一个小阶段)
|
|
|
+
|
|
|
+**如果没拿到实习:**
|
|
|
+- 全速 Linux + AI 部署 Sprint 序列(见上一版计划)
|
|
|
+- 继续投递,目标扩大范围
|
|
|
+
|
|
|
+### Linux 学习 Sprint 序列(与实习并行版)
|
|
|
+
|
|
|
+| Sprint | 主题 | 时间 |
|
|
|
+|:------:|------|:----:|
|
|
|
+| L1 | Linux C 编译链 + 文件IO | 2 周 |
|
|
|
+| L2 | 进程/IPC/Socket 编程 | 3 周 |
|
|
|
+| L3 | C++ ONNX Runtime 推理 | 2 周 |
|
|
|
+| L4 | V4L2 摄像头 + 多线程 | 2 周 |
|
|
|
+| L5 | CAN 总线 SocketCAN | 1 周 |
|
|
|
+| L6 | 交叉编译 + ARM 板部署 | 2 周 |
|
|
|
+
|
|
|
+每个 Sprint 用元学习教练指令:AI 出 3 案例 → 比较建规则 → 自己写 → AI 验证。
|
|
|
+
|
|
|
+---
|
|
|
+
|
|
|
+## 关键里程碑
|
|
|
+
|
|
|
+| 时间 | 节点 | 判断 |
|
|
|
+|------|------|:----:|
|
|
|
+| 08-10 | ZET6 项目收尾 + 简历完成 | ⏳ |
|
|
|
+| 08-15 | 第一批投递发出(医疗器械方向) | ⏳ |
|
|
|
+| 08-30 | 论文 2 初稿完成 | ⏳ |
|
|
|
+| 09-15 | 目标:拿到面试机会 | ⏳ |
|
|
|
+| 10-01 | 目标:拿到实习 Offer | ⏳ |
|
|
|
+| 12-30 | CET-6 考试 | ⏳ |
|
|
|
+
|
|
|
+---
|
|
|
|
|
|
-## 风险
|
|
|
+## 风险预案
|
|
|
|
|
|
| 风险 | 应对 |
|
|
|
|------|------|
|
|
|
-| 卡在某个点几天没进展 | 用元学习教练诊断具体卡在哪一层(材料缺?规则没建对?) |
|
|
|
-| 论文 2 拖到 9 月 | 晚上 1h 保持节奏,不影响白天 |
|
|
|
-| CMPB 被拒 | 改投,不停 |
|
|
|
-| 英语 12 月不过 425 | 不影响就业,影响申博 |
|
|
|
+| 论文 2 延到 9 月 | 嵌入式线降到每天 1h,论文优先 |
|
|
|
+| MCU 实习投了没回音 | 扩大投递范围 + 让同学内推 + 降低期望公司级别 |
|
|
|
+| 实习太忙没时间学 Linux | 主攻工作中用的技术栈,Linux 放周末 |
|
|
|
+| 实习内容太简单(只做测试) | 主动找活 + 业余自己补项目 |
|
|
|
+| CMPB 被拒 | 改投不花太久,不影响实习投递 |
|
|
|
+| 英语 12 月没过 425 | 不影响就业,只影响申博 |
|