单元五
第19课 拍照回放——作品选题

一、任务目标
做成可演示的小相机:按 B1 拍照,按 B2 回放;完整程序再按 A2 切换文件列表。
二、我们要学什么
- 学习要点:拍照回放|预览、保存、再看
- 本课过关:能完成:说出回放就是先保存 jpg,再在非预览时把照片或文件名拿出来看;载入编程体验,指出彩屏预览画面,按 B1 保存「序号.jpg」并播放彩虹,按 B2 关掉预览后显示当前这张图;再运行完整程序,指出非预览时按 A2 会在「看当前图」和「列出 jpg 文件名」之间切换。
- 示例对齐:编程体验对应 「十学期兴趣课程/学期5/2-2-1 简易相机-拍照支持回放」;完整程序对应 「十学期兴趣课程/学期5/2-2-2 简易相机-拍照回放模式切换」。
三、本节要点
本课用拍照回放当可演示的作品:输入是按键,输出是彩屏上的预览、照片或文件列表。重难点是分清两套——编程体验 B1 拍、B2 回放当前图;完整程序把列表/回封装进函数,非预览时再按 A2 切列表。要点对齐「拍照回放|预览、保存、再看」。
四、解题思路
任务:对照拍照和回放。编程体验按 B1 拍照、按 B2 看当前图;完整程序再按 A2 列出 jpg。请对照彩屏 TFT 和彩灯。
本课主要用到:摄像头;彩屏 TFT;B1、B2 按键;A2 按键(完整程序);板载彩灯。
- 1创建摄像头,循环预览画面。
- 2按 B1 且正在预览时,序号加 1,保存「序号.jpg」,播放彩虹。
- 3按 B2 切换是否预览;关掉预览后显示当前 jpg。
- 4完整程序把「列文件或显示当前图」写进函数。
- 5非预览时按 A2,在当前图和 jpg 列表之间切换。
流程示意
五、图形块功能讲解
下面只列出本课首次出现的 Mixly 图形块(真积木截图)。已在前面课讲过的不再重复;先认新块,再点「载入」对照拖搭。
| 图形块 | 分类 | 作用 | 本课用法 |
|---|---|---|---|
| 板载执行 | 一键播放彩虹流水灯效果。 | 按 B1 拍完后 rainbow_cycle(100),用彩灯提示已经保存。两套都有。 | |
![]() | 函数 | 执行已定义的函数。 | 完整程序按 B2 或 A2 之后调用「显示图片或列表」。体验没有这个函数。 |
![]() | 函数 | 封装一段可重复调用的积木。 | 完整程序封装:若显示列表则清屏列出 jpg;否则显示当前「序号.jpg」。 |
六、知识点讲解
| 知识点 | 本课怎么理解 |
|---|---|
| 拍照 | 两套都是 B1 且正在预览才 snapshot「序号.jpg」,屏上显示文件名,并 rainbow_cycle。 |
| 回放当前图 | 体验按 B2 关掉预览后,display 当前「序号.jpg」。完整程序在不看列表时同样显示这张图(序号要已经 ≥ 0)。 |
| 函数 | 完整程序用「显示图片或列表」:看列表就清屏、排序、找出带 jpg 的文件名;否则显示当前图。 |
| A2 切列表 | 完整程序仅在未预览时按 A2,切换「显示列表」。预览时 A2 不起这个作用。 |
先按体验的 B1、B2 看拍和回放,再在完整程序关掉预览后按 A2 看文件名列表。
七、编程练习
点「载入」打开 MixVM(board=sant_design)。默认图形化积木;起步程序与积木优先来自 MixGo Sant「十学期兴趣课程/学期5」。语音/视觉在仿真中可能需真机或按键近似;在 Mixly 工具栏点「运行 / 停止」。请先读本页「四、解题思路」与「五、图形块功能讲解」,再点载入。
若选题是相机:载入 2-2-1 回放示例。先填选题(题目/输入/输出/验收),再运行。
正在载入编程环境
正在载入 MixGo SANT 仿真编程环境…
八、课堂练习
先完成两道正误判断,再做其余题目;选出后点「检查」。
判断:编程体验按 B1 会保存「序号.jpg」,并播放彩虹效果。
判断:编程体验按 A2 就会列出全部 jpg 文件名。
两套程序允许拍照的条件是?
完整程序按 A2 的作用是?
编程体验按 B2 关掉预览后应看到?
九、本节小结
本课做成可演示的拍照回放。编程体验按 B1 拍、按 B2 看当前图;完整程序再按 A2 切换 jpg 列表。

