UpyCraft-micropython:简易电子琴

2017-08-111.5万
AI 快速预览详细 收起
本文介绍了如何使用micro:bit和UpyCraft-micropython制作简易电子琴。所需硬件包括micro:bit主板、数据线和扬声器。代码通过检测按键和引脚状态来播放不同的音符。适合STEM教育场景,帮助孩子理解音乐和编程的基础。
之前看过一篇控制microbit发声的帖子,现在我想通过检测microbit按键和pin脚的状态做一个简易的电子琴。
由于microbit的引脚有限,以及本人对音乐的了解较浅,所以只能大概做个模型,以供大家查考……
首先,我们需要准备的工具:
硬件:
软件:

连接图:
UpyCraft-micropython:简易电子琴图2


代码及解析:
  1. from microbit import *
  2. import music
  3. music.set_tempo(bpm=220)
  4. # keep looping forever
  5. while True:
  6.     if button_a.was_pressed():
  7.         music.play("a")
  8.     elif button_b.was_pressed():
  9.         music.play("c")
  10.         
  11.     elif pin1.is_touched():
  12.         music.play("e")
  13.         
  14.     elif pin2.is_touched():
  15.         music.play("h")
  16.     sleep(200)
复制代码

第1行和第2行:导入需要的包
第4行:控制音调播放速度,数值越大,播放越快
第6行:while循环,将重复执行第9行到第22行的代码
第8行到第18行:分别判断按键a、b是否被按下,以及pin1、pin2是否接地,如果条件触发,这播放相应的音节。
第20行:睡眠0.2秒,保证播放音节时间充足


运行结果:
UpyCraft-micropython:简易电子琴图1

如果觉得音节少的话,可以尝试组合按键,比如说:button_a与button_b同时按下播放一个音节,或button_a按下与pin0接GND是另一个音节,等等。

欢迎大家加入uPyCraft-micropython QQ群:619558168

创作许可协议

本项目采用 None(不开放任何权利,保留所有权利) 进行许可。

评论(0)
- 没有更多了 -