Foros del Web » Programación para mayores de 30 ;) » Java »

Comunicacion Puerto Com con Java

Estas en el tema de Comunicacion Puerto Com con Java en el foro de Java en Foros del Web. Buen dia, tengo un problema, quiero hacer una aplicacion en Java(donde se apenas lo basico) para comunicarme con un dispositivo serial, utilizando Netbeans V 7.0, ...
  #1 (permalink)  
Antiguo 14/07/2011, 13:13
 
Fecha de Ingreso: mayo-2008
Mensajes: 12
Antigüedad: 15 años, 10 meses
Puntos: 0
Comunicacion Puerto Com con Java

Buen dia, tengo un problema, quiero hacer una aplicacion en Java(donde se apenas lo basico) para comunicarme con un dispositivo serial, utilizando Netbeans V 7.0, baje una extencion llamada giovynet, pero hasta el momento no he podido hacer la comunicacion con el dispositivo, inclusive no he podido hacer la comunicacion entre dos puertos seriales virtuales. La plataforma que estoy utilizando es Windows XP con SP3. el jdk es la version 1.6.0.26, vi en el internet una extencion que se llama comm propia de Java, pero no soporte win, solo linux y solaris.
Si tienen un manual paso a paso (for dummies) se los agradeceria.
Les agrego el codigo fuente que baje de una pagina pero no me ha funcionado

package serialii;
import giovynet.nativelink.SerialPort;
import giovynet.serial.*;
import java.awt.*;

import org.jdesktop.application.Application;
import org.jdesktop.application.SingleFrameApplication;

/**
* The main class of the application.
*/
public class SerialIIApp extends SingleFrameApplication {

static SerialPort puerto=new SerialPort();
static java.util.List<String> listaPuertos;
static Com com3;
static Com com2;


@Override protected void startup() {
show(new SerialIIView(this));
}

/**
* This method is to initialize the specified window by injecting resources.
* Windows shown in our application come fully initialized from the GUI
* builder, so this additional configuration is not needed.
*/
@Override protected void configureWindow(java.awt.Window root) {
}

/**
* A convenient static getter for the application instance.
* @return the instance of SerialIIApp
*/
public static SerialIIApp getApplication() {
return Application.getInstance(SerialIIApp.class);
}

/**
* Main method launching the application.
*/
public static void main(String[] args) throws Exception {
launch(SerialIIApp.class, args);
listaPuertos = puerto.getFreeSerialPort();
String recibido = "";
String caracter = "";

for(String string : listaPuertos){

System.out.println(string);

}

Parameters param = new Parameters();
param.setPort("COM2");
param.setBaudRate(Baud._9600);
param.setMinDelayWrite(0);
com2 = new Com(param);
com2.sendSingleData("1");
com2.close();

Parameters param2 = new Parameters();
param2.setPort("COM3");
param2.setBaudRate(Baud._9600);
param2.setMinDelayWrite(50);
com3 = new Com(param2);
char data2;
int i=1;
caracter = com3.receiveSingleString();/*
while(!caracter.equals("\n") ){
i++;
caracter = com3.receiveSingleString();
System.out.println(caracter);
recibido+=caracter;
}*/
System.out.println("--"+i);
System.out.println(recibido);

com3.close();


}
}
  #2 (permalink)  
Antiguo 15/07/2011, 18:32
Avatar de nup_  
Fecha de Ingreso: noviembre-2010
Mensajes: 265
Antigüedad: 13 años, 5 meses
Puntos: 32
Respuesta: Comunicacion Puerto Com con Java

Hola:

Hace tiempo trabajé con el API RxTx para comunicarme con un equipo a través del puerto serie.
La puedes encontrar aki:
http://rxtx.qbang.org/wiki/index.php/Main_Page

En esa misma página están las instrucciones para instalarla y hay ejemplos de uso.
Una rápida búsqueda en google de "rxtx" te puede dar más recursos y ejemplos.

saludos;

Nup_
  #3 (permalink)  
Antiguo 01/08/2011, 12:09
 
Fecha de Ingreso: mayo-2008
Mensajes: 12
Antigüedad: 15 años, 10 meses
Puntos: 0
Respuesta: Comunicacion Puerto Com con Java

Muchas gracias por tu respuesta, voy a hacer la prueba

Etiquetas: comunicacion, netbeans, puerto
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:28.