UpyCraft-micropython:简易电子琴
之前看过一篇控制microbit发声的帖子,现在我想通过检测microbit按键和pin脚的状态做一个简易的电子琴。由于microbit的引脚有限,以及本人对音乐的了解较浅,所以只能大概做个模型,以供大家查考……首先,我们需要准备的工具:硬件:[*]Micro:bit主板
[*]数据线
[*]扬声器
软件:
[*]UpyCraft-Micropython
连接图:
代码及解析:from microbit import *
import music
music.set_tempo(bpm=220)
# keep looping forever
while True:
if button_a.was_pressed():
music.play("a")
elif button_b.was_pressed():
music.play("c")
elif pin1.is_touched():
music.play("e")
elif pin2.is_touched():
music.play("h")
sleep(200)
第1行和第2行:导入需要的包
第4行:控制音调播放速度,数值越大,播放越快
第6行:while循环,将重复执行第9行到第22行的代码
第8行到第18行:分别判断按键a、b是否被按下,以及pin1、pin2是否接地,如果条件触发,这播放相应的音节。
第20行:睡眠0.2秒,保证播放音节时间充足
运行结果:
如果觉得音节少的话,可以尝试组合按键,比如说:button_a与button_b同时按下播放一个音节,或button_a按下与pin0接GND是另一个音节,等等。
欢迎大家加入uPyCraft-micropython QQ群:619558168
页:
[1]