| 
	
		|  Autor | Tema: [Electronica y programación] manejo del puerto paralelo...  (Leído 215,244 veces) |  
	|  |  | 
			| 
					
						| BADBYTE-K 
								Knowledge is power, Diesel-K  Desconectado 
								Mensajes: 2.329
								
								 
								Aprende todo lo que este a tu alkance
								
								
								
								
								
								     | 
 
huerto123: put the source code, we need see the code to attempt help you
 
 CarWarlock:
 ahora si  va, muy buen link, alguien probo el driver ya?
 
 saludox
 
 
 
 |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  | 
			| 
					
						| CarWarlock 
								
								 Desconectado 
								Mensajes: 19
								
								
								
								
								
								   | 
 
Buenas.
 Yo mismo lo he probado, por ejemplo programas basados en MS-DOS en los que usaba el puerto paralelo, con este driver  en el XP me han funcionado sin nigún problema, doy fe de ello.
 
 Saludos
 
 Carmelo.
 |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  | 
			| 
					
						| andesgui 
								
								 Desconectado 
								Mensajes: 9
								
								
								
								
								
								   | 
 
Hola.Yo estuve programando el puerto paralelo desde delphi con la libreria InpOut32.dll bajo win xp y 2003 el tema era que en una maquina me andaba y en la otra no (las 2 con winxp) cuando volvi a la que andaba me di cuenta que el archivo Inpout32.dll ocupaba mas asi es que lo lleve a la otra maquina en la que no andaba y salio corriendo lo mas bien.
 Asi que verifiquen que tengan la ultima version de ese archivo, en mi caso ocupa 32.768 bytes a comparacion de 27.648 que fue la que baje en la otra maquina (la que no andaba).
 Aqui pongo el codiogo que use en delphi, (para Trinchera que preguntaba) por supuesto que hay que poner el archivo inpout32.dll en la misma carpeta que el proyecto o en su defecto en la carpeta de sistema, si no, no anda. Espero que les sea de utilidad
 
 unit Unit1;
 
 interface
 
 uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, StdCtrls, Spin, ExtCtrls;
 
 type
 TForm1 = class(TForm)
 Button1: TButton;
 Button2: TButton;
 Timer1: TTimer;
 Label1: TLabel;
 procedure Button1Click(Sender: TObject);
 procedure Button2Click(Sender: TObject);
 procedure Label1Click(Sender: TObject);
 private
 { Private declarations }
 public
 { Public declarations }
 end;
 
 var
 Form1: TForm1;
 
 implementation
 
 {$R *.dfm}
 function inportb(EndPorta: Integer): BYTE stdcall; external 'inpout32.DLL' name 'Inp32';
 procedure outportb(EndPorta: Integer; Valor:BYTE); stdcall; external 'inpout32.DLL' name 'Out32';
 
 procedure TForm1.Button1Click(Sender: TObject);
 begin
 outportb($378,255); //pone el byte del puerto paralelo D0...D7 en alto  (5 volts)
 end;
 
 procedure TForm1.Button2Click(Sender: TObject);
 begin
 outportb($378,0); //pone el byte del puerto paralelo D0...D7 en bajo (0 volts)
 end;
 
 procedure TForm1.Label1Click(Sender: TObject);
 begin
 Label1.Caption := IntToStr( inportb($379) ); //lee el byte de STATUS
 end;
 
 end.
 |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  | 
			| 
					
						| andesgui 
								
								 Desconectado 
								Mensajes: 9
								
								
								
								
								
								   | 
 
Necesito ayuda con algun algoritmo para que el byte de datos siga como tal y por el salgan todos los datos que queiro hacer llegar a un circuito en particular pero que ademas con algun pin del byte de status pueda generar un reloj. o sea que en ese pin la salida sea lo mas constante posible y cuadrada. mientras yo pongo a gusto y piachere los datos sin estar pendiente a cada rato de poner un bajo y alto al dicho pìn.No se si me explico bien.
 A ver si a alguien se le ocurre algo?
 desde ya gracias.
 |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  | 
			| 
					
						| Jbom 
								
								 Desconectado 
								Mensajes: 4
								
								
								
								
								
								   | 
 
Estoy intentando hacer un programa tipo osciloscopio, lo que pasa que ando algo perdido, se programar en VB y se mas o menos como tratar con los puertos. Pero no tengo ni idea que maximo vontaje puedo meter por el puerto, aunque eso no es problema por que cuando sea mucho puedo poner un atenuador. Solo quiero saber como leo los voltios que me entran por un pin del puerto paralelo. En definitiva como tendria que abordar para hacer un osciloscopio.
 Salu2
 |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  | 
			| 
					
						| andesgui 
								
								 Desconectado 
								Mensajes: 9
								
								
								
								
								
								   | 
 
Hay varias limitaciones en construir un osciloscopio para pc por puerto paralelo. La mas importante es que no se alcanzan velocidades aceptables y por internet hay un monton de software ociloscopio por entrada de placa de sonido que llegan casi a los 40 khz en frecuencia de lectura. Por otro lado por el puerto paralelo no podes meter mas de 5 voltios, pero no podrias leer las diferencias entre 0 y 5 vols, porque trabaja digitalmente y solo reconoce dos estados el 0v nivel bajo y 5v nivel alto, para reconocer las distintas diferencias de voltaje necesitas acoplar un adc (convertidor analogico a digital) como puede ser el adc0804. en esta pagina hay un data logger o adquisidor de datos:http://www.quasarelectronics.com/3112.htm |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  | 
			| 
					
						| andesgui 
								
								 Desconectado 
								Mensajes: 9
								
								
								
								
								
								   | 
 
huerto123
 tu pregunta me hizo ir al primer mensaje de este hilo y al leerlo conteste parcialmente mi duda, vamos lo que dijo BADBYTE-K:
 
 podemos ordenar cada uno de los bytes
 
 Dataport
 
 pin 2 - D0
 pin 3 - D1
 pin 4 - D2
 pin 5 - D3
 pin 6 - D4
 pin 7 - D5
 pin 8 - D6
 pin 9 - D7
 
 
 
 Statusport
 
 pin 10 - ACK
 pin 11 - BUSY
 pin 12 - PAPER END
 pin 13 - SELECT IN
 
 pin 15  - ERROR
 
 
 ControlPort
 
 pin 1 - STROBE
 pin 14 - AUTO FEED
 pin 16 - INIT
 pin 17 - SELECT
 
 
 la parte de GND, son los tierra
 del 18 al 25
 
 para saber cual pin es cual, acercate a tu puerto paralelo y te daras cuenta que a la par de cada terminal
 tiene su numero, cuidado con conectar al revez la cosas xD
 
 en resumen podemos decir esto:
 
 el Dataport se usa como salida
 el Statusport se usa como entrada
 el controlport se usa de las dos formas anteriores
 
 por lo tanto en tu caso en vez de conectar en los pines ACK y BUSY lo conectas en dos de los pines del control port ya que desde la cpu vas a poner esos bit en uno y asi se puede.
 por ejemplo el cable que sale del cronografo y que va al ACK lo conectas en AUTOFEED, y el que va a BUSY lo conectas a INIT.
 Espero que haya sido de utilidad.
 |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  | 
			| 
					
						| andesgui 
								
								 Desconectado 
								Mensajes: 9
								
								
								
								
								
								   | 
 
No entiendo bien lo que queres hacer. pero otra duda, que cable usas para conectar las dos pcs? un paralelo de pin a pin? o un paralelo laplink como el que hay en esta pagina:http://hwb.sunsite.dk/ca_InterLink.html si el cable es pin a pin no creo que ande muy bien la cosa. |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  | 
			| 
					
						| Jbom 
								
								 Desconectado 
								Mensajes: 4
								
								
								
								
								
								   | 
 
andesgui lo que yo quiero hacer es conectar la salida de una etapa de potencia de un coche para ver la onda para equializar todo el equipo. Por la tarjeta de sonido podria?? |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  |  |  
 
	
 
   |