- Puerto paralelo – Puertos de estado
- Puerto paralelo – Puertos de control
- Parallel Port-tierra Pins
- Informe del código
- Bibliografía
Un puerto contiene un conjunto de líneas de señal que la CPU envía o recibe datos con otros componentes.
Nosotros usamos los puertos para comunicarse a través de modem, impresora, teclado, ratón, etc.
En la señalización, señales abiertas son "1" y las señales de cierre son "0" por lo que es como el sistema binario. Un puerto paralelo de 8 bits envía y recibe 5 bits a la vez. El puerto serie RS-232 envía sólo un poco a la vez, pero es multidireccional, por lo que puede enviar y recibir 1 bit 1 bit a la vez
Puerto paralelo – Puertos de estado
Estos puertos se hicieron para la lectura de señales. El rango es como en los puertos de datos que son S0-S7.Pero S0, S1, S2 son invisibles en el conector (ver mi foto en el artículo). He mencionado estas son las señales de lectura, sino S0 es diferente, esto es poco para la bandera de tiempo de espera en el EPP (puerto paralelo mejorado) puertos compatibles. La dirección de este puerto de estado es 0x379. Esto siempre se refieren a "DATA +1" y se puede enviar 5 datos numéricos de los 10 – 11 – 12 – 13 – 15 pines XX. Entonces, ¿cómo podemos llegar a los puertos de datos? Es simple: cada puerto paralelo tiene una dirección. En Windows 2000, puede ver la suya en Configuración> Panel de control> Sistema> Hardware> Administrador de dispositivos> Puertos (COM & LPT)> Puerto de impresora (LPT1) => Propiedades en Ajuste de Recursos Recursos> y se puede ver su dirección para su paralelo puerto. Por Ejemplo: El mío es 0378-037F. Esto es hexadecimal como en matemáticas (mod 16). 0x378 pertenece al 888 en forma decimal. De esta manera usted puede buscar el puerto com o direcciones de puerto de juegos. Vamos a ilustrar estos bits con un ejemplo de impresora:
S0: Este bit se hace mayor (1) si una operación de tiempo de espera en el modo EPP.
S1: No se utiliza (tal vez para la decoración :))
S2: Mayormente no se utiliza pero en algún momento este bit indica el estado de corte (PIRQ) del puerto
S3: Si la impresora determina un error llega a ser menor (0). Que se llama nError o nFault
S4: es alta (1) cuando las entradas de datos están activas. Lo que se llama Selección
S5: es alta (1) cuando no hay papel en la impresora. Que se llama PaperEnd, PaperEmpty o PError
S6: envía señales de bajo impacto cuando la impresora tiene un un byte de datos. Que se llama nAck o nAcknowledge
S7: Este es el pin sólo invierte en el conector (ver mi mesa en el artículo). Si la impresora está ocupada y no puede obtener los datos adicionales que este pin se reduce. Que se llama Busy
Puerto paralelo – Puertos de control
Este puerto utiliza generalmente para la salida, pero estos pueden ser utilizados para introducir. El rango es como en los puertos de datos C0-C7 pero C4, C5, C6, C7 son invisibles en el conector. Y la dirección es 0x37A
C0: Este pasador se invierte. Se envía un comando para leer D0-D7 en el puerto. Cuando se inicia el equipo es alto en el conector. Que se llama nStrobe
C1: Este pasador se invierte. Se envía un comando a la impresora para alimentar a la línea siguiente. Es alto en el conector después de la máquina comienza. Que se llama Auto LF
C2: Este pin es para restablecer la impresora y borrar el búfer. Que se llama nInit, nInitialize
C3: Este pasador se invierte. Envía un alto (1) para la apertura de las entradas de datos. Es baja después que la máquina arranca. Que se llama nSelectIn
C4: abre la operación de corte de la impresora. No visible en el conector
C5: Establece el control de la dirección en los puertos multidireccionales. No visible en el conector
C6: No se utiliza y también no visible en el conector
C7: Medio no se utiliza, pero se utiliza como un C5 en algunos puertos. No visible en el conector
Parallel Port-tierra Pins
Estos son (G0 – G7) los pines de 18 a 25. Éstos se utilizan principalmente para completar el circuito.
Después de estos usé puertos de datos en mi solicitud porque hay pins invertidos en los puertos de control y de estado. He aquí una explicación para los pines invertidos: Si bien usted no está enviando ninguna señal al puerto de datos está en posición cerrada como "00000000" para los 8 pines tienen ninguna tensión sobre el mismo (0 voltios) Si envía decimal "255" (. binario "11111111") cada pin (D0-D7) tiene un Volt +5 … Por otro lado, si utiliza puertos de control, no se invierten los pins que son C0, C1 y C3 por lo que mientras enviamos nada al puerto de control de su comportamiento es "0100" en binario (decimal "11") … Si recibo e-mails de ustedes me puede hacer que las aplicaciones que utilizan los puertos de control y de estado
Parte eléctrica
Materiales0.50 metros de cable de puerto paralelo
9 cables ensamblaje
Un Breadboard
8 Leds (2,5 V)
8 Resistencias (470 ohm)
Un multímetro
Antes de la codificación
No se puede llegar a los puertos directamente en NT, 2000 y XP, debido a su núcleo y sus controladores de impresora
Primero se hizo el código
Lo ponemos en marcha, se tiene múltiples menú de selección de arranque de Windows 98, cuando empieza no hay luz en el circuito, pero en Win2000 y XP todas las 8 luces están encendidas para que sepamos que la señal se acerca
Diferentes librerías a implementar
java.io.FileReader;
En la ejecución de este programa pude observar la forma de cómo se abre un y se lee un archivo de texto utilizando las clasesFileReader, BufferedReader y leyendo cada línea del archivo utilizando el método readLine.
Se pide el nombre del archivo que se desea abrir y luego le pasan el nombre a la clase FileReader y lo toma un objeto de dicha clase, luego ese objeto se pasa a la claseBufferedReader y lo toma un objeto de esa clase para poder utilizar su método readLine y leer cada línea del archivo de texto
java.util;
Importa todas las clases e interfaces contenidas en el paquete java.util (como Vector, List, Map, Iterator, etc…) para que puedan ser utilizadas dentro del programa
giovynet
Es un conjunto de secuencias de comandos denominadas (ESC/POS), que permiten al Sistema Operativo interactuar con dicho dispositivo y muchas veces con una interfaz de usuario estándar.
Usando drivers Giovynet para gestionar la comunicación del puerto serie con Java para Windows.
giovynet.nativelink.SerialPort;
giovynet.nativelink.SerialPort;
giovynet.permissions.Info;
giovynet.serial.Baud;
giovynet.serial.Com;
giovynet.serial.Parameters;
Se suelen implementar diferentes variables y parámetros como:
parameters.setPort, parameters.setBaudRate, parameters.setParity, parameters.setByteSize
Codigo
try{
SerialPort serialPort = new SerialPort();
List lstFreeSerialPort = serialPort.getFreeSerialPort();//Gets a list of serial ports free
if(lstFreeSerialPort.size()>0){//if there are free ports
Parameters parameters = new Parameters();//Create a parameter object
parameters.setPort(lstFreeSerialPort.get(0));//assigns the first port found
// parameters.setPort("COM3"); //assigns the first port found
parameters.setBaudRate(Baud._9600); //assigns baud rate
parameters.setByteSize("8"); // assigns byte size
parameters.setParity("N"); //assigns parity
com = new Com(parameters); // With the "parameters" creates a "Com"
}
}catch(Exception ex)
{
Donde aquí totalmente se implementa los puertos para el funcionamiento.
Donde se puede organizar el codigo para diferentes leds.El método main se lo puede ralizar de acuerdo a la necesidad de cada led que se desea poner en funcionamiento.
Se recomienda la descarga de las diferentes librerías con los respectivos bin y src para que de esta forma la importación sea eficiente no cause errores de compilación tipo .jar
http://www.codeproject.com/Articles/4981/I-O-Ports-Uncensored-1-Controlling-LEDs-Light-Emit
http://resource-directory.com/forums/giovynet-java-serial-comm-event-listener-222487.asp
http://forodejava.com/showthread.php/2852-Que-es-el-bufferedReader-ayuda-con-imports
Autor:
Espartaco123
Universidad Autónoma de Chihuahua
Informe de proyecto