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

Antiguo 12-jul-2006   #1
 
Fecha de Ingreso: julio-2006
Ubicación: mexico
Mensajes: 4
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.
angel lopez está desconectado      Responder Citando
Antiguo 12-jul-2006   #2
 
Avatar de EinSoldiatGott
 
Fecha de Ingreso: diciembre-2005
Mensajes: 936

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
EinSoldiatGott está desconectado      Responder Citando
Antiguo 13-jul-2006   #3
 
Fecha de Ingreso: junio-2006
Ubicación: Colombia
Mensajes: 111
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), 7771 visitas)
Archivos Adjuntos
Tipo de Archivo: zip interfazlpt_118.zip (35,0 KB (Kilobytes), 344 visitas)
Willington está desconectado      Responder Citando
Antiguo 14-jul-2006   #4
 
Avatar de EinSoldiatGott
 
Fecha de Ingreso: diciembre-2005
Mensajes: 936
Re: Mi programa para el puerto paralelo

Iniciado por Willington
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
EinSoldiatGott está desconectado      Responder Citando
Antiguo 07-ago-2006   #5
 
Fecha de Ingreso: agosto-2006
Ubicación: Tucumán - Argentina
Mensajes: 2

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
Jaco está desconectado      Responder Citando
Antiguo 07-ago-2006   #6
 
Avatar de EinSoldiatGott
 
Fecha de Ingreso: diciembre-2005
Mensajes: 936

Iniciado por Jaco
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
EinSoldiatGott está desconectado      Responder Citando
Antiguo 08-ago-2006   #7
 
Fecha de Ingreso: agosto-2006
Ubicación: Tucumán - Argentina
Mensajes: 2

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
Jaco está desconectado      Responder Citando
Antiguo 08-ago-2006   #8
 
Avatar de EinSoldiatGott
 
Fecha de Ingreso: diciembre-2005
Mensajes: 936

Iniciado por Jaco
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
EinSoldiatGott está desconectado      Responder Citando
Antiguo 30-ago-2006   #9
 
Fecha de Ingreso: mayo-2006
Ubicación: La Plata, Argentina
Mensajes: 102

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!
Ivan N. está desconectado      Responder Citando
Antiguo 30-ago-2006   #10
 
Avatar de EinSoldiatGott
 
Fecha de Ingreso: diciembre-2005
Mensajes: 936

Iniciado por Ivan N.
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
EinSoldiatGott está desconectado      Responder Citando
Antiguo 30-ago-2006   #11
 
Fecha de Ingreso: junio-2006
Mensajes: 5

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
Fercho3333 está desconectado      Responder Citando
Antiguo 30-ago-2006   #12
 
Avatar de EinSoldiatGott
 
Fecha de Ingreso: diciembre-2005
Mensajes: 936

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

Saludos
EinSoldiatGott está desconectado      Responder Citando
Antiguo 15-sep-2006   #13
 
Fecha de Ingreso: septiembre-2006
Mensajes: 1
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
elede está desconectado      Responder Citando
Antiguo 16-sep-2006   #14
 
Avatar de EinSoldiatGott
 
Fecha de Ingreso: diciembre-2005
Mensajes: 936

Iniciado por elede
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.

Iniciado por Mushito
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
EinSoldiatGott está desconectado      Responder Citando
Antiguo 20-sep-2006   #15
 
Fecha de Ingreso: abril-2005
Ubicación: Argentina - Buenos Aires - Capital Federal
Mensajes: 853

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 está desconectado      Responder Citando
Antiguo 20-sep-2006   #16
 
Avatar de EinSoldiatGott
 
Fecha de Ingreso: diciembre-2005
Mensajes: 936

Iniciado por MaMu
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
EinSoldiatGott está desconectado      Responder Citando
Antiguo 20-sep-2006   #17
 
Fecha de Ingreso: octubre-2005
Ubicación: Cordoba, Argentina
Mensajes: 641

Iniciado por MaMu
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
maunix está desconectado      Responder Citando
Antiguo 20-sep-2006   #18
 
Fecha de Ingreso: junio-2006
Ubicación: La Paz - Bolivia
Mensajes: 160

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!
Mushito está desconectado      Responder Citando
Antiguo 20-sep-2006   #19
 
Fecha de Ingreso: octubre-2005
Ubicación: Cordoba, Argentina
Mensajes: 641

Iniciado por Mushito
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.
maunix está desconectado      Responder Citando
Antiguo 21-sep-2006   #20
 
Fecha de Ingreso: junio-2006
Ubicación: La Paz - Bolivia
Mensajes: 160

Si, del paralelo.
Mushito está desconectado      Responder Citando
Respuesta

Herramientas



Retroceder   Foros de Electrónica > Diseño digital > Interfaces y Programación


La franja horaria es GMT -5. Ahora son las 02:27.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2010, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.3.0 ©2009, Crawlability, Inc.