课程八
课程简介
学生将根据单选择控制结构来编程变量。
学生将制作乌龟项目。项目里的乌龟在被振动5次或以上才会把头伸出来。
你知道吗?乌龟利用视觉信号来记住食物的来源。
与乌龟相似,变量根据字符或数值信号来执行程序。
如果不用事件类积木块,还有什么方式可以编写同样的程序呢?
单选择结构
单选择结构 (single choice conditional) 是指结构里只有一个分支。
单选择控制结构的流程图例子
让我们来学习如何根据单选择控制结构来编写程序。
影片八:乌龟(下)/(第二部分)
观看并跟随影片中的项目,学习如何根据单选择控制结构来编程。
影片中所需要的材料:
micro:bit + 数据线 + 三条鳄鱼夹电线 + 3V 伺服电机 + 电源
电脑
makecode在线编程器
塑料瓶 + 颜色纸 + 纸皮
字幕
1
00:00:18,785 --> 00:00:21,795
大家好!欢迎回到 microbit 系列。我是 Alina。
2
00:00:21,795 --> 00:00:24,785
今天我们将完成乌龟的项目。
3
00:00:24,785 --> 00:00:26,785
在之前的影片中,我们利用了变量
4
00:00:26,785 --> 00:00:29,625
来计算 microbit 被振动的次数。这次,
5
00:00:29,625 --> 00:00:32,674
我们将加入伺服电机,用来弹出
6
00:00:32,674 --> 00:00:34,205
乌龟头,条件是每当 microbit 被振动时。
7
00:00:34,765 --> 00:00:37,505
像往常的影片准备项目所需要的所有材料,
8
00:00:37,505 --> 00:00:39,795
可是这次我们将加入连接线,
9
00:00:40,235 --> 00:00:43,535
微型 3V 伺服电机, 三条鳄鱼夹线,
10
00:00:43,585 --> 00:00:46,685
电源或电池。裁剪塑料水瓶
11
00:00:46,685 --> 00:00:50,005
用来制作乌龟壳。确保割出洞口
12
00:00:50,005 --> 00:00:52,535
以便可以显示 microbit,而且乌龟头可以
13
00:00:52,535 --> 00:00:55,295
弹出。剪出乌龟头。
14
00:00:56,385 --> 00:00:58,825
装入支臂到伺服电机。
15
00:01:01,585 --> 00:01:02,585
拧紧。
16
00:01:08,165 --> 00:01:10,585
把支臂粘到
17
00:01:10,585 --> 00:01:12,195
刚才的乌龟头。
18
00:01:29,975 --> 00:01:33,185
连接电线到伺服电机。白色电线到
19
00:01:33,185 --> 00:01:36,115
橙色电线,红色电线到红色电线, 和褐色电线
20
00:01:36,115 --> 00:01:37,115
到黑色电线。
21
00:01:37,175 --> 00:01:39,775
把白色电线连接到 P0 引脚,
22
00:01:47,835 --> 00:01:49,705
黑色电线到 GND 引脚
23
00:01:53,765 --> 00:01:55,925
和红色电线到 3V 引脚。
24
00:02:04,135 --> 00:02:06,825
在这次的影片中,我们将尝试编程 microbit
25
00:02:06,825 --> 00:02:09,574
弹出乌龟头,条件是每当microbit
26
00:02:09,574 --> 00:02:11,715
被振动至少五次后。
27
00:02:12,035 --> 00:02:13,225
我们需要使用
28
00:02:13,685 --> 00:02:16,895
单选控制结构或附有条件的单选
29
00:02:17,155 --> 00:02:20,225
我们将使用“逻辑”积木块来执行
30
00:02:20,315 --> 00:02:21,855
单选控制结构。
31
00:02:22,215 --> 00:02:23,605
我们将使用“如果-则”积木块。
32
00:02:26,865 --> 00:02:30,005
如果条件被满足,条件类积木块里的积木块指令
33
00:02:30,485 --> 00:02:31,485
将被执行。
34
00:02:31,495 --> 00:02:34,385
我们可以利用比较类积木块来设定条件。
35
00:02:35,785 --> 00:02:38,775
如果比较条件正确,此积木块将执行
36
00:02:38,775 --> 00:02:41,825
里边的积木块指令。 在这个项目中,我们将设置count
37
00:02:41,825 --> 00:02:43,845
大过或等于5。
38
00:02:53,575 --> 00:02:55,585
我们把伺服电机的程序
39
00:02:55,585 --> 00:02:57,585
放入刚才的条件类积木块。
40
00:02:57,895 --> 00:03:01,055
设置伺服 P0 角度
41
00:03:01,055 --> 00:03:02,375
到 90 度。
42
00:03:02,725 --> 00:03:03,725
加入“暂停”积木块
43
00:03:04,435 --> 00:03:05,435
为500
44
00:03:05,725 --> 00:03:06,725
毫秒。
45
00:03:10,545 --> 00:03:12,545
设置伺服 P0 角度到
46
00:03:12,895 --> 00:03:13,895
0 度。
47
00:03:17,985 --> 00:03:20,515
加入“暂停”积木块为 500 毫秒。
48
00:03:23,475 --> 00:03:25,575
重复以上的积木块程序,以便伺服电机能够转回
49
00:03:25,575 --> 00:03:27,575
它原先的位置。
50
00:03:33,425 --> 00:03:36,455
利用数据线连接 microbit
51
00:03:36,455 --> 00:03:37,455
到电脑。
52
00:03:38,395 --> 00:03:41,185
点击下载并存档编程文件到 microbit。
53
00:03:41,955 --> 00:03:44,375
拆除数据线。
54
00:03:44,845 --> 00:03:47,265
连接电源或电池到 microbit。
55
00:03:50,585 --> 00:03:53,685
打开电源并观察
56
00:03:53,685 --> 00:03:55,105
microbit 被振动时所产生的变化。
57
00:04:01,935 --> 00:04:03,605
第一次振动,
58
00:04:03,605 --> 00:04:05,605
第二次,
59
00:04:08,265 --> 00:04:10,265
第四次,
60
00:04:11,225 --> 00:04:12,225
和第五次,
61
00:04:15,595 --> 00:04:18,325
乌龟头只会在 microbit 被振动至少五次后,
62
00:04:18,325 --> 00:04:19,725
才会弹出。
63
00:04:20,084 --> 00:04:23,005
整理你的作品并尝试排列电线和
64
00:04:23,005 --> 00:04:25,025
microbit 开发板,以便我们从前面看不见它们。
65
00:04:25,585 --> 00:04:26,975
你的乌龟项目已完成!
66
00:04:27,765 --> 00:04:31,025
作为挑战任务,尝试每当 microbit 被振动
67
00:04:31,025 --> 00:04:33,645
五次后,弹出乌龟头,并收回它,条件是如果
68
00:04:33,645 --> 00:04:34,545
乌龟
69
00:04:34,545 --> 00:04:37,545
被振动7次。编程你的microbit重启
70
00:04:37,545 --> 00:04:40,455
“count”变量,条件是每当按钮被按下时。尝试愉快!
观看完影片,就到了学生动手做的时间啦!尝试完成以下的任务:
当 micro:bit 被振动 5 次或以上,伸出乌龟头
当 micro:bit 被振动 5 次或以上,伸出乌龟头;当被振动7次或以上,把乌龟头收起来。当其中一个按钮被按下时,振动变量归零。
点击链接到makecode开始编程。
接下来,学生们可以阅读笔记,以便巩固课程里所学到的新知识。
影片中的练习
编程方式
所编写的程序
如何根据单选择控制结构编写程序
单选择控制结构的积木块可以在逻辑类积木块组里获得。
如果条件被满足,以上积木块里的程序将会被执行。相反的,如果条件没有被满足,不会执行任何程序。
条件可以利用比较类积木块来制定。
回想以上的例子:micro:bit 不止需要记住被振动的次数,而且需要在条件被满足的情况下,伸出乌龟头。
事件类积木块无法达到以上的条件。因此,在类似的情况下,我们需要使用单选择积木块。
比较类积木块的符号和含义
意思是指:
如果 1 = 1 是正确的, 显示心形。
意思是指:
如果1 不等于1 是错误的,心形不会显示 。
逻辑类积木块必须放在无限循环积木块里,以便micro:bit 重复检测条件是否已被满足。
比较类积木块的含义
流程图的含义
决策符号
根据条件所作出的决策,以选择下一个路径。