如何用 Arduino 制作音乐
组件和用品
![]() |
| × | 1 | |||
![]() |
| × | 1 | |||
![]() |
| × | 1 |
应用和在线服务
![]() |
|
关于这个项目
在本视频中,我将解释如何使用 Arduino 仅使用扬声器和电阻器来制作音乐。
像许多类似的项目一样,这个项目会产生与钢琴音符相匹配的音调。然而,与这些项目中的许多项目不同,这个项目不使用查找表来获取频率。相反,音调是使用计算生成的。该计算接受从 1 到 88 的数字。该数字与 88 键钢琴上的琴键相关。
Arduino 库提供了一个tone() 函数,可用于生成方波音调,但该函数无法生成低于31Hz 的音调。 88 键钢琴有一些频率低于 31Hz 的音符。因此,如果您想从 88 键钢琴生成完整的音符范围,则不能使用tone() 函数。相反,我将向您展示如何使用简单的延迟生成方波音调。
该项目在微秒级工作。一微秒是百万分之一秒。这个项目大量使用了 Arduino 库的 delayMicroseconds() 函数,但其中存在另一个小问题,因为它不能可靠地延迟超过几千微秒,而这个项目有时需要这样做,所以我将向您展示如何克服这个也是。
关于这个项目的最后一件事是,尽管存在上述问题,但该项目的代码确实相当小,因为代码几乎适合单个屏幕(您的分辨率可能会有所不同!)。公平地说,没有任何代码注释,但视频描述中提供了指向完全注释代码的链接。
我希望你喜欢这个项目!
如何在 Ubuntu 中安装 Arduino IDE
代码
项目代码
示意图
通过电阻将扬声器连接到 GND 和引脚 12。
制造工艺