credo di non comprendere esattamente l'uso delle operazioni di I\O infatti sto comunicando con un modem che è collegaato alla mia porta seriale e sto utilizzando gli esempi assieme alle java comm se utilizzo questa classe SimpleWrite:
import java.io.*;
import java.util.*;
import javax.comm.*;
public class SimpleWrite {
static Enumeration portList;
static CommPortIdentifier portId;
static String messageString = "ATI6\n";
static SerialPort serialPort;
static OutputStream outputStream;
static InputStream inputstream;
public static void main(String[] args) {
portList = CommPortIdentifier.getPortIdentifiers();
while (portList.hasMoreElements()) {
portId = (CommPortIdentifier) portList.nextElement();
if (portId.getPortType() == CommPortIdentifier.PORT_SERIAL) {
if (portId.getName().equals("COM4")) {
// if (portId.getName().equals("/dev/term/a")) {
try {
serialPort = (SerialPort)
portId.open("rs232", 2000);
} catch (PortInUseException e) {}
try {
outputStream = serialPort.getOutputStream();
} catch (IOException e) {}
try {
serialPort.setSerialPortParams(9600,
SerialPort.DATABITS_8,
SerialPort.STOPBITS_1,
SerialPort.PARITY_NONE);
} catch (UnsupportedCommOperationException e) {}
try {
outputStream.write(messageString.getBytes());
} catch (IOException e) {}
}
}
}
}
}
non invio al modem il comando ATI6??
se adesso faccio partire il codice relativo alla lettura non dovrebbe inviarmi la risposta? spero ma credo di non aver detto corbellerie ma ho un pò di confusione chiedo umilmente il vostro aiuto
p.s. le java comm mi funzionano e vedono le porte naturalmente ciao se avete del codice efficace ve ne sarei grato grazie di tutto