2017-12-20 14 views
0

RXTX 라이브러리 및 Arduino에 문제가 있습니다. Arduino 직렬 출력에서 ​​얻은 변수를 Java 코드에 선언 된 변수에 저장하고 사용하려고합니다. 그것은 어떤 행동을 실행하는 것입니다. 이것은 Arduino에서 직렬 출력을 읽는 데 사용하는 코드의 일부입니다.RXTX 라이브러리를 사용하여 Arduino에서 Java로 직렬 통신 데이터 저장

이제이 코드에서 시작하는 데이터를 어떻게 저장할 수 있습니까?

초음파 센서에서 얻은 데이터를 저장하고 Java GUI에 표시해야합니다.

public void serialEvent(SerialPortEvent evt) { 
    if (evt.getEventType() == SerialPortEvent.DATA_AVAILABLE) { 
    try { 
     byte singleData = (byte)input.read(); 
     if (singleData != NEW_LINE_ASCII) { 
     logText = new String(new byte[] { singleData }); 
     finestra.logArea.append(logText); 
     } else { 
     finestra.logArea.append("\n"); 
     } 
    } 
    catch (Exception e) { 
     logText = "Failed to read data. (" + e.toString() + ")"; 
     finestra.logArea.setForeground(Color.red); 
     finestra.logArea.append(logText + "\n"); 
    } 
    } 

이 부분 코드는 serial에서 온 모든 것을 읽는 것입니다.

답변

0

왜 RxTx 대신 Javino 미들웨어를 사용하려고합니까?

Javino j = new Javino(); 
String receivedMessage = new String(); 
if (j.requestData("COM3","hi")) 
    receivedMessage = j.getData(); 

그리고 (메인 루프 내부) 아두 이노 코드 :

자바 코드는 그렇게 될 것입니다

if(javino.availablemsg()){ 
    msg = javino.getmsg(); 
} 

if (msg=="hi) { 
    javino.sendmsg("Your Value"); 
} 

msg = ""; 

그리고 그것은이다.