Arduino для последовательной связи Java NetBeans с библиотекой jSerialComm с использованием NetBeans, но вывод неправильный - PullRequest
0 голосов
/ 09 марта 2019

Это мой код:

package test1;

/**
 *
 * @author ECS
 */
import com.fazecast.jSerialComm.*;
import java.io.IOException;
import java.io.InputStream;
import java.util.Scanner;


public class Test1 {


    public static void main(String[] args) throws IOException {

        SerialPort ports[]=SerialPort.getCommPorts();
        System.out.println("Select a port: ");
        int i=0;
        for(SerialPort port:ports){
            System.out.println(i++ +". "+ port.getSystemPortName());

        }
        Scanner s=new Scanner(System.in);
        int choosenport=s.nextInt();
        SerialPort port=ports[choosenport-1];
        if(port.openPort())
        {
            System.out.println("Succesfully open port: ");
        }else{
            System.out.println("Unable to open port!");
            return;
        }

        port.setComPortTimeouts(SerialPort.TIMEOUT_SCANNER, 0, 0);

        String newdata=String.valueOf(port.getInputStream());
        Scanner data=new Scanner(newdata);

        System.out.println(data);
        while(data.hasNextLine()){
            System.out.println(data.nextLine());
        }

    }

}

, и это вывод моего последовательного монитора в Arduino IDE. Вывод arduino

Вывод моей java-программы такой:

Select a port: 
0. COM1
1. COM23
1
Succesfully open port: 
java.util.Scanner[delimiters=\p{javaWhitespace}+][position=0][match valid=false][need input=false][source closed=false][skipped=false][group separator=\,][decimal separator=\.][positive prefix=][negative prefix=\Q-\E][positive suffix=][negative suffix=][NaN string=\Q�\E][infinity string=\Q∞\E]
com.fazecast.jSerialComm.SerialPort$SerialPortInputStream@1405ef7

На самом деле я понятия не имею, почему это результат.

Он успешно открывает порт, но по какой-то причине не выводит то, что выводит последовательный монитор Arduino.Я пытался изменить вывод последовательного монитора Arduino на цифры, но все равно всегда получал один и тот же результат.Я надеюсь, что кто-то может просветить меня об этом.Он работает нормально, но вывод для меня настоящая загадка.Я начинающий, когда дело доходит до программирования, и я только что столкнулся с этой библиотекой jSerialComm несколько дней назад.Буду очень благодарен за любые предложения.

...