【问题标题】:Arduino MIDI controller libraryArduino MIDI 控制器库
【发布时间】:2020-03-31 21:44:13
【问题描述】:

我正在尝试制作一个带有三个按钮(播放、暂停和录制)、一个电位器和一个推子的 MIDI 控制器。我正在使用这个库:https://github.com/tttapa/MIDI_controller

我无法让按钮做我想做的事情(触发我 daw 上的播放按钮)。

另外,当我用Hairless 测试电位器时,我得到了这个错误:

Enter image description here

【问题讨论】:

    标签: arduino controller midi


    【解决方案1】:

    这似乎是一个通信错误。

    作者推荐change to the new version。如果您想继续使用该版本,请尝试调整两侧的设定速度。

    Arduino 中默认的无毛波特率为 115,200 个符号/秒。

    (您可以在设置中更改它,但我建议只在 Hairless 中更改它,因为我认为这是默认设置。)

     MIDI_controller/src/Settings/Settings.h
         Line 10
      #define HAIRLESS_BAUD 115200
    

    【讨论】:

    • 我用 9600 和 115200 都试过了,结果是一样的。
    • 使用标准示例进行测试或尝试新的库
    • 我已经更新了库,并使用了自述文件中的创建者标准示例,我将发布代码here,但我得到了同样的错误。
    • 检查串行监视器和 settings.h(Arduino 端)和 win 设备管理器中使用的 com 端口和无毛应用程序的波特率设置
    • 波特率不同。我在串行监视器(from9600)中将速率设置为 115200,settings.h 已经设置为 115200,我在设备管理器中将 com 端口的波特率设置为 115200,并且无毛应用程序已经设置为 115200。所以现在每个频率是匹配的,但我仍然得到错误。当我打开串口监视器时,输出是一些奇怪的符号,这样可以吗? screenshot
    【解决方案2】:

    我遇到了同样的问题。

    您的设置未向 DAW 提供 MIDI 输入。 DAW 可以从 MIDI 输入设备读取数据,但不能直接从串行端口读取数据。

    此设置将起作用:Arduino 通过串行端口将 MIDI 数据发送到应用程序“Hairless 串行 MIDI 桥”,然后 Hairless 将具有正确波特率的 MIDI 数据发送到 MIDI 输入设备。 DAW 可以从 MIDI 输入设备读取数据。

    您可以使用http://www.tobias-erichsen.de/software/loopmidi.html 作为虚拟 MIDI 输入。

    查看https://piecesofpi.co.uk/arduino-usb-midi-the-easy-way/ 了解有关此概念的详细信息。

    另一个选项可能是带有内部 USB (Atmega 32U4) 的 Arduino,不需要 Hairless 和 MIDI 环回(我没有尝试过)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-12-15
      • 1970-01-01
      • 2011-06-09
      • 1970-01-01
      • 2011-09-25
      • 1970-01-01
      相关资源
      最近更新 更多