Haz una pregunta
  Foros de Electrónica » Diseño digital » Interfaces y Programación
Foros Registrarse ¿Olvidaste tu contraseña?

Temas similares

12/07/2006 #1


Comentarios Tuto Puerto Paralelo
Aquí pueden postear todas las dudas, comentarios, sugerencias que tengan acerca del tutorial de

Como Usar Puerto Paralelo (C++, Visual Basic, Lab View)

Ya que ese tema estará cerrado para que cada poste mantenga la consecutividad.
Att: EinSoldiatGott

-----------------------------------------


Me ilustro bastante pero quisiera saber si podrían publicar el circuito para cd, puesto que necesito recibir la señal con un PLC a 24v cd.
12/07/2006 #2

Avatar de EinSoldiatGott

Hola, con el 4n26 sería igual que con el moc, solo que , de que manera debe recibir el pulso su PLC, se me olvidó preguntarle en el MP

Puede recibirlo con un transistor y una resistencia en Pull-up? o como lo quiere?

Saludos
**********

Si lo que quiere es que reciba un pulso, este es el arreglo, cuando El bit1 de puerto paralelo esta en bajo, el led no enciende, el transistor no se satura así que toda la corriente de VCC fluye hacia la salida OUT. Su PLC estaría recibiendo un 1.

Cuando se activa el puerto, el led enciende, se satura el transistor y la corriente se desvía hacia tierra, entonces a su PLC llega un 0.

EL diagrama es este, se le comoce como pull-up.




Ahora si solo lo quiere como interruptor, tal vez que le interrumpa la corriente o algo así, entonces es cuestión de usar al transistor como un simple interruptor, lo pone donde quiera que se interrumpa la corriente.

Cuando el puerto este en alto, el led enciende, el transistor se satura y el circuito se cierra.
Si el puerto esta en bajo, el led no enciende, el transistor esta en corte y el circuito esta abierto.



Saludos
13/07/2006 #3


Mi programa para el puerto paralelo
Yo hice un programita para eso y me funciona perfecto. estaba basado en win95io.dll, ya lo
arregle y ahora funciona con io.dll

tiene una funcion para monitorear el puerto y guardar a un archivo . 8)

el programa hace las inversiones necesarias en el puerto de control
para que coincida con lo que se ve en la pantalla


saludos
Imágenes Adjuntas
Tipo de Archivo: jpg screen_shoot_133.jpg (27,6 KB (Kilobytes), 8101 visitas)
Archivos Adjuntos
Tipo de Archivo: zip interfazlpt_118.zip (35,0 KB (Kilobytes), 739 visitas)
14/07/2006 #4

Avatar de EinSoldiatGott

Re: Mi programa para el puerto paralelo
Willington dijo:
Bueno Finalmete encontre el programa.... estaba basado en win95io.dll, ya lo
arregle y ahora funciona con io.dll

tiene una funcion para monitorear el puerto y guardar a un archivo ..... 8)

el programa hace las inversiones necesarias en el puerto de control
para que coincida con lo que se ve en la pantalla


saludos
Se le agradece el aporte compañero , trae adjunta la dll?

En cuanto al tutorial, he agregado un visor para Archivos de LabView que compilé en el mismor programa, en si, es un programa que no hace nada, pero el installer genera un visor e instala los drivers necesarios para trabajar con el puerto. Así podrán ejecutar los archivos sin tener instalado LabView.

También he agregado como hacer el segundo ejemplo en LabView.

Saludos y tengo una duda haber si alguien puede resolvérmela, hay 67 descargas del que controla 1bit hecho en Visual Basic mientras que de los demás hay menos descargas, si acaso unas 3 o 4.

Por simple curiosidad, alguien que haya descargado ese de visual Basic, puede decirme la razón? Les ha parecido más práctico en Visual???

Saludos
07/08/2006 #5


Hola...muy interesante toda tu explicación, justo estaba necesitando algo por el estilo para implementar. Te hago otra consulta a ver si puedes ayudarme: yo necesito que accionando cualquiera de las 8 salidas que irán a un relay cada una de ellas me mantenga ese estado por un determinado período de tiempo y después se desconecte...es decir, necesito u estado sostenido por ejemplo 10 segundos y despues se desactive...Tenés algo para esta aplicación?? Sé que el período de mantemimiento del estado lo puedo hacer por soft así evisto de poner controladores externos....Gracoias
07/08/2006 #6

Avatar de EinSoldiatGott

Jaco dijo:
Hola...muy interesante toda tu explicación, justo estaba necesitando algo por el estilo para implementar. Te hago otra consulta a ver si puedes ayudarme: yo necesito que accionando cualquiera de las 8 salidas que irán a un relay cada una de ellas me mantenga ese estado por un determinado período de tiempo y después se desconecte...es decir, necesito u estado sostenido por ejemplo 10 segundos y despues se desactive...Tenés algo para esta aplicación?? Sé que el período de mantemimiento del estado lo puedo hacer por soft así evisto de poner controladores externos....Gracoias
Hola, hecho no lo tengo.

Pero en C++, solo habría que decir

Enciende x bit
Espera
Apaga x bit

Por ejemplo para el bit 1

outportb(direccion,1)
delay(10000)
outportb(direccion,0)

En Visual B, sería igual, solo agregar el Timmer al igual que en Lab View

Solo habría que pensar en agregar una instrucción que mientras espera, revise si usted ha dado la indicación de que otro bit sea activado.

Saludos
08/08/2006 #7


Hola...gracias por tu respuesta...Te hago la última...Yo pienso trabajar con DC y necesito saber cómo calcular el triac que voy a utilizar para que me mueva un relay de 1 amp aproximadamente. Qué tensión de salida tengo en el optoacoplador? Gracias.l
08/08/2006 #8

Avatar de EinSoldiatGott

Jaco dijo:
Hola...gracias por tu respuesta...Te hago la última...Yo pienso trabajar con DC y necesito saber cómo calcular el triac que voy a utilizar para que me mueva un relay de 1 amp aproximadamente. Qué tensión de salida tengo en el optoacoplador? Gracias.l
Hola, para DC no va a ocupar TRIAC, con un opto 4n26 y el rele puesto en el colector del 4n26 + un diodo es suficiente.

Si lo desea en la noche le posteo un diagrama por que ahorita ando ocupadillo

Saludos
30/08/2006 #9


Hola! Estube leyendo el tutorial y esta muy bueno, pero no hay nada de información del puerto paralelo como entrada que es justamente lo q ando precisando . Asi q aprovecho para preguntar aca si alguien tiene idea de si se pueden usar los bits de control del puerto como entradas y como hacerlo (en varias paginas lei q si se puede pero en ninguna decia como hacerlo) o si se pueden usar los bits de datos como entradas y como hacerlo.
Lo que estoy haciendo concretamente es controlar la apertura, cierre y giro del cd de una lectora de cds y el problema es que utilizando todos los bits de datos y de status aun me falta conectar una salida y una entrada. Desde ya muchas gracias!
30/08/2006 #10

Avatar de EinSoldiatGott

Ivan N. dijo:
Hola! Estube leyendo el tutorial y esta muy bueno, pero no hay nada de información del puerto paralelo como entrada que es justamente lo q ando precisando . Asi q aprovecho para preguntar aca si alguien tiene idea de si se pueden usar los bits de control del puerto como entradas y como hacerlo (en varias paginas lei q si se puede pero en ninguna decia como hacerlo) o si se pueden usar los bits de datos como entradas y como hacerlo.
Lo que estoy haciendo concretamente es controlar la apertura, cierre y giro del cd de una lectora de cds y el problema es que utilizando todos los bits de datos y de status aun me falta conectar una salida y una entrada. Desde ya muchas gracias!
Hola, ya había pensado eso, pero no se si poner una introducción al puerto paralelo :(, yo creo que se desvirtúa el tema pues mi intención es solo mostrar como hacer la programación y el hardware.

Usted cree que debería explicarlo?? O simplemente pongo un link que yo considerer bueno?

De cualquier manera, lo que usted quiere si se puede hacer, se llama puerto bidireccional,

Cito un fragnmento de un tuto http://www.pablin.com.ar/electron/in.../lpt/index.htm

Para detectar si un puerto es bi-direccional o no hay una prueba infalible y extremadamente simple: Enviar a la dirección base del puerto paralelo el dato 255. Esto hace que todos los terminales del canal de datos sea energizados. Seguidamente habrá que llevar a masa el terminal 9 del conector por medio de una resistencia de 4.7K. Dejando la resistencia en ese lugar leer el dato presente en el puerto. Si la lectura entrega 255 quiere decir que el puerto es unidireccional, en cambio, si la lectura entrega 127 es señal que el puerto es bi-direccional. En los puertos modernos es posible efectuar esta prueba sin la resistencia limitadora de corriente, pero en los antiguos esto puede causar daños a la electrónica de la placa de expansión.

Saludos
30/08/2006 #11


Para detectar si un puerto es bi-direccional o no hay una prueba infalible y extremadamente simple: Enviar a la dirección base del puerto paralelo el dato 255. Esto hace que todos los terminales del canal de datos sea energizados. Seguidamente habrá que llevar a masa el terminal 9 del conector por medio de una resistencia de 4.7K. Dejando la resistencia en ese lugar leer el dato presente en el puerto. Si la lectura entrega 255 quiere decir que el puerto es unidireccional, en cambio, si la lectura entrega 127 es señal que el puerto es bi-direccional. En los puertos modernos es posible efectuar esta prueba sin la resistencia limitadora de corriente, pero en los antiguos esto puede causar daños a la electrónica de la placa de expansión.
¿Esto pasa con el puerto de control? Me han dicho que el puerto de control el bidireccional, a colector abierto, etc. pero por más pruebas que hice y por más bibliografia que encontre en internet (que la mayoria hay demasiado texto sin decir nada de lo concreto) no logro que en el puerto de control se lean datos, siempre está como salida. Lo lleve al límite de los 10mA (que entran o salen, da igual) y nada, se comporta como salida nomas. Toco los bits del c4 al c7 y lo unico que consigui es q el puerto de datos trabaje como entrada o salida. Agradecería que alguien me dijera como viene la mano con el puerto de Control. Gracias
30/08/2006 #12

Avatar de EinSoldiatGott

Tal vez su puerto no sea bidireccional :(, puede probar con las diferentes configuraciones del puerto desde la BIOS ya probó con eso???

Saludos
15/09/2006 #13


Poblema con el uso bidireccional del pueto paralelo
Estoy probando de usar bidireccionalmente el puerto paralelo. Tengo en mi maquina configurado el puerto en el setup como ECP.
El problema es que debo cambiar el valor de los bit C5 y C1, de control. Pero por alguna razón que no comprendo, no me modifica el valor del pin 1 (C1).
¿Que puede estar pasando?
Les agradecería mucho si alguien sabe como resolverlo.
Saludos
Leonardo
elede79@gmail.com
16/09/2006 #14

Avatar de EinSoldiatGott

elede dijo:
Estoy probando de usar bidireccionalmente el puerto paralelo. Tengo en mi maquina configurado el puerto en el setup como ECP.
El problema es que debo cambiar el valor de los bit C5 y C1, de control. Pero por alguna razón que no comprendo, no me modifica el valor del pin 1 (C1).
¿Que puede estar pasando?
Les agradecería mucho si alguien sabe como resolverlo.
Saludos
Leonardo
elede79@gmail.com
Hola, eso no lo sabía, para que el puerto funcione bidireccionalmente ocupa cambiar valores del bus de control?

Yo solo he leido datos con el bus de estado, aún no he intentado hacerlo con el de datos dde manera bidireccional , pero si encuentro respuesta a su pregunta se lo comunico.

Mushito dijo:
Muchas Gracias. Finalmente logre descargar el archivo y lo abri con winrar y esta funcionando de maravilla. Ahora por favor indiqueme que pines podria usar para meter datos de un conversor A/D, (hasta donde se eso de doble direccion no existe) y como seria el programa en Visual Basic 6.0
Saludos
Hola, no hay de que :9.
Yo también quiero meter datos con un conversor A/D, y lo haré con los pines del bus de datos pero usando inport , la sintaxis no al recuerdo bien, pero pruebe con variable=inport(&378), también intentelo sin paréntesis.

Saludos
20/09/2006 #15


Para que el LPT trabaje de forma bidireccional, es decir, enviar y recibir datos por el Bus de Datos: D0..D7, simplemente hay que cambiar el C5 del Bus de Control, lo del C1, esta de más, esto seria configurar el LPT en modo EPP. El C5, es un bit lógico, sin salida a pin, mientras que el C1 si.

Saludos
20/09/2006 #16

Avatar de EinSoldiatGott

MaMu dijo:
Para que el LPT trabaje de forma bidireccional, es decir, enviar y recibir datos por el Bus de Datos: D0..D7, simplemente hay que cambiar el C5 del Bus de Control, lo del C1, esta de más, esto seria configurar el LPT en modo EPP. El C5, es un bit lógico, sin salida a pin, mientras que el C1 si.

Saludos
Hola Mamu gracias por la orientación, entonces con modificar el estado de C5 ya lo tenemos bidireccional? es ponerlo en alto o en bajo? y una preguntilla más, se hace por soft o por hardware o puede hacerse por ambos?

Saludos y muchas gracias
20/09/2006 #17


MaMu dijo:
Para que el LPT trabaje de forma bidireccional, es decir, enviar y recibir datos por el Bus de Datos: D0..D7, simplemente hay que cambiar el C5 del Bus de Control, lo del C1, esta de más, esto seria configurar el LPT en modo EPP. El C5, es un bit lógico, sin salida a pin, mientras que el C1 si.

Saludos
MaMu no me queda clara tu explicación. Hasta donde sé, la configuración de si el puerto es o no bidireccional es por hardware. De hecho para ser bidireccional suelen tener salidas open collector que permiten usarse como salida y como entrada.

En cuanto a lo que mencionas, el cambio de "tipo de puerto" se hace desde la BIOS y ahí es donde cambia la cosa, tal vez la bios hace algún 'switcheo' del hardware del puerto paralelo en conjunto con el chipset del motherboard que permite que el puerto sea EPP, SPP, ECP o Bi-Dir.

Hasta donde mis conocimientos llegan, algo adormecidos por años que no uso el puerto paralelo, eso solo se hace desde el hardware. De hecho ningún sistema operativo te permite cambiar el "tipo de puerto" desde la interfaz.

Ni Windows, ni Linux (son los que he usado) te permiten cambiar eso, es decir, no hay acceso ni ninguna interrupción por hardware que permita cambiar eso del BIOS. Es algo "no documentado para el sistema operativo".

Por supuesto cabe la posibilidad de que yo esté equivocado y es ahí donde me interesaría que expliques mejor tu punto asi me sacas la ignorancia del tema.

Saludos
20/09/2006 #18


Perdon, por mi ignorancia en este tema, me retracto por lo que escribí en mi último post. Estuve indagando en la Web, y los puertos bidireccionales son configurables desde el BIOS solo que no encontré ni un sola pagina que fuera al grano.
Ingrese al bios de mi maquina y el la configuración de Puerto Serial tiene las opciones de SPP, EPP, ECP, EPP y ECP. Cual de estas se debe escoger, y una pregunta para MaMu, donde se configura C5.
En una página mencionan que es peligroso por que cuando se envía un dato de salida a LPT este valor de C5 cambia automáticamente a "0".
Gracias!
20/09/2006 #19


Mushito dijo:
Ingrese al bios de mi maquina y el la configuración de Puerto Serial tiene las opciones de SPP, EPP, ECP, EPP y ECP. Cual de estas se debe escoger, y una pregunta para MaMu, donde se configura C5.
De seguro hablas del puerto PARALELO, no serial.

Ojo con eso.
21/09/2006 #20


Si, del paralelo.
¿Tienes una mejor respuesta a este tema? ¿Quieres hacerle una pregunta a nuestra comunidad y sus expertos? Registrate

Buscar más temas sobre:
Lupa Interfaces y Programación

Lenguajes de programación, gestión y manejo de puertos

Cerrar
Foros de Electrónica » Diseño digital » Interfaces y Programación

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.