单元二

第10课 灯随我控-简单滑动可调台灯

任务场景:简单滑动可调台灯
任务场景:简单滑动可调台灯

一、任务目标

把滑动位置映射成亮度,台灯跟着手指变亮变暗。

二、我们要学什么

  • 学习要点:滑动调光|触摸位置映射成亮度
  • 本课过关:能完成:说出滑动调光就是把触摸位置映射成 0 到 100 的亮度;载入体验程序,指出滑动时 2 号灯亮度跟着变;再运行完整程序,指出只有滑出中间大约 ±5 的范围才调光,停在中间附近则亮度为 0。
  • 示例对齐:体验题对应 「2-5-1 灯随我控-简单滑动可调台灯」;完整代码对应 「2-5-2 灯随我控-改进滑动可调台灯」。

三、本节要点

上一课靠声音比较后亮灯。本课要认识滑动调光:读取触摸滑动值,映射到 0~100 再送给 2 号灯。重难点是完整程序加了中间死区——滑动值在约 −5 到 5 之间时把亮度设为 0,滑出去才调光。要点对齐「滑动调光|触摸位置映射成亮度」。

1读场景明确真实任务
2对要点滑动调光|触摸位置映射成亮度
3载入运行十学期兴趣课程积木/代码

四、解题思路

任务:用两套程序认识滑动调光——都把触摸滑动值映射成 2 号灯亮度。体验一直跟着滑;完整程序在中间约 ±5 范围内把灯关掉,滑出这个范围才调光。请对照滑动和停在中间时的灯。

本课主要用到:板载触摸滑动、2 号 LED。

  1. 1明确任务「灯随我控-简单滑动可调台灯」:要观察的是滑动时 2 号灯亮度是否跟随。
  2. 2循环读取触摸滑动值。
  3. 3把 −100~100 映射成 0~100,作为亮度。
  4. 4体验:每一圈都把亮度送给 2 号灯。
  5. 5完整程序:滑出中间约 ±5 才调光;停在中间则亮度为 0。

流程示意(可对照左侧文字)

循环读取触摸滑动值映射成0到100的亮度体验一直跟着滑动调光完整中间约±5关掉滑动看2号灯亮度

五、图形块功能讲解

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

图形块分类作用本课用法
math to int
数学本课程序中用到的积木,载入后可在工具箱中对照名称查看。把映射结果取整,作为 2 号灯的亮度。
math map
数学本课程序中用到的积木,载入后可在工具箱中对照名称查看。把滑动值 −100~100 映射到亮度 0~100。
滑动触摸
板载传感读取触摸滑动位置。读取触摸滑动位置。两套程序都用这个值。
LED 亮度
执行器设置 LED 亮度等级。把算好的亮度送给 2 号灯。完整在中间范围时亮度为 0。
连续比较
逻辑把多个比较串成一条条件。完整判断滑动值是否在约 −5 到 5:在这个范围内灯灭,滑出去才调光。体验没有这段。

六、知识点讲解

滑动调光把触摸滑动位置换成亮度数值,再送给灯。上一课靠声音亮灯;本课滑动值从约 −100 到 100,亮度从 0 到 100,送给 2 号灯。

先弄清:滑动位置变成亮度;完整程序中间一小段会把亮度置 0。再进编程练习对照。

七、编程练习

点「载入」打开 MixVM(board=sant_design)。默认图形化积木;起步程序与积木均来自 MixGo SANT 十学期兴趣课程/学期1。若题目带外设 design,载入时会自动导入接线。在 Mixly 工具栏点「运行 / 停止」,「检查」做关键字核对。请先读本页「四、解题思路」与「五、图形块功能讲解」,再点载入。

十学期兴趣课程:2-5-1 灯随我控-简单滑动可调台灯.mix。载入后运行。

八、课堂练习

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

  1. 判断:完整程序停在中间不滑时,2 号灯仍保持刚才的亮度。

  2. 判断:体验程序把触摸滑动值映射成 0 到 100,用来调节 2 号灯亮度。

  3. 本课说的「滑动调光」指的是?

  4. 体验程序和完整程序的主要差别是?

  5. 运行完整程序,手指停在滑动中间附近,应看到?

九、本节小结

上一课靠声音亮灯。本课主题是滑动调光:把触摸滑动值映射成 2 号灯亮度。体验程序一直跟手;完整程序停在中间约 ±5 范围内时亮度为 0,滑出去才调光。