Hallo Freunde,
ich versuche aus einer seriellen Schnittstelle Daten zu empfangen.
Ich habe im Netz den unteren Code gefunden.
Es funktioniert außer, dass am Enden des Codes einpaar komische Rechtecke stehen. Wieso ?
Und beim byte[] readBuffer = new byte[8]; warum gerade 8 ?
Vielen Dank im Voraus
ich versuche aus einer seriellen Schnittstelle Daten zu empfangen.
Ich habe im Netz den unteren Code gefunden.
Es funktioniert außer, dass am Enden des Codes einpaar komische Rechtecke stehen. Wieso ?
Und beim byte[] readBuffer = new byte[8]; warum gerade 8 ?
Vielen Dank im Voraus
Code:
public void Test(MyFrame frame)
{
try{portId = CommPortIdentifier.getPortIdentifier("COM2");
serialPort = (SerialPort) portId.open("",1000);
}
catch(Exception exc){System.out.println("Fehler1 :"+exc);}
try {
is = serialPort.getInputStream();
serialPort.addEventListener(new commListener());
}
catch (Exception e) { System.out.println("Fehler2: "+e);}
serialPort.notifyOnDataAvailable(true);
try {serialPort.setSerialPortParams(9600,
SerialPort.DATABITS_8,
SerialPort.STOPBITS_1 ,
SerialPort.PARITY_NONE);}
catch (UnsupportedCommOperationException e) {}
}
public class commListener implements SerialPortEventListener{
public void serialEvent(SerialPortEvent event) {
if(event.getEventType()==SerialPortEvent.DATA_AVAILABLE){
byte[] readBuffer = new byte[8];
try {
while (is.available() > 0)
{
int numBytes = is.read(readBuffer);
}
String nachricht = new String(readBuffer);
frame.TextCode.append(nachricht);
}
catch (IOException e)
{
System.out.println("Fehler3: "+e);
}
}
}
}
}