第 1 步:制作
它是什么?
编程制作你自己的电子宠物。 The micro:bit's built-in speaker makes it even more fun with its expressive sounds.
介绍
编程指南
学习目标
- 如何使用变量和循环来制作简单的计时器。
- 如何使用selection(选择)在不同的时间触发不同的事件。
- 让micro:bit看上去似乎停止运行程序的小窍门!
工作原理
- 电子宠物在1990年代发明于日本,并很快成为风靡全球的玩具。
- 它们是可以挂在钥匙圈上的小徽章。 简单显示的小动物。 你必须通过按键和玩简单游戏的方式照顾它,并与它进行互动。 如果你忽视它,不给它喂食或做清洁,它就会变得忧伤、行为不端或生病。
- 该程序使用名为timer的变量来跟踪你忽视宠物的时间。 用forever循环将timer的值每过一秒钟(1000毫秒)增加1。
- 如果timer的值到了20,那么你的宠物将在LED显示屏上显示一个哀伤的脸,同时通过内置的扬声器发出一声哀叹。
- 如果达到30,那么宠物将入睡。
- 如果到了40,那么宠物将发出神秘的声音并且死亡。 程序使用“set built-in speaker off”模块来防止扬声器发出任何其它声响。 使用“while true”循环来确保LED显示屏上仅显示骷髅头图像。
- 只要你一直和你的宠物保持互动,它就会活着并且快乐! 描一下徽标使其快乐,或摇晃让它咯咯笑。 这将重置timer为0。
- 如果你的宠物死了,可以按下micro:bit背面的reset按键来让其复活。
所需材料
- V2 micro:bit with sound (or MakeCode simulator)
- MakeCode或者Python编辑器
- 电池盒(选配)
第 2 步:编程
1from microbit import *
2import audio
3
4timer = 0
5display.show(Image(
6 "00000:"
7 "09090:"
8 "00000:"
9 "09990:"
10 "00000"))
11audio.play(Sound.HELLO)
12
13while True:
14 if pin_logo.is_touched():
15 timer = 0
16 display.show(Image.HAPPY)
17 audio.play(Sound.HAPPY)
18 elif accelerometer.was_gesture('shake'):
19 timer = 0
20 display.show(Image.SURPRISED)
21 audio.play(Sound.GIGGLE)
22 else:
23 sleep(500)
24 timer += 0.5
25 # sleep for half a second only to make it react more quickly to logo touch & shake
26
27 if timer == 20:
28 display.show(Image.SAD)
29 audio.play(Sound.SAD)
30 elif timer == 30:
31 display.show(Image.ASLEEP)
32 audio.play(Sound.YAWN)
33 elif timer == 40:
34 display.show(Image.SKULL)
35 audio.play(Sound.MYSTERIOUS)
36 break
37
第 3 步:完善
- 尝试你的宠物生命不同时间段的体验。
- 使用micro:bit的LED显示屏来创作你自定义的面部表情
- Add more variables to track how hungry or dirty your pet is, and add new interactions to feed or clean your pet, for example by pressing buttons or making a loud sound picked up by the micro:bit's built-in microphone.
This content is published under a Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) licence.