leon84
10-04-2007, 11:14
Salve,
devo comunicare con un dispositivo via seriale. Ho scritto le classi appositamente e ci riesco corretamente. Invio la stringa e il dispositivo mi risponde correttamente. Tutto questo quando riesco fisicamente a collegare il dispositivo via seriale al Pc. Ci sono però casi in cui il dispositivo è remoto e per contattarlo utilizzo due modem. Uno installato presso il dispositivo remoto l'altro collegato alla seriale del mio pc. Utilizzando le stesse procedure riesco a connettermi al dispositivo remoto attraverso il modem del pc ed esso mi risponde con "CONNECTED " seguito dalla velocità stabilità ma quando gli inoltro il comando ascii sembra non interpretarlo correttamente. Ora mi chiedo : perché di tutto questo ? occorre inizializzare il modem ? se si in che modo ? vi allego del codice :
public static void main(String[] args) {
// Serial porta_com = new Serial(args[0],Integer.valueOf(args[1]));
Serial porta_com = new Serial("COM1",115200);
porta_com.scrivi("ATDT xxxxxxxxxxxx");
try {
Thread.sleep(20000);
} catch (InterruptedException ex) {
ex.printStackTrace();
}
String buffer = null;
buffer = new String(porta_com.leggi());
System.out.println (buffer);
porta_com.write_owi("PLEIQ,MST,0,200");
try {
Thread.sleep(5000);
buffer = new String(porta_com.leggi());
} catch (InterruptedException ex) {
ex.printStackTrace();
}
try {
porta_com.download("pippo.txt",1);
} catch (Exception ex) {
ex.printStackTrace();
}
porta_com.chiudi();
}
}
Se vi serve altro chiedete pure ...
devo comunicare con un dispositivo via seriale. Ho scritto le classi appositamente e ci riesco corretamente. Invio la stringa e il dispositivo mi risponde correttamente. Tutto questo quando riesco fisicamente a collegare il dispositivo via seriale al Pc. Ci sono però casi in cui il dispositivo è remoto e per contattarlo utilizzo due modem. Uno installato presso il dispositivo remoto l'altro collegato alla seriale del mio pc. Utilizzando le stesse procedure riesco a connettermi al dispositivo remoto attraverso il modem del pc ed esso mi risponde con "CONNECTED " seguito dalla velocità stabilità ma quando gli inoltro il comando ascii sembra non interpretarlo correttamente. Ora mi chiedo : perché di tutto questo ? occorre inizializzare il modem ? se si in che modo ? vi allego del codice :
public static void main(String[] args) {
// Serial porta_com = new Serial(args[0],Integer.valueOf(args[1]));
Serial porta_com = new Serial("COM1",115200);
porta_com.scrivi("ATDT xxxxxxxxxxxx");
try {
Thread.sleep(20000);
} catch (InterruptedException ex) {
ex.printStackTrace();
}
String buffer = null;
buffer = new String(porta_com.leggi());
System.out.println (buffer);
porta_com.write_owi("PLEIQ,MST,0,200");
try {
Thread.sleep(5000);
buffer = new String(porta_com.leggi());
} catch (InterruptedException ex) {
ex.printStackTrace();
}
try {
porta_com.download("pippo.txt",1);
} catch (Exception ex) {
ex.printStackTrace();
}
porta_com.chiudi();
}
}
Se vi serve altro chiedete pure ...