1

java甚至C++中有没有办法根据播放的声音发送电流?比方说,如果有很多声音播放,USB 端口将接收 20mA,如果声音很小,USB 端口将接收 5mA,如果没有声音,显然是 0 电流/电压。您不必过于深入地回答您的问题。只是也许指出我正确的方向并帮助我开始。我确实更喜欢 java 而不是 C++,那太好了。谢谢!

4

3 回答 3

4

这在提议的形式中是不可行的。电源要么打开,要么关闭,但不在两者之间。如果没有硬件,您就无法用它制作 LED 声级计......

然而,使用市售的、USB 就绪的构建块很容易做到这一点。有多种选择,但我更喜欢 Arduino。接上USB口,就可以像串口一样连接了,这并不难。为此,您需要完成以下操作:

  • 得到一个 Arduino
  • 用 C 写一个草图,接受您的输入,比如说 ASCII 编码的十进制整数值,并执行您想要的功能,例如通过具有可变占空比的 PWM 引脚为 LED 供电(Arduino 端)
  • 编写您的代码,获取您需要的任何内容(“发出多少声音”,无论这意味着什么......),在 PC 端,使用您喜欢的任何语言
  • 使用 PC 端代码的串行端口通信将数值发送到 Arduino
于 2012-11-13T07:23:29.630 回答
1

不可以。硬件不支持此功能。USB 端口不是 DAC。

于 2012-11-13T07:08:28.290 回答
1

我认为两者都很好,除非您知道您要使用的语言的概念。但是,由于编码简单,我还是更喜欢 java。您可以使用音序器或混音器并将其发送到您想要的端口。混音器可以处理发送/接收多个 MIDI 事件。但是在java中,sound API并没有太大的进步,但是在c++中你可以使用python的大库,它可以帮助你获取频率或电压。在java中,功能有限,有时你需要添加外部库或预制FFt(我讨厌这部分)。就是这样!祝你好运

于 2012-11-13T08:19:19.433 回答