【问题标题】:Java Arduino Serial ReadJava Arduino 串行读取
【发布时间】:2014-07-06 10:40:44
【问题描述】:

我正在用 Java 制作一个串行到 MIDI 接口,串行数据来自 Arduino,并通过 RXTX 库进行处理。 不幸的是,使用来自 Arduino 网站link 的建议代码,我无法检索串行数据。 示例代码在 Arduino 端使用 Serial.println,在 Java 端使用 BufferedReader.readLine()。在我的代码中,我不是通过 Serial.println 写一行,而是一条 MIDI 消息。

阿杜诺

void MIDI_TX(unsigned char MESSAGE, unsigned char PITCH, unsigned char VELOCITY) 
{
  status = MESSAGE + midichannel;
  Serial.write(status);
  Serial.write(PITCH);
  Serial.write(VELOCITY);
}

我尝试读取 char 缓冲区上的串行数据:

Java

char buf[] = new char[3];
reader.read(buf);
int channel = (int)buf[0] ;
int key = (int)buf[1] ;
int vel = (int)buf[2] ;

但我得到了奇怪的数据...

【问题讨论】:

    标签: java serial-port arduino midi


    【解决方案1】:

    已解决: 这只是port.setSerialPortParams 中的一个错误,我以 115200 的波特率写入但以 9600 的速度读取。

    【讨论】:

    • 您能否将此答案标记为已接受,这样它就不会出现在未回答的问题列表中?谢谢。
    • NP,感谢您让 Stack Overflow 变得更好!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多