Inicio > Java > Java Parallel port interfacing in Win32 [Solucion 02]

Java Parallel port interfacing in Win32 [Solucion 02]

Anteriormente habia puesto una solucion a escribir datos por puertoParalelo en java, ahora dejare otra solucion que encontre xD

Pasos:

  1. Descargar este archivo ParPort-win32.zip y descomprimirlo
  2. Copiar parport.dll y pegar en el directorio del jdk/bin (En mi caso seria C:\Program Files\Java\jdk1.6.0_05\bin\ )
  3. Descargar este archivo UserPort.zip y descomprimirlo en una carpeta
  4. Copiar UserPort.SYS en %windir%\system32\drivers
  5. Ejecutar UserPort.exe y apretar Start

Con esos pasos Tenemos Lista otra Solucion.

Ahora solo es cosa de Programar

Copiamos ParallelPort.java en nuestros Proyectos

package parport;

public class ParallelPort {

/** The port base address (e.g. 0x378 is base address for LPT1) */
private int portBase;

/** To cunstruct a ParallelPort object,
* you need the port base address
*/
public ParallelPort (int portBase)
{
this.portBase = portBase;
}

/** Reads one byte from the STATUS pins of the parallel port.
*
* The byte read contains 5 valid bits, corresponing to 5 pins of input
* from the STATUS pins of the parallel port (the STATUS is located
* at "portBase + 1", e.g. the STATUS address for LPT1 is 0x379).
*
* This diagram shows the content of the byte:
*
*  Bit | Pin # | Printer Status  | Inverted
* -----+-------+-----------------+-----------
*   7  |  ~11  | Busy            |   Yes
*   6  |   10  | Acknowledge     |
*   5  |   12  | Out of paper    |
*   4  |   13  | Selected        |
*   3  |   15  | I/O error       |
*
* Note that Pin 11 is inverted, this means that "Hi" input on pin
* means 0 on bit 7, "Low" input on pin means 1 on bit 7.
*/
public int read ()
{
return ParallelPort.readOneByte (this.portBase+1);
}

/** Writes one byte to the DATA pins of parallel port.
* The byte is written to the DATA pins of the port. The DATA pins are
* located at the base address of the port (e.g. DATA address for LPT1
* is 0x378).
*
* This diagram shows how the byte is written:
*
*  Bit | Pin # | Printer DATA
* -----+-------+--------------
*   7  |   9   |   DATA 7
*   6  |   8   |   DATA 6
*   5  |   7   |   DATA 5
*   4  |   6   |   DATA 4
*   3  |   5   |   DATA 3
*   2  |   4   |   DATA 2
*   1  |   3   |   DATA 1
*   0  |   2   |   DATA 0
*/
public void write (int oneByte)
{
ParallelPort.writeOneByte (this.portBase, oneByte);
}

/** Reads one byte from the specified address.
* (normally the address is the STATUS pins of the port)
*/
public static native int readOneByte (int address);

/** Writes one byte to the specified address
* (normally the address is the DATA pins of the port)
*/
public static native void writeOneByte (int address, int oneByte);

static
{
System.loadLibrary("parport");
}
}

y asi lo usamos:
Clase Aplicacion.java

import parport.ParallelPort;
public class Aplicacion {
	private ParallelPort lpt1;
	public Aplicacion () {
		lpt1 = new ParallelPort(0x378);
		lpt1.write(255);
	}
}

Ahí tenemos otra forma de enviar 255 byte’s xD

Saludos

Categorías:Java Etiquetas: , , , ,
  1. febrero 13, 2014 a las 12:12 am

    realmente funciona?

  1. diciembre 17, 2008 a las 1:09 am

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: