单元五

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

任务场景:拍照回放——作品选题
任务场景:拍照回放——作品选题

一、任务目标

做成可演示的小相机:按 B1 拍照,按 B2 回放;完整程序再按 A2 切换文件列表。

二、我们要学什么

  • 学习要点:拍照回放|预览、保存、再看
  • 本课过关:能完成:说出回放就是先保存 jpg,再在非预览时把照片或文件名拿出来看;载入编程体验,指出彩屏预览画面,按 B1 保存「序号.jpg」并播放彩虹,按 B2 关掉预览后显示当前这张图;再运行完整程序,指出非预览时按 A2 会在「看当前图」和「列出 jpg 文件名」之间切换。
  • 示例对齐:编程体验对应 「十学期兴趣课程/学期5/2-2-1 简易相机-拍照支持回放」;完整程序对应 「十学期兴趣课程/学期5/2-2-2 简易相机-拍照回放模式切换」。

三、本节要点

本课用拍照回放当可演示的作品:输入是按键,输出是彩屏上的预览、照片或文件列表。重难点是分清两套——编程体验 B1 拍、B2 回放当前图;完整程序把列表/回封装进函数,非预览时再按 A2 切列表。要点对齐「拍照回放|预览、保存、再看」。

1读场景明确真实任务
2对要点拍照回放|预览、保存、再看
3载入运行官方积木/代码

四、解题思路

任务:对照拍照和回放。编程体验按 B1 拍照、按 B2 看当前图;完整程序再按 A2 列出 jpg。请对照彩屏 TFT 和彩灯。

本课主要用到:摄像头;彩屏 TFT;B1、B2 按键;A2 按键(完整程序);板载彩灯。

  1. 1创建摄像头,循环预览画面。
  2. 2按 B1 且正在预览时,序号加 1,保存「序号.jpg」,播放彩虹。
  3. 3按 B2 切换是否预览;关掉预览后显示当前 jpg。
  4. 4完整程序把「列文件或显示当前图」写进函数。
  5. 5非预览时按 A2,在当前图和 jpg 列表之间切换。

流程示意

预览摄像头画面B1拍照并彩虹提示B2关掉预览看图完整封装显示函数A2切换图片或列表

五、图形块功能讲解

下面只列出本课首次出现的 Mixly 图形块(真积木截图)。已在前面课讲过的不再重复;先认新块,再点「载入」对照拖搭。

图形块分类作用本课用法
彩灯彩虹效果
板载执行一键播放彩虹流水灯效果。按 B1 拍完后 rainbow_cycle(100),用彩灯提示已经保存。两套都有。
调用函数
函数执行已定义的函数。完整程序按 B2 或 A2 之后调用「显示图片或列表」。体验没有这个函数。
定义函数
函数封装一段可重复调用的积木。完整程序封装:若显示列表则清屏列出 jpg;否则显示当前「序号.jpg」。

六、知识点讲解

拍照回放把「拍下来」和「再看一次」接成一件可演示的事:预览时按 B1 写成 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 回放示例。先填选题(题目/输入/输出/验收),再运行。

八、课堂练习

先完成两道正误判断,再做其余题目;选出后点「检查」。

  1. 判断:编程体验按 B1 会保存「序号.jpg」,并播放彩虹效果。

  2. 判断:编程体验按 A2 就会列出全部 jpg 文件名。

  3. 两套程序允许拍照的条件是?

  4. 完整程序按 A2 的作用是?

  5. 编程体验按 B2 关掉预览后应看到?

九、本节小结

本课做成可演示的拍照回放。编程体验按 B1 拍、按 B2 看当前图;完整程序再按 A2 切换 jpg 列表。