0
我正在用Java编写串口到MIDI接口,串口数据来自Arduino并通过RXTX库进行处理。 不幸的是,使用来自Arduino网站link的建议代码,我无法检索串行数据。 示例代码在Arduino端使用Serial.println
,在Java端使用BufferedReader.readLine()
。在我的代码中,我没有通过Serial.println写一行,而是写了一条MIDI消息。Java Arduino串行读取
的Arduino:
void MIDI_TX(unsigned char MESSAGE, unsigned char PITCH, unsigned char VELOCITY)
{
status = MESSAGE + midichannel;
Serial.write(status);
Serial.write(PITCH);
Serial.write(VELOCITY);
}
我想读一个字符缓冲区的串行数据:
的Java
char buf[] = new char[3];
reader.read(buf);
int channel = (int)buf[0] ;
int key = (int)buf[1] ;
int vel = (int)buf[2] ;
,但我越来越怪异的数据...
你可以标记为已接受这个答案阅读,因此它不会对悬而未决的问题清单上显示?谢谢。 – dsolimano
对不起,我忘了。 – ascallonisi
NP,感谢让堆栈溢出一个更好的地方! – dsolimano