Realizando interfaces con el puerto paralelo
ADVERTENCIA: El puerto paralelo de la PC puede dañarse fácilmente si usted comete errores en los circuitos que usted conecta a este. Si el puerto paralelo esta integrado en placa madre (casi en todos los ordenadores nuevos) el puerto paralelo dañado puede costar caro (en muchos casos sera más barato reemplazar la placa madre). La apuesta más segura es comprar que una tarjeta barata de I / Ola cual tiene un puerto paralelo adicional usarlo para sus experimentos. Si logra dañar el puerto paralelo de esa tarjeta, entonces reemplazarlo sera fácil y barato.
El puerto paralelo del PC es de 25 hilos hembra conformado en un conector cannon en forma de D en la parte trasera de su PC. Sirve normalmente para conectar computadora para impresora, pero muchos otros tipos de hardware para este puerto están disponibles hoy. No todos los 25 hilo son necesarios siempre. Usualmente usted fácilmente puede hacer con sólo 8 hilos de salida (las lienas de datos) y la tierra de la señal. Esos pines de salida son adecuados para multitud de propósitos.
pin funcion 2 D0 3 D1 4 D2 5 D3 6 D4 7 D5 8 D6 9 D7 Pins 18,19,20,21,22,23,24 and 25 son todos pines de tierra.
Esos pins de datos son pines de nivel TTL. Esto quiere decir que pone idealmente 0V cuando están anivel bajo (0) de lógica y + 5V cuando están a nivel alto (1) de lógica. En realidad los voltajes pueden ser mas diferentes que el modelo ideal cuándo el circuito es cargado. La corriente de salida del puerto paralelo está limitada para sólo pocos miliamperios.
Simple circuitos de control con LED
Usted puede hacer circuito sencillo para governar un pequeño LED a traves del puerto paralelo. Los únicos componentes necesitados son un LED y una resistencia de 470 ohmes. Usted simplemente conecta el diodo y al ressuitencia en serie. Las reistencias son necesarios para delimitar la corriente tomada de puerto paralelo para un valor aceptado por LEDs normales y son todavía seguro (no cargando el chip paralelamente de babor). En el caso práctico la corriente de salida será de unos pocos milliamperios por LED, lo cual causará a un LED típico que se ilumina visiblemente, pero no obtiene un brillo intenso.
![]()
Hecho esto ,puede conectar 8 circuitos identicos also 8 hilos de datos :
![]()
El software de control es facil. Cuando mande a la salida un 1 el puien al que este coenctado hara que le led se ilumine. Cuando mande un cero este se apagara
![]()
![]()
Pograma de c ontrol para DOS (y Win9x)
El siguiente programa es un ejemplo cómo monitorear datos del LPT1 del puerto paralelo con su software. Este ejemplo directamente controla los registros paralelamente del puerto, así es que no funcionarao bajo alguna ejecución de tareas múltiples manejando sistema que no permitan eso. Funcionarao bastante bien bajo MSDOS. Usted puede mirar el pascal Borland 7.0 código (debería compilar también con anteriores versiones también) y luego puede hacer un download del LPTOUT.EXE compilado de programa. Esto funciona bastante bien en los sistemas de DOS y los sistemas del 95/98 Windows.
Program lpt1_output;
Uses Dos;
Var
addr:word;
data:byte;
e:integer;
Begin
addr:=MemW[$0040:$0008];
Val(ParamStr(1),data,e);
Port[addr]:=data;
End.
LPTOUT.EXE es un programa muy facil de usar. El programa toma un parámetro, lo cual es el valor de datos para enviar para el puerto paralelo. Ese valor debe ser entero en formato decimal (por ejemplo 255). Los números hexadecimales también pueden ser usados, pero deben ser precedidos por marca del $ (para ejemplo $FF). El programa no muestra ningun tipo de error para conservar la simplicidad des este si su número no está dentro de un formato formato correcto, entonces el programa enviará algún valor extraño al puerto.
Ejemplos
LPTOUT 0 : pone todos los pines a bajo nivel
LPTOUT 255 : pone todos los pines a nivel alto
LPTOUT 1 :pone el primer pin de datos a nivel alto y el resto a nivel bajo
Controlando algunos dispositivos reales
La idea de la interfaz citado anteriormente puede ser expandida para controlar alguna electrónica externa r simplemente añadiendo un circuito buffer para el puerto paralelo. La programación puede estar hecha de la misma forma que en los ejemplos anteriores.
Circuito Basico con optoacoplamiento
Uno de los simples circuitos optoaislador para circuitos de salida con el puerto paralelo es el siguiente(que se baso el IC 4N33 ):
![]()
El dispositivo 4N33 posee a un Darlington como transistor de salida es capaz de conducir uan carga de hasta 30 miliamperio de carga con toda seguridad. El voltaje máximo en el lado de salida es 30V. La aislamiento entrada y salida puede llegar hasta hasta el voltaje del 1500V. Puede conectar el lado de la entrada a la salida del puerto paralelo que usted quiere usar para contro. Luego usted asocia la entrada - al lado a la la salida de tierra. El lado de salida se conectara al circuito a ser controlado respetando la polaridad correcta. Este cirucito de ejemplo usó una resistencia de 1k kohm para delimitar la corriente de corriente de control (el circuito también debería operar adecuadamente con uan resistencia de 470 ohm). Debido a que la corriente alimentada para el optocoupler esy bajo (justamente poco miliamperios), la corriente del salida garantizada disponible del optoacoplador es baja. Si sted necesita sobre los 10 miliamperio salida (tal vez pudira ser si tienes un optoacoplador con CTR alto y el puerto paralelo con alta corriente de salida ). El circuito puede estar construido también utilizando un 4N32 que es muy similar al 4N33.
Carastericticas del 4N33 :
- El 4N32 y 4N33 son aisladores acoplados opticamente con un arseniuro de galio LED infrarrojo y un sensor solicon photodarlington.
- Very high current transfer ratio, 500 % Min.
- High isolation resistance
- Forward continuous current maximum 60 mA
- Output Collector-emitter breakdown voltage 30V
- Output can easily drive 50 mA current
- Output Power dissipation maximum 150 mW
- Isolation test voltage 5300V
Dispositivo electrico de potencia controlado con el puerto paralelo
Es posible controalr funtes de tension través de puerto paralelo con un circuito adecuado. Al controlar vcircuitos de potencia, usted necesita ser cuidadoso y saber lo que usted hace para hacerlo con toda seguridad. El voltaje de red puede matar si usted se pone en comunicación con él, y malas circuitos de control pueden llegar a incendiar su casa. La primera idea para el control de red es usar el circuito de arriba para controlara un rele que controlara el elelemento. El contacto del rele se usa para conectar el hilo cargado de fase yendo este al equipo que se quiera controlar. Un diseño de verdad circuito además del reler (más circuito de la interfaz paralelamente ) también deberia dimensionar un fusible del que cortará el poder pasando a través el rele en caso del corto circuito o sobrecarga en el equipo controlado. El fusible aquí se usa para proteger el rele de sobercargas. Un rele trabajará en aplicaciones donde el dispositivo se enciende y apaga raramente. Si usted conecta el dispositivo muy a menudo, entonces el rele puede acortar su edad mecánica y eléctrica, y en algunas aplicaciones también en el ruido causado por chispas que se forman cuando contactos del rele se abren y cierran la plana pueden causar ruido del frecuencia del radio. Otro componente adecuado para el control de energia. La función del circuito de debajo describe como controalr un rele de estado sólidocon el puerto paralelo el PC. El rele solido controla la el suministro de red al dispositivo.
![]()
El rele para esta aplicación debería ser adecuado para el voltaje de red y la corriente controladas al equipo (marcado con L en el cuadro). Los reles sólidos diseñados para la operación en AC proveen el aislamiento necesitado entre el lado de control de entrada y la red AC. El rele sólido debería ser usado según las notas de aplicación del fabricante y sus códigos eléctricos locales del equipo. Usted debería guardar el lado de AC y el lado de bajo voltaje aislado en todos los casos (aun en el caso de daño del equipo). Usted también debería meter un fusible evaluado en serie con el rele de estado sólido para proteger a este contra sobrecargas. Un fusible correcto de tamaño no protegerá el relev de estado sólido en contra de sobrecalentamientos para tomar demasiada corriente a través del rele. Reles sólidos pueden ser controlados directamente por el puerto sin componentes adicionales. Usted necesita seleccionar un rele de estado sólido en el que el voltaje controlado y el rango de voltaje de control puede tomar el voltaje que el puerto de la impresora devuelve (5V o algo menos). Para la operación fidedigna usted debería seleccionar un rele en el que puede funcionar hasta los voltajes de entrada del 3V y no tome demasiada corriente de control (un SSR que toma sólo pocos milliampreres es preferido porque la aptitud coetánea de salida del puertp paralelo está usualmente limitada para eso). Para garantizar que la operación es confiable con la conexión directa, sea seguro para medir que el voltage de control introduciendo al SSR está dentro del radio de acción especificado cuando el rele se controla para igualar el puerto (usted puede medir éste sin AC ).Hacer funcionar un rele sólido con más abajo del voltaje especificado de control puede llevar a ser una operación inconfiable al rele de estado sólido, y aun puede causar que algunos reles sólidos dejen de operar cuando con exceso sea cargado! Se logra también basar el voltaje de AC usando en parte componentes discretos. Aquí hay dos cirucuitos de ejemplo:
![]()
![]()
Circuito integrado de 8 salidas
Si usted quiere para hve una construcción compacta con hasta 8 salidas, entonces le recomendaría a usted que considere usar a ULN2803 IC que es fabricado por Allegro y varios otros fabricantes. Aquí está el pinput de este ULN203 IC:
![]()
El ULN2803 es un conductor de TTL-INPUT 50V 500mA NPN darlington de 8 bits. Presentando promedios continuos de corriente de carga para 500 miliamperio para cada uno de los conductores, el conjunto soporta una alta corriente del ULN2803A Darlington es idealmente satisfacido para interactuar entre sistema de circuitos lógico de bajo nivel y las cargas periféricas múltiples altas. Las cargas típicas incluyen reles, solenoides, motore spaso a paso, martillos estampados magnéticos, multiplexed LED y despliegues incandescentes, y calentadores. Los conductores no necesitan suministro de fuerza; El VDD r "común" es el cátodo común de los ocho diodos integrados de protección El ULN2803 está conectado entre cada unode las ocho ' salidas ' del puerto de la impresora y el dispositivo que controla. La salida ' dispositivo ' puede ser tan simple como un LED, un motor pequeño, o un relevador. Las entradas en la izquierda toman partido del IC que se halla directamente en disposición a estar conectado al puerto paraelo del PC. Las salidas son salida delcolector abierto (la salida queda puesta adecuadamente en tierra a través de transistor cuando la entrada correspondiente la línea va para la condición alta), así es que sirven para monitorear cargas diversas impulsadas a través de suministro de fuerza externo. El voltaje controlable máximo es 50V y la corriente máxima por canal es 500 miliamperio. Las salidas pueden ser igualadas para la capacidad superior de corriente de carga. Los lados de entrada y salida del IC tienen la masa comun que deben estar conectado tambiénal pin de tiera del ULN2803 IC. La línea "común" está conectada a un sistema de de protección de sobrevoltaje para impedir daño para el IC debido a "ulterior emf" cuando las cargas como motores y reles cambian de esatdo adelante y completamente. Esta línea "común" puede ser pues el ejemplo se conectó al suministro de fuerza revista que los suministros energizan para los reles. Usted también puede usar por ejemplo a 30V un zener conectado para esta línea como componente de proteción (los límites transmiten suministro de fuerza para el máximum menos de 30V). O usted puede asociar a un 12V zener rfom común para el suministro de fuerza del relevador positivo (las alcayatas de límites para energizar abastecen voltaje y 12V, no use más alto que suministro de fuerza del 30V). Aquí está un ejemplo de circuito de control que conduce de ocho LEDs con el ULN2803 :
![]()
Este circuito puede también usarse para conducir otros tipos de cargas, pues el ejemplo reles, bombillas pequeñas etcétera. Justamente reemplace la combinación positiva CONDUCIDA de resistencia con la carga que usted quiere (mientras la carga está dentro de las capacidades de la aptitud de paseo en coche de salida del ULN2803). Usted puede usar una diodo zener de 15V para este ciruito.
Leyendo las lineas de entrada del puerto paralelo
El puerto paralelo de la PC tiene 5 hilos de entrada. Esas entradas pueden aceptar señales TTL (= la lógica 0-0.7V 0, = lógica 2.4-5V 1). Usted le puede conectar una señal de salida del nivel de TTL para a ella directamente (recuerde conectar ambas masas). Usted puede conectar interruptores simples a las entradas conectando entre el del interruptor paralelamente a tierra der y puede introducir en la computadora alfiler, y luego añadiendo una resistencia e 10 lohm de pull-up entre los + 5V. Cuando el interruptor es activado, el hilo sale de la condición lógica 0. Usualmente es una buena idea aislar el PC de la fuente de la señal, y en este caso es usualmente una buena idea usar un optoacoplador
Los pines de entraa pueden ser leidos desde la direcion base del puerto de I/O del LPT + 1.
El significado de estos:
Ejemplo de unas pequeños trozos de codigo para leer el puerto LPT :
- D0: state not specified
- D1: state not specified
- D2: state not specified
- D3: state of pin 15 (ERROR) inverted
- D4: state of pin 13 (SELECTED)
- D5: state of pin 12 (PAPER OUT)
- D6: state of pin 10 (ACK)
- D7: state of pin 11 (BUSY) inverted
Assembler :MOV DX,0379H IN AL,DX
BASIC:N = INP(&H379);
- < /UL >
Cin = inportb(0x379); or in = inp(0x379);
Circuitos de entrada
Hay varias formas para sentir interruptores externos por un puerto paralelo de la impresora. Los hilos de entrada pueden tomar niveles TTL (0V para 5V). Usted puede alambrar interruptores sencillos para esta entrada con el siguiente sistema de circuitos.
4.7K Input -------+-^^^^^--- (+5 v) | switch | Ground ------+---------- (gnd)
Este circuito usa resitencias (4.7K) en las entradas Status para + 5 voltios, y los interruptores para ponerlos a tierra. Si usted quiere usar todas las cinco entradas, entonces construya cinco circuitos para hilos diferentes. Una desventaja de esto es que usa un el suministro + 5 externo. Si usted no tiene de sumnistro de tension , puede colocar todos a una salida de datos como la fuente del + 5V para este circuito (una salida de datos puede energizar varios circuitos del interruptor como estos). Las entradas TTL en el puerto paralelo tienden algo comanditar a gran altura, así es que usted podría pasar inadvertido sin los resistencias del pullup, pero usted debe trabajar con estas (no podría trabajar de fuente fidedigna).
Input ------+ | switch | Ground ------+
Exjemplo del circuito para 5 canales de salida con interruptores. El ircuito usa resistencias de pull-up de 3 kohm y una extraa de 330 como resistencia de seguriad entre el puerto paralelo y el resto del circuito.
![]()
Usted puede modificar esas ideas del circuito para otras aplicaciones igualmente. Usted para el ejemplo puede reemplazar el interruptor en el circuito con un contacto de salida del relevr o el lado de salida optoacoplador. De este modo usted puede obtener señales bastante bien para el PC y puede dejar el PC aislada de su sistema de circuitos de control. Los siguientes circuitos pueden ser usados aíslando la parte exterior conectándose al puerto paralelo. Alambre la salida lateral del optoacoplador (del lado correcto) para el circuito de entrada del puerto paralelo en lugar del interruptor en el circuito arriba. Si usted desea el control de ambos interruptor y señal externa, entonces usted puede alambrar él salida del optocouplador iguale con el interruptor en el circuito. Por favor note apagar el optocouplador - el alambre para el lado que conecta para la tierra del circuito (si usted no alambra optocouplador por la vía equivocada ellos no funcioaran).
![]()
El voltaje de entrada que utuilize para alimentar la entrada del optocoupler puede estar de pocos voltio shasta 30 voltios. El voltaje minimo que el circuito comienza a accitivar la señal del puerto de impresora dependem del optoaacoplador usado (generalmente de pocos voltios arriba, el voltaje de entrada debajo de 1V no activará puerto con seguridad). Tenga cuidado de alimentar la señal de entrada en la polaridad correcta para la entrada del optocoupler (la señal equivocada de polaridad puede dañar a optocoupler).
Resumen sobre registros del puerto Paralelo
Descripcion de un puerto paralo standard (SPP).
Offset Name Read/Write Bit No. Properties Base + 0 Data Port Write Bit 7 Data 7 Bit 6 Data 6 Bit 5 Data 5 Bit 4 Data 4 Bit 3 Data 3 Bit 2 Data 2 Bit 1 Data 1 Bit 0 Data 0 Esta Data Register sirve simplemente para datos que devuelve en las lineas de datos del Puerto Paralelo (Alfiler 2-9). Si su puerto es bidireccional, entonces usted puede recibir datos en esta dirección.
Offset Name Read/Write Bit No. Properties Base + 1 Status Port Read Only Bit 7 Busy Bit 6 Ack Bit 5 Paper Out Bit 4 Select In Bit 3 Error Bit 2 IRQ (Not) Bit 1 Reserved Bit 0 Reserved TStatus Port (la dirección base + 1) es de solo lectura. Cualquier dato escritos para este puertoseran. Por favor note que el Bit 7 (Ocupado) es una entrada a nivel bajo .
Offset Name Read/Write Bit No. Properties Base + 2 Control Port Read/Write Bit 7 Unused Bit 6 Unused Bit 5 Enable Bi-Directional Port Bit 4 Enable IRQ Via Ack Line Bit 3 Select Printer Bit 2 Initialize Printer (Reset) Bit 1 Auto Linefeed Bit 0 Strobe Notas sobre adaptadores USB paralelo
Un adaptador usb-paralelo-USB nos permite conectar a un ordenador disposistivos paralelos como impersoras via puerto USB.Como lo puertos USB se han hecho muy corrientes, los portatiles ya no equipan puesrtos series y paralalo. Los ordenadors antiguso tendian a tener puerto paralelo pero no USB, lso moernos ambos ,pero seguraemnteel dia de mñana solo USB.
El puerto paralelo a través de este tipo de adaptador se ve bonito tal como puerto paralelo normal para programas de alto nivel en el sistema Windows. La implementación de ellos es completamente diferente, y las operaciones descritas a bajo nivel no son validas. En este puerto USB, no es facil usar su propio harware de aplicación. En algún casos el adaptador puede ser ya que con el adaptador USB- Paralelo puede usar su impresora en este y puede dejar campo libre a sus circuitos sobre el propio puerto paralelo de su sistema. Los puertos paralelos de USB son generalmente a los que se apuntó para impresoras normales , y no se han diseñado para otra cosa. Al usar a un HP Officejet u otro producto de multifunción, este USB solamente permitirá acceso con capacidades de la impresion. No funcionara enviando un fax y accediendo a capacidades del producto de multifunción. Y tampoco funcionar usando su salida directa de datos descrita en estas lineas. Si su computadora no tiene puerto paralelo y solo puede usar es USB, tal vez usted necesite considerar la adquisición de una tarjeta de I /O indistrial que puede conectar a un puerto puerto USB. Este tipo de producto esta disponible, y típicamente vienen con su software controlador y sus bibliotecas programadoras pueden usarse para monitorearlas