Manuelinux

I don't want to grow up

Manejando el puerto serial en java

RXTX es una clase diseñada para hacer uso de la commAPI de java que nos ofrece controlar el puerto serial y paralelo de nuestra computadora en varias arquitecturas y sistemas operativos.

Para hacer uso de esta tecnología primero hay que descargar el .jar de rxtx desde aqui ademas de encontrar la libreria necesaria para nuestro sistema operativo y arquitectura dentro del ToyBox del proyecto

Una vez que tenemos ambos archivos creamos un proyecto nuevo en netbeans o eclipse y añadimos una referencia al RXTXcomm.jar que previamente descargamos para que pueda ser importado dentro de nuestro codigo. El archivo de librería en el caso de sistemas GNU/Linux debe ser copiado al directorio /usr/lib y en el caso de sistemas windows debemos ubicar el archivo .dll en el directorio donde se esta ejecutando la aplicación.

Y para empezar un pequeño script para descubrir los puertos disponibles en nuestro sistema. Lo primero es importar las clases necesarias agregando la siguiente linea:

import gnu.io.*; y después situamos la función que enumera los puertos y la función que nos regresa el tipo de puerto.

static void listPorts()

{

java.util.Enumeration portEnum = CommPortIdentifier.getPortIdentifiers();

while ( portEnum.hasMoreElements() )

{

CommPortIdentifier portIdentifier = portEnum.nextElement();

System.out.println(portIdentifier.getName() + “ - ” + getPortTypeName(portIdentifier.getPortType()) );

}

}

static String getPortTypeName ( int portType )

{

switch ( portType )

{

case CommPortIdentifier.PORT_I2C:

return “I2C”;

case CommPortIdentifier.PORT_PARALLEL:

return “Parallel”;

case CommPortIdentifier.PORT_RAW:

return “Raw”;

case CommPortIdentifier.PORT_RS485:

return “RS485”;

case CommPortIdentifier.PORT_SERIAL:

return “Serial”;

default:

return “unknown type”;

}

}

Recordemos que en sistemas Windows los puertos se nombran como com1, com2 comN mientras en GNU/Linux son llamados /dev/ttySO(N)

Comentarios

domingo 17 de enero, 2010 @ 13:44

Lil0*

lo probare

viernes 2 de diciembre, 2011 @ 23:00

nic0man

soy nuevo en java…asi que cuando se refiere a colocarle una referencia al jar y lo demas, como se hace

gracias

viernes 2 de diciembre, 2011 @ 23:02

nic0man

se me olvido colocar que estoy trabajando en ECLIPSE

sábado 3 de diciembre, 2011 @ 01:19

nic0man

HEY MUCHAS GRACIAS….SOLUCIONADO

domingo 13 de mayo, 2012 @ 14:21

Sustirijiyo

hola, bueno, primero q nada soy nuevo en esto de programacion, y mas en java hehe, bueno mi pregunta seria, q codigos utilizarias para mandar datos al puerto serie por ejemplo, necesito mandar solo un numero constante, gracias.