feat: 补齐主体篇素材 + 目录结构规范化 projects/: 补入 B 类 20 题学生源码(p01~p20,19 题,去 HAL 库/编译产物) packages/: 补入 B 类 20 题成果包(报告 + 答辩 PPT) examples/: 补入俄罗斯方块学习范例(完整工程解剖) hardware/: 8 游戏机源码/成果包移入本目录(源码/ + 成果包/) 修复课程文档引用断链(22 -> 0)
feat: 补齐主体篇素材 + 目录结构规范化
从 Proteus 仿真到 STM32 实物游戏机 一门面向大一学完 C 语言同学的开源嵌入式实践课 · 20 款图形游戏 × AI 自己 play game
EmbeddedGame 把 20 款经典图形游戏(贪吃蛇、2048、扫雷、坦克大战、吃豆人……)变成一门循序渐进的嵌入式课程设计。基于 STM32F103C8T6 + 1.8寸 131×161 SPI-LCD + 4 按键 统一硬件平台,先用 Proteus 仿真零成本入门,再进阶到真实 STM32 掌机实物(面包板 → 洞洞板 → 硬件验收)。
核心追问:软件游戏玩过很多,但当你亲手驱动一块 LCD 显示、把像素级游戏逻辑烧进单片机——你才真正”掌控”了硬件。而当你让这颗 72MHz、只有 20KB RAM 的芯片”自己玩起游戏”,你才真正理解嵌入式智能体的极限与可能。
前置知识:C 语言基础(指针、结构体、数组、中断概念)。无需单片机经验——从俄罗斯方块范例开始手把手入门。
先修课程:《AI 时代的 C 语言课程》(LearningCwithAI)。本课程与《故事新编》MyTAOCP(软件算法)互为平行姊妹课——软件算法 vs 嵌入式硬件。
① 基础库:硬件平台与工具链(STM32F103 + HAL + SPI-LCD + 按键 + Proteus/Keil) ② 主体: B 类 20 题 Proteus 仿真课程设计(分 5 类,难度递进) ③ 进阶: 8 个游戏机实物(Proteus 仿真 → 实物,AI 自己 play game)
学习路径:俄罗斯方块(范例,完整代码解剖)→ B 类各题(Proteus 仿真)→ 8 游戏机(实物,AI 自己 play game)
核心命题:如何在 20KB RAM 里装下一个更先进的智能体——六项”内功”详见 docs/AI-play-game技术难点.md。
docs/AI-play-game技术难点.md
俄罗斯方块为学习范例(提供完整代码解剖),不作为可选题目。
EmbeddedGame/ ├── README.md # 本文件(课程总览) ├── LICENSE # 双许可证(代码 MIT + 文档 CC BY 4.0) ├── CONTRIBUTING.md # 贡献指南 ├── CODE_OF_CONDUCT.md # 行为准则 ├── course/ # 课程主体 │ ├── 00-课程总纲.md │ ├── 01-硬件基线.md # 俄罗斯方块范例完整解剖 │ ├── 02~06-各类五星教学样例 │ └── guided/ # 其余题目引导文档(8段式,不给完整代码) ├── examples/ # 学习范例:俄罗斯方块(完整工程解剖) ├── projects/ # B 类 20 题学生源码(p01~p20,Proteus 仿真) ├── packages/ # B 类 20 题成果包(设计报告 + 答辩 PPT) ├── hardware/ # 8 游戏机实物进阶篇(源码/ + 成果包/ + AI play game) ├── docs/ # 课程规范:20题方案 / 硬件规范 / 评分标准 / BOM / AI难点 └── videos/ # 视频外链(教学视频 → B 站/CSDN)
course/01-硬件基线.md
examples/俄罗斯方块/
course/02-*.md
course/00-课程总纲.md
docs/
五星教学法(聚焦问题 · 激活旧知 · 示证新知 · 应用新知 · 融会贯通)× 8 段式脚手架(项目概述 → 游戏原理 → 任务 → 要求 → 可控可观 → 工程伦理 → 上手 → 避坑)。
可控可观工程哲学:可控(寄存器/外设配置)= 掌控硬件每一根引脚;可观(LCD 显示/调试)= 让系统状态清晰可见。
详见 LICENSE。
从一块 LCD 点亮第一个像素开始,20 款游戏,陪你走完”仿真 → 面包板 → 洞洞板 → 掌机”的完整硬件之路。
EmbeddedGame 把 20 款经典图形游戏(贪吃蛇、2048、扫雷、坦克大战、吃豆人……)变成一门循序渐进的嵌入式实践课。基于统一的 STM32F103C8T6 + 1.8 寸 SPI-LCD + 4 按键 硬件平台,先用 Proteus 仿真零成本入门,再进阶到真实 STM32 掌机实物(面包板 → 洞洞板 → 硬件验收)。 课程的核心命题是:如何在 20KB RAM 里装下一个更先进的
版权所有:中国计算机学会技术支持:开源发展技术委员会 京ICP备13000930号-9 京公网安备 11010802047560号
嵌入式图形游戏开发 · EmbeddedGame
这是什么?
EmbeddedGame 把 20 款经典图形游戏(贪吃蛇、2048、扫雷、坦克大战、吃豆人……)变成一门循序渐进的嵌入式课程设计。基于 STM32F103C8T6 + 1.8寸 131×161 SPI-LCD + 4 按键 统一硬件平台,先用 Proteus 仿真零成本入门,再进阶到真实 STM32 掌机实物(面包板 → 洞洞板 → 硬件验收)。
面向谁?需要什么基础?
前置知识:C 语言基础(指针、结构体、数组、中断概念)。无需单片机经验——从俄罗斯方块范例开始手把手入门。
先修课程:《AI 时代的 C 语言课程》(LearningCwithAI)。本课程与《故事新编》MyTAOCP(软件算法)互为平行姊妹课——软件算法 vs 嵌入式硬件。
课程结构(三层)
学习路径:俄罗斯方块(范例,完整代码解剖)→ B 类各题(Proteus 仿真)→ 8 游戏机(实物,AI 自己 play game)
20 款游戏题目(B 类,分 5 类)
硬件平台(统一)
目录结构
快速开始
学习者(跟做第一个游戏)
course/01-硬件基线.md,理解 STM32 + LCD + 按键的硬件基座examples/俄罗斯方块/的 Keil 工程,编译烧录,跑通范例course/02-*.md做第一个五星教学样例(贪吃蛇),动手改造教师(复用模板)
course/00-课程总纲.md了解五星教学法 + 三层结构docs/建立评价体系与硬件规范教学法
五星教学法(聚焦问题 · 激活旧知 · 示证新知 · 应用新知 · 融会贯通)× 8 段式脚手架(项目概述 → 游戏原理 → 任务 → 要求 → 可控可观 → 工程伦理 → 上手 → 避坑)。
可控可观工程哲学:可控(寄存器/外设配置)= 掌控硬件每一根引脚;可观(LCD 显示/调试)= 让系统状态清晰可见。
开源协议
详见 LICENSE。
关于本项目