发送键码而不是 midi,寻找简单的方法在 arduino USB 电缆上以节奏模式发送该信息

Posted

技术标签:

【中文标题】发送键码而不是 midi,寻找简单的方法在 arduino USB 电缆上以节奏模式发送该信息【英文标题】:Sending keycodes instead of midi, looking for simple ways to send that info with a rythm pattern on arduino usb cable 【发布时间】:2020-04-23 05:32:24 【问题描述】:

你知道是否有可能在键盘和电脑之间有一个设备,你在 arduino 上按一个录音键,然后按字母 P,arduino 把那个 P 保存在内存中,并且字母可以是分配给一个节奏模式并像这样发送到计算机:P...P...P...PPPP..PP etc..

信息的接收方式与带有物理键盘的计算机中的接收方式完全相同。

这是一个基于音乐的产品,因为现在 arduino 可以将 midi 发送到计算机,我需要一个应用程序来接收 midi 数据并将其转换为键码日期,所以 我正在寻找其他选择,以使最简单的系统成为可能

【问题讨论】:

类似this? 【参考方案1】:

通常密钥是 ASCII 编码的,因此无需从某个地方获取它们。所以你可以通过串行(usb)发送一个 char 数组作为 ASCII 字符

const char keyPresses[] = "P..P....P....P...P";

或 ASCII 编码(取决于使用的 Midi 软件)

const uint8_t keyPresses[] = 80,,,80,,,80,,80;

要让 Arduino 像键盘一样工作(因此 PC-SW 不知道它是 Arduino),请使用 HID library,其中包含适用于各种场景的示例。记录一系列键按下 PC 上的键盘记录器是东方式。保存到 txt 文件并复制并粘贴到 Arduino 代码或将字符转换为 ASCII 代码,例如here online

【讨论】:

以上是关于发送键码而不是 midi,寻找简单的方法在 arduino USB 电缆上以节奏模式发送该信息的主要内容,如果未能解决你的问题,请参考以下文章

C++ 中的 MIDI 音符消息

iOS录制一个midi文件

使用 Swift 和 CoreMIDI 发送和接收 MIDI

使用 NAudio 在 MIDI 文件中设置 MIDI 速度

在网页中发送 MIDI 信息

Azure web.config 永久重定向并获得 307 状态码而不是 301