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


Como Programar el puerto paralelo (placa pci) para mandar datos
Hola!

tengo un automatizar otra parte de mi casa, yo lo hice con el puerto paralelo integrado en la mother y no tuve problema ya tengo el programa y todo.. Mi problema surge con otra pc que no tiene puerto y le agregue una placa pci Serial paralelo noganet kw-222-n2 numero de recurso Intervalo E/S E400-E407 , usa el LTP3 no se como usarlo en el basic ya sea 6.0 o .net estuve probando pero no funciona utilizando los tipicos comando. mire varios foros tutoriales sobre este tema pero muy pocos hablan si el puerto es una placa de extencion.

En la PC con paralelo integrado utilizaba el comando:

portout &h378, 0 o &h278 o &h3bc... Dependiendo de que LTP le correspondia
Setportbit &h378, 0 ...

En la PC 2 con paralelo (placa Pci) como deberia ser el codigo?

portout "????", 0

Disculpen Si cometi algun error soy nuevo en el foro.
09/03/2013 #2

Avatar de Scooter

No creo que puedas, en el fondo ese no es el hardware real, son capas y emuladores...
09/03/2013 #3


En el "Administrador de dispositivos" de windows busca si aparece tu placa PCI, si lo encuentras, abre sus propiedades y busca en uno de los submenús, en uno de ellos dice algo de intervalos, y te indica la dirección del puerto.
09/03/2013 #4


ya busque el intervalo lo puse en la pregunta el intervalo E/S E400-E407...
normalmente el intervalo E/S Ltp1 es 0378, Lpt2 0278, Ltp3 3BC. pero mi placa aparace Ltp3 (intervalo E/S E400-407) y no se que deberia escribir en visual para que lo interprete.
09/03/2013 #5
Moderador

Avatar de D@rkbytes

davitox11 dijo: Ver Mensaje
normalmente el intervalo E/S Ltp1 es 0378, Lpt2 0278, Ltp3 3BC. pero mi placa aparece Ltp3 (intervalo E/S E400-407) y no se que debería escribir en visual para que lo interprete.
Entonces para la entrada de datos tienes la dirección 0xE400 y para la salida tienes 0x407
davitox11 dijo: Ver Mensaje
En la PC con paralelo integrado utilizaba el comando:

portout &h378, 0 o &h278 o &h3bc... Dependiendo de que LTP le correspondía
Setportbit &h378, 0 ...

En la PC 2 con paralelo (placa PCI) como debería ser el código?

portout "????", 0
Prueba escribiendo...
portout &hE400, 0
Que es el de tu tarjeta PCI.

Suerte.
09/03/2013 #6


Prueba escribiendo...
portout &hE400, 0
Que es el de tu tarjeta PCI.

hola gracias por tu ayuda!!
probe de poner &HE400 y lo que sucedio fue que se apago la pc completa y se reinicio supongo que debe ser un corto o algo causa de la placa pci realmente no sabria...
supongo que debe ser esa la direccion pero produce un corto.
09/03/2013 #7
Moderador

Avatar de D@rkbytes

Pues es muy extraño que se reinicie la computadora.
Quizás debido a alguna configuración en las propiedades del dispositivo.
No sé que sistema uses, yo tengo XP, y pondré unos gráficos de la configuración por default del puerto.
Así es como se encuentra originalmente, y con el puerto original de la PC.

Si te fijas, solo se pueden hacer cambios en "Configuración del puerto", "Controlador" y en "Recursos"
En configuración del puerto, me permite cambiar el nombre a LPT1, LPT2 y LPT3
En "Controlador", con el de MS me va bien, y en "Recursos" está en Usar configuración automática.

Ya nos contarás si lograste resolver algo.
Imágenes Adjuntas
Tipo de Archivo: jpg General.jpg (120,5 KB (Kilobytes), 17 visitas)
Tipo de Archivo: jpg Configuración del puerto.jpg (94,3 KB (Kilobytes), 87 visitas)
Tipo de Archivo: jpg Controlador.jpg (119,9 KB (Kilobytes), 14 visitas)
Tipo de Archivo: jpg Detalles.jpg (79,6 KB (Kilobytes), 14 visitas)
Tipo de Archivo: jpg Recursos.jpg (103,3 KB (Kilobytes), 15 visitas)
10/03/2013 #8


la computadora se reinicia por que cree que es un error
usar de esa manera ese intervalo

prueba cambiando aqui a
"usar cualquier interrupcion asignada al puerto"

no has dicho que dll estas usando no todas funcionan con xp y no todas funcionan con 7 y
no todas permiten usar placas pci
10/03/2013 #9


Hola que tal davitox11, dejame decirte que si no me equivo tu compu se reinicia por que accesdes una parte de memoria protegida del sistema, ahora yo te recomiendo que te metas con algun lenguaje de la plataforma de .NET, yo e programado en Visual Basic y no es complicado, Busca en google SerialPort en Visual Basic y te encontraras con bastante informacion y en lo que te pueda ayudar. Saludos
10/03/2013 #10


Hola de nuevo!

estuve Probando de cambiar la configuracion y sigue sucediendo lo mismo.
El sistema que utilizo Son windows 7 y Windows XP en ambos pero el SO en que lo pruebo es en el XP con visual Basic 6.0 y Con el visual Basic 2008 (utilizo Ambos)
El .dll es el IO.dll y el Inpout32.dll dependiendo el programa.

Deje las imagenes del la propiedades en .rar, el LTP1 no es real porque la mother no tiene
integrado! la placa pci es el LTP3...

En configuracion de puerto : Utilize los tres metodos y nada, habilite la deteccion y nada.
En recursos no me deja modificar nada todo en automatico.

probare de cambira los dll por si las dudas..

Gracias por la ayuda si se les ocurre algo mas avisen.
Archivos Adjuntos
Tipo de Archivo: rar PuertoPropiedades.rar (143,2 KB (Kilobytes), 71 visitas)
10/03/2013 #11


Ya entedi mira nunca vas a poder accesar al puerto directamente ya que estan protegidos, para eso necesitas utilizar las apis del S.O que es algo más complicado y aun asi no se si se pueda.
Si quieres accesar a ello directamente deberas bajarle el sistema operativo, como Windows 98,95 y no recuerdo creo que tambien Windos 2000, ya que con en XP en adelante estara protegido estos puertos y lo cual no te permitira accesar directamente.
Ahora una solucion a tu problema que e comprobado que funciona con con visual es con los puertos COM en tu caso el COM3, usa protocolo RS232 y solo tendras que usar un max para poder usarlo para circutios TTL.
Lee aqui si aun asi quieres controlar el puerto LPT Como Usar Puerto Paralelo (C++, Visual Basic, Lab View)
11/03/2013 #12


claro no se puede accesar directamente en xp y adelante
para eso estan las librerias que incluyen un driver interno que usa las apis del sistema operativo

el problema esta es que la libreria que estas usando no sirve para direcciones no estandar,
por eso se reinicia tu PC

de todos modos en el foro esta la solucion, es cosa de buscar los antiguos post
recuerdo eso por que tambien tuve el mismo problema
solo que no recuerdo la solucion, pero tenia que ver con la dll
12/03/2013 #13


Hola!

Bueno primero gracias por la ayuda al final despues de estar probando y probando!! lo Logre!
Primero cambie el .dll use el inpout32.dll pero en visual basic 2010 express, con este si pude
alfinal. la direccion era &HE400, ahora ya se que para las placas Pci con paralelo debo utilizar estos componentes.

De nuevo Gracias! sus consejos me ayudaron
Respuesta
¿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.