项目简介
本项目是基于Arduino的MIDI音乐播放器,可从MIDI音乐文件中提取音符信息,将其转换为Arduino能理解的格式,最终通过Arduino板播放音乐。项目借助多个文件和类实现该功能,涵盖处理输入输出的Arduino代码、用于音乐提取的C++代码以及同步功能代码。
项目的主要特性和功能
- MIDI音乐文件处理:能从MIDI音乐文件提取音符信息并转换成Arduino可理解的格式。
- Arduino音乐播放:利用“Playtune”库与自定义的Arduino代码(如“master.cpp”和“slave.cpp”)在Arduino板上播放音乐。
- 同步处理:具备同步功能,保证音频信号正确播放。
- 串行通信:通过串行通信,Python脚本把处理后的音乐数据发送给Arduino。
- 测试功能:包含测试文件,用于验证音乐提取和播放功能的正确性。
安装使用步骤
1. 复制项目
(此处原文档未提供复制项目的命令,需补充相应命令或说明获取项目源码的方式)
2. 安装依赖
- 安装
arduino-cli
,并按其说明进行配置。 - 更新Arduino核心索引并安装AVR核心:
bash arduino core update-index arduino core install arduino:avr
3. 设置Arduino
- 连接主从Arduino板的PIN_IN和PIN_OUT。
- 依据
./src/templates/master.cpp
和./src/templates/slave.cpp
中的值进行连接。
4. 生成和上传Sketch
- 修改
generate.py
以适配需求,尤其要找到Arduino板的FBQN和串行端口,并在generate.py
的config
中输入这些信息。 - 使用以下命令上传Sketch到Arduino板(默认是两个板):
bash ./generate.py upload <midi_input>
其中<midi_input>
是一个MIDI文件(格式为*.mid)。 - 也可以使用独立配置(
-c standalone
)上传到单个板。
5. 播放音乐
上传完成后,Arduino板将开始播放MIDI音乐文件中的音乐。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】