arduino简易电子琴

2021-02-076415
AI 快速预览详细 收起
本文介绍了如何使用Arduino制作一个简易电子琴。项目包括十二个按键,每个按键对应不同的音高。通过按键可以切换不同的波形类型,如正弦波、方波、锯齿波和三角波,并显示当前波形类型。选做部分还包括对音量的控制、齐奏功能和滑音功能。这个项目适合初学者和STEM教育场景,能够帮助孩子在动手实践中掌握音乐与编程的基础知识。


求助大佬
题目要求:
制作一个简易的电子琴

必做项目
1.制作十二个按键产生不同音高的音符(其中含有#号的音符相当于钢琴中的黑键)
参考各音符对应的频率图表

2.制作振荡器产生不同类型的波形作为音色,并可以通过按键更改波形并显示此时的波形类型,波形包括但不限于正弦波,方波,锯齿波,三角波
3.输出的波形无明显失真

选做项目
1. 增加对音量的控制:实现对总音量大小、启奏时间和释放时间的控制。
(1):总音量的控制(单位:v)
(2):音量的包络(启奏和释放时间)(单位:ms)

2.齐奏功能:打开此功能时,q同时按下多个按键会同时发声
3.滑音功能:
(1).此功能和齐奏功能只能同时打开其中一项功能,并可以切换这两种功能
(2).在触发不同的音符后,音高会逐渐变化而非跳变,在打开滑音功能时,当按下的不同的按键时,频率会由最先按下的按键逐渐过渡到最后按下的按键,推荐频率变化时间在30ms至10ms
(3).在触发不同的音符后,音量的包络不会从头开始,而是保持第一次按下音量的包络,例如当第一次按下后,在启奏阶段按下另一个音符,则音量会保持原来的音量再升高,而不是从零升高。
困难:
1.受制于库函数,内部逻辑尚不清楚,目前水平仅限于生搬硬套和初步应用;尚不清楚是否能够实现对信号的持续输入,选做部分的实施无从下手;
整体思路与问题:
(〇)齐奏和滑音功能的切换
(一)识别齐奏
(二)实现齐奏:
1、齐奏的本质是什么
2、齐奏操作对波形的要求和变化
3、如何实现波形的变化

SunFebruary-202102072570..png (83.32 KB, 下载次数: 2919)

STEM教育 · Arduino简易电子琴制作指南_image_3.webp

SunFebruary-202102076940..png (69.87 KB, 下载次数: 3095)

STEM教育 · Arduino简易电子琴制作指南_image_6.webp

创作许可协议

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

评论(1)
Liusu
Liusu
请问您实现了吗
- 没有更多了 -