Autor Tema: Puerto Paralelo y Visual C++  (Leído 6610 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado migsantiago

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8257
    • Sitio de MigSantiago
Puerto Paralelo y Visual C++
« en: 20 de Abril de 2006, 21:49:51 »
Hola

Como lo prometí, les pongo una guía sencilla sobre como usar el puerto paralelo en cualquier Windows, incluso el renegado XP. Lo he probado bajo Visual C++ 6 y .Net.

Para empezar comento que todo fue tomado de:

Autor: Fred Bulback
http://www.geekhideout.com/iodll.shtml

Visiten la página y descarguen los archivos io.cpp, io.dll, io.zip e io.h. A continuación los pasos a seguir.

- Crear una aplicación de diálogo de tipo MFC
- Importar archivos io.h en headers y io.cpp en source files usando la ventana Explorador de soluciones(descargarlos de la página de arriba)
- En el archivo xxxdlg.cpp agregar

#include "io.h"

- Abrir resource.h y agregar la dirección del puerto paralelo junto a las demás #define (para no declararla a cada rato)

#define PORTADDRESS                     0x378

- Ir a InitDialog de xxxdlg.cpp y llamar LoadIODLL()

LoadIODLL(); //inicia puertos
PortOut(PORTADDRESS,0x00); //Las terminales de salida de 0x378 se pondrán a 0V

- Otro ejemplo:

PortOut(PORTADDRESS,0xff); //Las terminales de salida de 0x378 se pondrán a 5V


Las instrucciones disponibles para c++ son:

C/C++ Prototypes

void WINAPI PortOut(short int Port, char Data);
void WINAPI PortWordOut(short int Port, short int Data);
void WINAPI PortDWordOut(short int Port, int Data);
char WINAPI PortIn(short int Port);
short int WINAPI PortWordIn(short int Port);
int WINAPI PortDWordIn(short int Port);
void WINAPI SetPortBit(short int Port, char Bit);
void WINAPI ClrPortBit(short int Port, char Bit);
void WINAPI NotPortBit(short int Port, char Bit);
short int WINAPI GetPortBit(short int Port, char Bit);
short int WINAPI RightPortShift(short int Port, short int Val);
short int WINAPI LeftPortShift(short int Port, short int Val);
short int WINAPI IsDriverInstalled();

Bueno, así de fácil es controlarlo. Cabe mencionar que la librería io.dll sirve para visual basic, delphi y otros más.  :wink:

Adjunto solución de visual c++ net. Por favor usar Winzip 9 para descomprimir los archivos.




« Última modificación: 20 de Abril de 2006, 22:08:29 por migsantiago »

Desconectado Azicuetano

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 1020
    • Aplicaciones Electrónicas en Alicante.
Re: Puerto Paralelo y Visual C++
« Respuesta #1 en: 15 de Agosto de 2006, 13:07:58 »
Hola chicos!

En primer lugar quiero agradecer a migsantiago este ejemplo tan maravilloso. Hace unos años me dió por jugar con el puerto paralelo de mi ordenador y lo conseguí sin ningún problema pero... con winxp son palabras mayores.

Me partí ayer los cuernos intentandolo y nada, que no había manera. Me enteré un poco por donde iban los tiros pero,  ha sido ver este ejemplo y en cuestión de unos minutos ya hago con el puerto paralelo lo que quiero.

Gracias por el ejemplo migsantiago, me ha sido de gran ayuda.


Un saludo desde Alicante.

Desconectado migsantiago

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8257
    • Sitio de MigSantiago
Re: Puerto Paralelo y Visual C++
« Respuesta #2 en: 15 de Agosto de 2006, 19:12:00 »
Qué bueno que te sirvió  :mrgreen:

Desconectado Chrisbaf

  • PIC16
  • ***
  • Mensajes: 178
Re: Puerto Paralelo y Visual C++
« Respuesta #3 en: 29 de Septiembre de 2007, 00:28:06 »
disculpa la ingnorancia migsantiango como hago para vincular los archivos

Desconectado migsantiago

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8257
    • Sitio de MigSantiago
Re: Puerto Paralelo y Visual C++
« Respuesta #4 en: 29 de Septiembre de 2007, 19:33:17 »
Hola

¿En qué parte te da problemas?


 

anything