Hallo,
ich habe gerade ein Problem, das ich mir nicht erklären kann, ich habe folgenden Code zum Com-Port auslesen:
Problem ist hierbei: bei mir zuhause am PC läuft dieser Code ohne Probleme, wenn ich es hier an meinem Arbeistplatz-PC im Büro laufen lasse brigt er keine Werte: weil der Inputstream nach "int length = inputStream.read();" leer ist und somit inputStream.available() = 0. beides sind 64-bit Systeme - es kann doch auch nicht an unterschiedlichen Java-versionen lieget?
--> ganz krank ist es, wenn ich es im Debug-Mode laufen lasse und vor "int length = inputStream.read();" einen Break setze und dann weiterlaufen lasse, dann funktioniert es.
Gruß
Dirk
ich habe gerade ein Problem, das ich mir nicht erklären kann, ich habe folgenden Code zum Com-Port auslesen:
Java:
public void serialEvent(SerialPortEvent evt) {
if (evt.getEventType() == SerialPortEvent.DATA_AVAILABLE) {
try {
System.out.println(inputStream.available());
int length = inputStream.read();
System.out.println(inputStream.available());
System.out.println(length);
byte[] response = new byte[length];
System.out.println(inputStream.available());
int intArray[] = new int[length];
for (int i = 0; i < length && inputStream.available() > 0; i++) {
int value = inputStream.read();
response[i] = (byte) value;
System.out.println("Value: " + i + " bi: "
+ Integer.toBinaryString(value) + " int: " + value
+ " byte: " + response[i]);
intArray[i] = value;
}
........
--> ganz krank ist es, wenn ich es im Debug-Mode laufen lasse und vor "int length = inputStream.read();" einen Break setze und dann weiterlaufen lasse, dann funktioniert es.
Gruß
Dirk