投稿指南
来稿应自觉遵守国家有关著作权法律法规,不得侵犯他人版权或其他权利,如果出现问题作者文责自负,而且本刊将依法追究侵权行为给本刊造成的损失责任。本刊对录用稿有修改、删节权。经本刊通知进行修改的稿件或被采用的稿件,作者必须保证本刊的独立发表权。 一、投稿方式: 1、 请从 我刊官网 直接投稿 。 2、 请 从我编辑部编辑的推广链接进入我刊投审稿系统进行投稿。 二、稿件著作权: 1、 投稿人保证其向我刊所投之作品是其本人或与他人合作创作之成果,或对所投作品拥有合法的著作权,无第三人对其作品提出可成立之权利主张。 2、 投稿人保证向我刊所投之稿件,尚未在任何媒体上发表。 3、 投稿人保证其作品不含有违反宪法、法律及损害社会公共利益之内容。 4、 投稿人向我刊所投之作品不得同时向第三方投送,即不允许一稿多投。 5、 投稿人授予我刊享有作品专有使用权的方式包括但不限于:通过网络向公众传播、复制、摘编、表演、播放、展览、发行、摄制电影、电视、录像制品、录制录音制品、制作数字化制品、改编、翻译、注释、编辑,以及出版、许可其他媒体、网站及单位转载、摘编、播放、录制、翻译、注释、编辑、改编、摄制。 6、 第5条所述之网络是指通过我刊官网。 7、 投稿人委托我刊声明,未经我方许可,任何网站、媒体、组织不得转载、摘编其作品。

让micro:bit和音乐互动起来

来源:微型电脑应用 【在线投稿】 栏目:期刊导读 时间:2020-08-08
作者:网站采编
关键词:
摘要:涉及学科:音乐,数学,信息技术 当下火遍整个创客教育圈的莫过于micro:bit了。如图1所示,micro:bit是一个很小的可编程的微型电脑,能够使用makecode、Mixly、Python等编程语言设计智能作

涉及学科:音乐,数学,信息技术

当下火遍整个创客教育圈的莫过于micro:bit了。如图1所示,micro:bit是一个很小的可编程的微型电脑,能够使用makecode、Mixly、Python等编程语言设计智能作品。一直期望能够用micro:bit来识别音乐节奏,可惜micro:bit的功能太弱没办法实现,只能转而希望借助于电脑的帮忙,即让电脑识别音乐节奏,再将识别结果告诉micro:bit。这种做法其实就是在设计一款互动媒体作品。

互动媒体方面,最有名的编程软件当属Processing,Processing的Minim库中有个范例程序——窗口的矩形会随着音乐的节拍而跳动,效果图如2所示。我们准备借助这个库来识别音乐,然后实现micro:bit和音乐进行互动。比如,按下micro:bit的B键,音乐播放,按下micro:bit的A键,暂停播放,当音乐中有节拍时,则发送信息给micro:bit让LED点阵屏快速闪烁心型图像。

● 互动作品的原理分析

窗口的矩形随着音乐的节拍而跳动的效果是由Processing的Minim库中的“Frequency EnergyBearDetection”范例程序实现的,此程序是用频率能量模式对音乐中的节拍进行监测,使用快速傅立叶变换(FFT)算法来获得频谱,然后将频谱划分为平均频带,并且独立地监测在频谱的不同部分发出的声音(如底鼓、军鼓和小擦)。简单来说,此范例程序是对音乐的频率进行监测,而Processing窗口中矩形的出现以及位置便是由实时监测到的频率决定的。

那么,只要在这个范例程序中增加功能,当特定频率出现的时候,向micro:bit发送信息,就可以达到音乐互动的目的。可见,完成这个互动作品的关键在于让micro:bit和Processing之间相互通信。

Processing支持网络通信,通过WIFI进行互动本来是很好的方式,只是micro:bit自身不带WIFI功能,外加无线设备又比较麻烦。幸好Processing和micro:bit都支持串口通信,二者的互动只能通过串口来实现。如果需要无线互动,则可以用一块micro:bit作为中转设备,多块micro:bit作为终端同时显示效果。

为了让互动更加有意思一些,我们在micro:bit中加上了音乐控制功能。这个互动媒体作品的运行流程如图3所示。

图1 micro:bit

图2 范例程序效果图

图3 系统运行流程

图4 设备管理器查看端口号

图5 安装Minim库界面

图6 Minim库范例程序

图7 范例FrequencyEnergyBeatDetection

● 开发环境准备

1.安装串口驱动

micro:bit在windows中需要另外安装Mbed串口驱动。而在Linux和Mac OS上无需安装驱动。下面以Win7为例介绍Mbed串口驱动的安装。首先连接micro:bit到计算机,然后双击Mbed串口驱动进行安装,安装完成后,便可通过设备管理器查看micro:bit的端口号了,如图4所示的COM1是笔者使用的计算机中micro:bit的端口号。端口号与计算机连接过的设备有关,不同的设备端口号不同。

2.安装Minim库

本案例中,Processing要用到Minim堪姹疽涯谥昧薓inim库,我们可以从库管理器中安装它。通过“速写本”—“引用库文件”—“添加库文件”打开管理器的Libraries选项卡,在Filter框中键入Minim,从列表中选择库,然后单击Install(如图5)。

安装完成后,便可通过“文件”—“范例程序”看到添加的Minim库(如图6)。

● 代码编写

1.修改Processign范例程序

范例中用M i n i m库中的BeatDetect实时读取Buffer中的数据并采集音频频率识别Kick(底鼓)、Snare(军鼓)和Hi-Hat(小擦)三种鼓点。本案例的音乐互动作品便是在此范例程序的基础上完成的。将代码另存后开始修改范例程序,主要增加了定义串口语句、接收信息语句以及发送信息语句(加下画线部分),以下是修改过的Processing代码(限于篇幅,仅仅提供部分代码,如果有需要请发邮件索取)。

Processing代码说明:运行程序,开始播放音乐,并且Processing窗口中的矩形会随着节拍的变化而变化,窗口上的文字KICK、SNARE、HAT也会随着各自的鼓点大小发生变化。当检测到Kick时,则向micro:bit发送信息K;当接收到信息为48(即数字0)时,则停止播放音乐;当接收到信息为49(即数字1)时,则继续播放音乐(如下页表1)。

2.编写micro:bit代码

当micro:bit接收到信息K时,则LED显示图像;当按下A键时,则向Processing发送信息0;当按下B键时,则向Processing发送信息1。下页表2为micro:bit代码。

文章来源:《微型电脑应用》 网址: http://www.wxdnyyzz.cn/qikandaodu/2020/0808/363.html



上一篇:《微型电脑应用》投稿须知
下一篇:“公路列车”令旅途更轻松

微型电脑应用投稿 | 微型电脑应用编辑部| 微型电脑应用版面费 | 微型电脑应用论文发表 | 微型电脑应用最新目录
Copyright © 2021 《微型电脑应用》杂志社 版权所有
投稿电话: 投稿邮箱: