Wednesday, May 26, 2021

Nuevos temas en Java - AdeJava y Enplista

 Hola de nuevo

Hemos subido a Github otros dos paquetes de software: AdeJava y Enplista

Todas las comunicaciones mostradas en estos paquetes utilizan un microcontrolador con comunicación serial RS-232 a 9600 baudios, ocho bits de datos, un bit de parada y sin control de flujo. 

Una vez que esto esté configurado en su PC utilizando una combinación de las clases Comm Port Identifier y Serial Port de la API Java Communications para la comunicación en serie, debería poder obtener acceso que le permita leer y escribir desde y hacia el puerto serie de su PC con Java. 

Las clase demuestra cómo recorrer en iteración la enumeración proporcionada por la clase Comm Port Identifier de la API de Java para seleccionar un puerto serie.

El primer elemento a crear es una interfaz de puerto serie. La interfaz de Java es un medio para ocultar diferentes implementaciones con el mismo comportamiento. Por ahora, crearé un acceso de puerto serie a un puerto local, pero luego querré proporcionar el mismo comportamiento en una red.

Lo primero que nota en la interfaz es que no contiene lógica, solo apéndices de métodos. Esto se debe a que una interfaz solo está ahí para definir el comportamiento, no para implementar ninguno de los comportamientos. El trabajo real será implementado por otra clase que implemente esta interfaz.
Lo segundo que notará son los nombres de los métodos. 

Por ejemplo, el método read () devolverá una matriz de bytes. El método readString () devolverá un String. El método de escritura no devolverá nada y tomará una matriz de bytes, ya que es solo un parámetro de entrada. También hay un método close () para liberar recursos y reenviar la propiedad para que otras clases o programas puedan acceder al objeto de implementación.

Hay dos métodos de acceso al puerto serie: set DTR para usar con las placas portadoras de Parallax Stamp y setTimeout como un medio para ayudar en la sincronización de paquetes de datos con el microcontrolador conectado.

Las tres cadenas estáticas se utilizan con un Web Serial Client definido con Read () y readString (). Tienen ambos métodos con parámetros de entrada porque a veces es mejor esperar la respuesta dentro de la clase del puerto serie, en lugar de llamar a Thread.sleep () externamente y luego llamar a dos métodos write ( ) y read ().

Si bien se puede usar la API directamente, me ha resultado más útil escribir una clase contenedora que simplifique el acceso.



No comments:

Post a Comment