Input/Output Arduino input.

DanielsLPecke

Mitglied
Hallo.
Ich möchte zum Arduino sowas wie "status1password" senden und dann entweder "true" oder "false" zurückbekommen.
Der Arduino Code ist schon fertig.
Ich habe schon angefangen. Mein Versuch:
Java:
refresh.addActionListener(e->{
                Thread t = new Thread(){
                    private Scanner s;

                    @Override
                    public void run(){
                        for(int i = 0; i<10;i++){
                            System.out.println("Okay i: "+i);
                            InputStream iS = chosenPort.getInputStream();
                            s = new Scanner(iS);
                            sendToArduino("stts"+i+pw.getText(), chosenPort);
                            while(!s.hasNextLine()){}

                            if(s.nextLine() == "true")
                                Log("Relai",i+" ist an");
                            if(s.nextLine() == "false")
                                Log("Relai",i+" ist aus");
                            try {
                                Thread.sleep(100);
                            } catch (InterruptedException e1) {    }
                        }
                    }

                 
                };
                t.start();
        });

Also der Arduino bekommt schonmal was. Er erkennt das auch. Ich muss nur den Java Code schreiben zum empfangen .
 

DanielsLPecke

Mitglied
HABE ES SELBST GELÖST :D

Code:
refresh.addActionListener(e->{
                Thread t = new Thread(){
                    private Scanner s;

                    @Override
                    public void run(){
                        for(int i = 0; i<10;i++){
                            System.out.println("Okay i: "+i);
                            InputStream iS = chosenPort.getInputStream();
                            s = new Scanner(iS);
                            sendToArduino("stts"+i+pw.getText(), chosenPort);
                            //while(!s.hasNextLine()){}
                            String msg = s.nextLine();
                            System.out.println(msg);
                            //Log("DEBUG",s.nextLine());
                            if(msg == "true")
                                Log("Relai",i+" ist an");
                            if(msg == "false")
                                Log("Relai",i+" ist aus");
                            try {
                                Thread.sleep(1000);
                            } catch (InterruptedException e1) {    }
                        }
                    }

                   
                };
                t.start();
        });
 

Flown

Administrator
Mitarbeiter
Schön, aber ich hätte da noch ein paar Verbesserungsvorschläge, die ich dir noch mitgeben möchte:
- Concurrent API nutzen (keine Threads mehr selbst starten)
- Scanner API richtig nutzen und boolean rausparsen lassen
- Nie String mit "==", sondern mit "equals" vergleichen
- Nie einen catch-Block leer lassen

Dann kann es unter Umständen so aussehen:
Java:
refresh.addActionListener(e -> {
    ExecutorService exec = Executors.newSingleThreadExecutor();
    exec.execute(() -> {
        Scanner s = new Scanner(chosenPort.getInputStream());
        for (int i = 0; i < 10; i++) {
            System.out.println("Okay i: " + i);
            sendToArduino("stts" + i + pw.getText(), chosenPort);
            boolean msg = s.nextBoolean();
            Log("Relai", i + " ist " + (msg ? "an" : "aus"));
            try {
                TimeUnit.SECONDS.sleep(1);
            } catch (Exception e1) {
                e1.printStackTrace();
            }
        }
    });
    exec.shutdown();
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
Mike80 Processing Programm fiert ohne Arduino ein Allgemeine Java-Themen 2
J Arduino – Processing – Java Allgemeine Java-Themen 0
G String an Arduino senden NullPointerException in PrintWriter Allgemeine Java-Themen 6
Meeresgott Java und Arduino Allgemeine Java-Themen 16
DanielsLPecke Input/Output Arduino komischer Fehler. Allgemeine Java-Themen 38
harrytut Java Input/Output Tests Junit Allgemeine Java-Themen 3
P Selenium . findElement . input Allgemeine Java-Themen 4
E Input/Output Mikro Input bekommen Allgemeine Java-Themen 4
G Input Frame Allgemeine Java-Themen 6
B In Java Methode mit generic input und output basteln? Allgemeine Java-Themen 4
MoxxiManagarm Credential Input Allgemeine Java-Themen 5
Kirby.exe Keyboard Input ohne Enter Allgemeine Java-Themen 43
T JSoup findet input Feld nicht?! Wie kann ich das Feld finden? Allgemeine Java-Themen 3
H Strategy Pattern - changeColor() Methode - input rgd oder hex einlesen Allgemeine Java-Themen 1
I Text aus Input-Box entnehmen und zuweisen Allgemeine Java-Themen 1
J Java Sound Api Sound input und Output auswählen Allgemeine Java-Themen 4
T ImageIO.read -> Can`t read input file Allgemeine Java-Themen 11
T Input und Outputstream , serielle Schnittstelle Allgemeine Java-Themen 1
H Security Manager (IIOException: Can't read input file!) Allgemeine Java-Themen 2
B Input/Output Konsolen input args Allgemeine Java-Themen 6
M Mikrofon Input simulieren Allgemeine Java-Themen 1
T Threads Input/Output im Thread - Datei ohne Inhalt Allgemeine Java-Themen 1
F FileOutput/Input Objekte Allgemeine Java-Themen 6
C System.in erhält Input von Tastatur. wo wird das festgelegt? Allgemeine Java-Themen 4
N Kalender Normen input/output Allgemeine Java-Themen 2
I Input in cmd Allgemeine Java-Themen 2
K Input file nicht lesbar Allgemeine Java-Themen 9
C Kompletter Pfad aus "input type=file" auslesen Allgemeine Java-Themen 3
B User-Input aus Zahlen und Operatoren - beste Umsetzung? Allgemeine Java-Themen 8
P Ascii Bild aus einem input file nur kommt nix im outputfile an?????? Allgemeine Java-Themen 5
D JOptionPane nur 1 Input möglich? Allgemeine Java-Themen 6
I input-/outputstream Allgemeine Java-Themen 6
T Wie kontinuierlichen asci input parsen? Allgemeine Java-Themen 3
N input programm Allgemeine Java-Themen 3
G Taushen der Input variablen einer method Allgemeine Java-Themen 14
J Binärdateien mit Input/Outputstream lesen und schreiben Allgemeine Java-Themen 3
O Input stream geht net Allgemeine Java-Themen 2
M BufferedReader input - hängt sich auf Allgemeine Java-Themen 4

Ähnliche Java Themen

Neue Themen


Oben