Sunteți pe pagina 1din 5

Ingenieria

de Telecomunicaciones Materia: Transmisin de Datos Facultad Tecnolgica Docente: Ing. Cesar F. Lozano Mantilla Universidad de Aquino Bolivia Univs.: Choque Daniel Saucedo Amner Butron David CDIGOS EN TRANSMISIN DE DATOS Fecha de emisin: 19 de sep. de 2012 Fecha de entrega: 20 de sep. de 2012 1

HARDWARE

ARQUITECTURA DEL CABLE. Prototipo de modulo RECEPTOR. El cable en cuestin consta de 2 entradas hembra DB9. Para el caso de la conexin de las 2 PCs, es necesario una arquitectura cruzada. Como se detalla en la siguiente tabla: Tabla 2. Descripcin del sentido de la conexin de los pines RS232 DB-9

CONSTRUCCION DEL CABLE. Para la construccin del cable se usaron los siguientes materiales. Grafico 12. Materiales Necesarios para la fabricacin del cable. A) Pistola para soldar cautil. B) Multitester. C) Pasta para soldar (fundente). D) Alambre de Estao. E) Capuchos para el conector DB9. F) Cable de 9 hilos para transmisin de datos. G) Desarmadores. H) Navaja Cutter.

I) Puertos DB9 (Serial COM). Con la ayuda del cutter, alineamos ambos extremos del cable de datos. Para esta practica

solo hacemos uso de 2 de los 9 hilos. En realidad no existe una convencin clara de que colores usar para cada pines, ya que estos pueden variar de fabricante en fabricante. Pero para mantener un poco de orden usaremos la siguiente distribucin:

ENVIO Y RECEPCION DE DATOS A TRAVES DEL PUERTO SERIAL DE LA PC - APLICACIN: CONEXIN ENTRE 2 PCS, Y PRUEBAS HACIENDO USO DE JAVA. www.laspatasdelchip.blogspot.com


2 SOFTWARE La librera clsica de java para logra la comunicacin a travs del puerto COM, es javax.comm, pero las implementaciones nativas de esta librera estn hechas para los sistemas LINUX/UNIX. Adems ya no existe soporte actualizado para esta librera, por lo que fue necesario optar por una mejor opcin. Giovynet nos da la posibilidad de manejar fcilmente el puerto serie, y adems es compatible perfectamente con Microsoft Windows. La pagina oficial de Giovynet es: http://java.giovynet.com/Giovynet/ . Mas adelante en la implementacin de los mdulos explicaremos algunas componentes de esta librera. Los puertos en Giovynet deben ser instanciados previamente. Sern del tipo SerialPort. Podemos listar los puertos disponibles con el mtodo getFreeSerialPort(): Luego definimos un tipo de dato parmetro del tipo giovynet.serial.Parameter, con este podemos definir todos los parmetros que tendr nuestro puerto como son port, baudRate, byteSize,stopBits, parity.

SerialPort serialPort = new SerialPort();List<String> portsFree = serialPort.getFreeSerialPort(); for (String free : portsFree) {System.out.println(free);

Parameters param = new Parameters(); param.setPort("COM2"); param.setBaudRate(Baud._460800); Com com = new Com(param);

Para enviar datos, Giovynet Driver utiliza la clase giovynet.serial.Com. Esta dispone de tres mtodos:

mtodo sendArrayChar.(char[] data) : void. mtodo sendSingleData (overloaded) : void. mtodo sendString(String data) : void. El intervalo de tiempo con que se envia cada elemento esta determinado por el mtodo: setMinDelayWrite( int milisegundos) de la clase giovynet.serial.Parameters Para recibir datos, Giovynet Driver utiliza la clase giovynet.serial.Com, que dispone de cinco mtodos: mtodo receiveSingleChar() : char. mtodo receiveSingleDataInt() : int. mtodo receiveSingleString() : String. mtodo receiveToString(int amount) : String mtodo receiveToStringBuilder(int untilAmount, StringBuilder stringBuilder) : void. 
Para enviar caracteres de control se recomienda utilizar su representacin decimal o hexadecimal con el mtodo sendSingleData(), de la clase giovynet.serial.Com. Por ejemplo el siguiente cdigo enva el smbolo ACK (acknowledge):

Parameters param = new Parameters (); param.setPort ("COM1"); param. setBaudRate (Baud._9600) Com1 = new Com Com (param); int ack = 6 / / The integer representation of ACK in ASCII code is 6. data = com1.sendSingleData (ack);com1.close ();

DISENO DE INTERFAZ GRAFICA

Grafico 7. Prototipo de modulo EMISOR. b) El modulo RECEPTOR constara simplemente de un rea de texto recibir los

Para recibir caracteres de control se recomienda obtenerlos en representacin decimal o hexadecimal, usando el mtodo receiveSingleDataInt(), de la clase giovynet.serial.Com. Por ejemplo, el siguiente cdigo imprime en pantalla "OK" cuando recibe el smbolo ACK.

public static void main(String[] args)throws Exception{ Parameters param = new Parameters(); param.setPort("COM1"); param.setBaudRate(Baud._9600); Com com1 = new Com(param);int ack=06; //The integer representation of ACK in ASCII code is 06. int data=0;while(true)data=com1.receiveSingleDataInt(); if (data==ack){System.out.println("OK");break;}}com1.close();}

S-ar putea să vă placă și