迷笛心情
详细教程请访问:
- 使用 Arduino 制作音乐:https://go.musiconerd.com/making-music-with-arduino
- Curso Fazendo Música com Arduino 和葡萄牙语:https://go.musiconerd.com/curso-completo
- 构建过程视频:https://youtu.be/aLhOO-UiMg4
该存储库包含名为 MidiMood 的自定义 MIDI 控制器项目的代码,该项目使用 ATmega32U4 微控制器(或类似的)构建。该项目旨在处理电位器、按钮和其他控件,以通过 USB、BLE 或标准 MIDI 协议发送 MIDI 消息。
目录
概述
MidiMood 是一个全面的 MIDI 控制器实现,支持各种输入方法(按钮、电位器、编码器)和输出方法(USB MIDI、BLE MIDI)。该控制器设计为高度可定制的,支持多种微控制器平台,包括 ATmega32U4、ATmega328 和 Teensy。
特征
- USB MIDI 支持:通过 USB 发送和接收 MIDI 消息。
- BLE MIDI 支持:使用蓝牙低功耗 (BLE) 进行无线 MIDI 通信。
- 电位计和按钮处理:捕获来自电位计和按钮的输入并将其转换为 MIDI 消息。
- 多路复用器支持:使用多路复用器扩展输入数量。
- 调试支持:可以通过串行通信启用调试消息。
- 多平台:支持 ATmega32U4、ATmega328 和 Teensy 微控制器。
文件说明
- _MidiMood.ino :初始化 MIDI 控制器并运行主循环的主 Arduino 草图。
- A_POTENTIOMETERS.ino :包含读取电位计值并将其转换为 MIDI 控制更改消息的逻辑。
- B_BUTTONS.ino :处理按钮输入,将它们转换为 MIDI 音符开/关或控制更改消息。
- FUNCTIONS.ino :整个项目中使用的辅助函数,包括处理 MIDI 消息和其他实用函数。
- LOOP.ino :程序检查输入并发送 MIDI 消息的主循环。
- MACKIE.h :定义 Mackie Control Universal (MCU) 协议的常量,用于控制 DAW。
- Z_ATMEGA32U4.ino :基于 ATmega32U4 的板的微控制器特定设置代码。
- Z_SETUP.ino :通用设置代码,初始化引脚和配置输入/输出模式。
材料
- Arduino Pro 微型:https://amzn.to/2Vcz3Nz
- 电线:https://amzn.to/2xugvPF
- 裸铜线(可选)18-24 规格:https://amzn.to/2FVuDpe
- 26 旋转电位器 b10k:https://amzn.to/3ckRKUY
- 26 个旋钮
- 垫片 M3 35mm:https://amzn.to/2z15BkN
- M3螺丝:https://amzn.to/2RHtfJw
- 多路复用器 CD4067:https://amzn.to/303jJVe
- 11 拨动开关:https://amzn.to/3hDmORR
- 1 个 LED
- 1 个领导支持
- 1个1k欧姆电阻
设置说明
1. 克隆存储库
git clone https://github.com/yourusername/midi-controller-project.git
cd midi-controller-project
2.安装Arduino IDE
确保您的计算机上安装了 Arduino IDE。您可以从官方网站下载。
3. 打开项目
在 Arduino IDE 中打开_MidiMood.ino
文件。该文件用作项目的入口点。
4. 选择您的主板
在 Arduino IDE 中,根据您的微控制器选择适当的板:
- 对于 ATmega32U4 板(例如 Arduino Leonardo),选择Arduino Leonardo 。
- 对于 ATmega328 板(例如 Arduino Uno),选择Arduino Uno 。
- 对于 Teensy 板,请选择正确的 Teensy 型号。
5. 上传代码
通过 USB 将微控制器连接到计算机,然后使用 Arduino IDE 中的“上传”按钮上传代码。
依赖关系
- ResponsiveAnalogRead :用于平滑电位计模拟读数的库。
- MIDI 库:处理通过 USB 和串行的 MIDI 通信。
- BLE MIDI :用于蓝牙 MIDI 通信(如果使用 BLE)。
您可以使用 Arduino 库管理器安装这些库。
用法
代码上传后,您的 MIDI 控制器将被您的计算机或移动设备识别为 MIDI 设备。您可以开始使用它向 DAW 或其他 MIDI 兼容软件发送 MIDI 消息。
调试
如果您想查看调试消息,请在代码中启用DEBUG
标志。这将允许您通过 Arduino IDE 中的串行监视器监视 MIDI 消息和其他详细信息。