SoloCodigo

Programación General => C/C++ => C++ Builder => Mensaje iniciado por: betitono1 en Jueves 17 de Junio de 2004, 17:05

Título: Uso De Createfile Para Port Paralelo
Publicado por: betitono1 en Jueves 17 de Junio de 2004, 17:05
Hola que tal alguien sabe como utilizar Createfile para enviar datos al puerto paralelo, algun link que tengan.

Gracias

Saludos
Título: Re: Uso De Createfile Para Port Paralelo
Publicado por: Eternal Idol en Jueves 17 de Junio de 2004, 17:09
Si, como no, la MSDN lo sabe:

http://msdn.microsoft.com/library/default..../createfile.asp (http://msdn.microsoft.com/library/default.asp?url=/library/en-us/fileio/base/createfile.asp)

 :ph34r:  :comp:  :hola:
Título: Re: Uso De Createfile Para Port Paralelo
Publicado por: betitono1 en Jueves 17 de Junio de 2004, 17:19
disculpa tienes algun ejemplo de esto.


Saludos.
Título: Re: Uso De Createfile Para Port Paralelo
Publicado por: Eternal Idol en Jueves 17 de Junio de 2004, 17:25
El año pasado hice un programa de envio de faxes multiplataforma (Windows y Linux), el funcionamiento es el mismo, en vez de poner COM1 pones LPT1.

HANDLE Puerto = CreateFile("LPT1",(GENERIC_READ | GENERIC_WRITE),0,NULL,OPEN_EXISTING,NULL,NULL);

Después tenes que confiurar el puerto y usar ReadFile() y WriteFile(), en la página que te pasé arriba hay un link para todo el tema este:

"Communications Resources

The CreateFile function can create a handle to a communications resource, such as the serial port COM1. For communications resources, the dwCreationDisposition parameter must be OPEN_EXISTING, and the hTemplate parameter must be NULL. Read, write, or read/write access can be specified, and the handle can be opened for overlapped I/O. For more information about communications, see Communications (http://msdn.microsoft.com/library/en-us/devio/base/communications_resources.asp)."
Título: Re: Uso De Createfile Para Port Paralelo
Publicado por: © Jonathan © en Jueves 17 de Junio de 2004, 23:55
Ya he utilizado esta funcion para el puerto paralelo, pero no se porque motivo en windows 98 me cuelga el programa... en XP funciona solo la inicializacion, pero al queres leer el puerto o enviar un dato, el programa tambien se cuelga... alguien tiene idea de lo que puede ser???. Saludos y Gracias :hola: :gracias:
Título: Re: Uso De Createfile Para Port Paralelo
Publicado por: Eternal Idol en Viernes 18 de Junio de 2004, 08:48
Debes estar haciendo algo mal ... a mi me funciona perfectamente, si pones tu código tal vez te pueda ayudar.

 :ph34r:  :comp:  :hola:
Título: Re: Uso De Createfile Para Port Paralelo
Publicado por: © Jonathan © en Miércoles 23 de Junio de 2004, 23:55
Aqui pongo mi codigo para que lo estudies... es simple, asi lo encontre por la intranet... pero no me funciona :(

Código: Text
  1.  
  2. HANDLE hImp;
  3.  
  4. hImp = CreateFile("LPT1",
  5. GENERIC_READ | GENERIC_WRITE,
  6. 0,
  7. 0,
  8. OPEN_EXISTING,
  9. 0,
  10. NULL);
  11.  
  12. char c;   // dirección de los datos a escribir
  13. DWORD n;  //Direccion del numero de bytes escritos
  14.  
  15.  
  16. c=0x01;
  17. WriteFile(hImp, &c, 1, &n,(LPOVERLAPPED) NULL);
  18.  
  19.  
  20. CloseHandle(hImp);
  21.  
  22.  

   Saludos y Gracias :suerte:
Título: Re: Uso De Createfile Para Port Paralelo
Publicado por: © Jonathan © en Sábado 26 de Junio de 2004, 02:09
Alguien utiliza apis para el LPT??? :ayuda: :adios:
Título: Re: Uso De Createfile Para Port Paralelo
Publicado por: Eternal Idol en Sábado 26 de Junio de 2004, 10:38
CreateFile está bien pero tener que configurar el puerto:

"The CreateFile function can create a handle to a communications resource, such as the serial port COM1. For communications resources, the dwCreationDisposition parameter must be OPEN_EXISTING, and the hTemplate parameter must be NULL. Read, write, or read/write access can be specified, and the handle can be opened for overlapped I/O. For more information about communications, see Communications."

Leelo todo, te  va a servir mucho, las funciones para configurar creo que eran
G/SetCommConfig, G/SetCommState, G/SetCommTimeouts,

http://msdn.microsoft.com/library/default....s_resources.asp (http://msdn.microsoft.com/library/default.asp?url=/library/en-us/devio/base/communications_resources.asp)


Acá en casa no tengo el código fuente, pero el Lunes en el trabajo puedo ver mi programa para enviar faxes y te ayudo un poco más.

 :smartass:  :ph34r:  :hola:
Título: Re: Uso De Createfile Para Port Paralelo
Publicado por: © Jonathan © en Sábado 26 de Junio de 2004, 13:54
Bueno! :) gracias por tu ayuda, voy a leer la pagina que mencionas. Gracias y Saludos :gracias: :suerte: :hola:
Título: Re: Uso De Createfile Para Port Paralelo
Publicado por: © Jonathan © en Sábado 26 de Junio de 2004, 14:38
Pregunta... las configuraciones a realizar, no se hacen solo cuando se necesita el puerto SERIE???... porque el puerto paralelo trabaja a la velocidad que trabaja el hardware conectado, no se puede configurar como se configura el puerto serial, con bits de paridad, bits de parada y todo eso. Saludos :hola:
Título: Re: Uso De Createfile Para Port Paralelo
Publicado por: © Jonathan © en Lunes 5 de Julio de 2004, 23:57
Los archivos esran para el manejo del puerto serie... el puerto paralelo me funciona en Windows XP con la funcion CreateFile, pero al utilizarla en Windows 98 mi aplicacion se cuelga y debo finalizar tareas. Alguien tiene alguna idea???. Gracias y Saludos :hola:
Título: Re: Uso De Createfile Para Port Paralelo
Publicado por: betitono1 en Miércoles 7 de Julio de 2004, 17:27
Jonathan podriaspor favor enviar el codigo que te ha funcionado en XP, y una pregunta con Createfile no hay problemas de acceso al puerto?.


Saludos.
Título: Re: Uso De Createfile Para Port Paralelo
Publicado por: © Jonathan © en Miércoles 7 de Julio de 2004, 19:57
En XP no tengo ningun problema de acceso, en windows 98 el programa se cuelga y debo finalizar tarewas y el codigo que utilizo es el que ya habia posteado mas arriba:

Código: Text
  1. HANDLE hImp;
  2.  
  3. hImp = CreateFile("LPT1",
  4. GENERIC_READ | GENERIC_WRITE,
  5. 0,
  6. 0,
  7. OPEN_EXISTING,
  8. 0,
  9. NULL);
  10.  
  11. char c;   // dirección de los datos a escribir
  12. DWORD n;  //Direccion del numero de bytes escritos
  13.  
  14.  
  15. c=0x01;
  16. WriteFile(hImp, &c, 1, &n,(LPOVERLAPPED) NULL);
  17.  
  18.  
  19. CloseHandle(hImp);
  20.  
  21.  

   Con este codigo me funciona, no me convence, creo que es mas complicado que utilizando la libreria que me pasate, pero es una opcion. Saludos :hola: :suerte:
Título: Re: Uso De Createfile Para Port Paralelo
Publicado por: Eniwa en Miércoles 29 de Septiembre de 2004, 04:14
Hola.

Quisiera saber como puedo leer el puerto paralelo a partir de  los datos que seran enviados por un convertidor analógico digital ADC 0804 de 8 bits, he encontrado programas pero estos están en C, los cuales utilizan las funciones de inpotb y outportb, y esas funciones no me sirven en Builder C++ 6.0, por ahora estoy intentando esto utilizando el "createFile" y especificando el LPT1, según he leido en los posts tambien tengo que configurar el puerto. Ya hice un programa para transmision serial en donde sí configuro (baudrate, bits de paridad), ¿tambien debo hacerlo para el puerto paralelo?, intentare pasar a Builder C++ el código en C que tengo en cuanto al convertido analógico, digital ¿Alguien podria ayudarme? POR FAVOOOOOORRRRRRRRRRR