Foro de elhacker.net

Informática => Electrónica => Mensaje iniciado por: junxcosio en 20 Febrero 2010, 20:16 pm



Título: Puerto paralelo problemas
Publicado por: junxcosio en 20 Febrero 2010, 20:16 pm
He puedo esto aki pero no se muy bien donde ponerlo si aki o en el de programación. lo primero decir que no tengo ni idea de electronica...pero vi este pequeño manual de como controlar 8 led por el puerto paralelo y lo hice...
http://www.codeproject.com/KB/cs/csppleds.aspx

http://www.highrez.co.uk/Downloads/InpOut32/default.htm

el problema que tengo es que siempre estan encedidos los led...desde el momento que conecto el puerto paralelo los led estan encendidos... y da igual lo qye envies que no pasa de todo...

alguien sabe que es lo que me pasa????

gracias de antemano


Título: Re: Puerto paralelo problemas
Publicado por: skapunky en 21 Febrero 2010, 02:42 am
Antes de enviar una nueva orden, haz un reset mediante:

Citar
C2: This pin is for reset the printer and clear the buffer. Which is called nInit, nInitialize

Quizá hay problemas y se queda la tensión activada, no se si el reset se aplica a todos los pines, pero si así fuera seguro que se soluciona el problema.


Título: Re: Puerto paralelo problemas
Publicado por: declare en 1 Marzo 2010, 10:04 am
mmm  no se k sistema operativo usas pero como vi la pagina y la dll inpout32 asumo usas windows...
tenes k poner a cero los 8 bits ya k

D7 - D6 - D5 - D4 - D3 - D2 - D1 - D0
0     0     0        0     0     0     0      0 -->binario

o sea envias por el puerto paralelo direccion  378HEX un cero... en visual seria

base = &H378 -->direccin registro de dato o salida de 8 bits paralelos
Out base, &H0

y luego activas la salida k keres  si keres la DO pones un 1 en DO

D7 - D6 - D5 - D4 - D3 - D2 - D1 - D0
0     0     0        0     0     0     0      1-->binario

k corresponde  a uno
base = &H378
Out base, &H1


si keres encender el DO y el D5

D7 - D6 - D5 - D4 - D3 - D2 - D1 - D0
0     0      1        0     0     0     0      1  -->binario

seria 21 en hexadecimal
base = &H378
Out base, &H21

Sldos... espero te ayude .....



Título: Re: Puerto paralelo problemas
Publicado por: Mr.Blue en 30 Abril 2010, 05:35 am
Bueno mira yo hice una vuelta esto tmb para controlar leds por el puerto paralelo LPT 1
te recomiendo si te interesa que el programa lo programes vos o no como gustes igualmente viene el programa incluido solo necesitas el c++ i lo compilas/ejecutas
te paso la pag y una breve explicacion mas mi codigo propio i como funciona

http://www.modelo.edu.mx/univ/virtech/circuito/paralelo.htm#tres (http://www.modelo.edu.mx/univ/virtech/circuito/paralelo.htm#tres)

en este circuito trae incorporado un cirucito intregrado que impide q cualquier corto circuito que pueda llegar a aver dañe tu puerto paralelo
ATENCION
Queda en tu responsabilidad usarlo o no en caso de q no lo uses trata de tener todo bien aislado para prevenir algun tipo de corto circuito que pueda llegar a dañar el puerto paralelo


es esquema mismo sin el intregrado es igual solo q la salida del puerto a la resistencia y de ahi al led
ahi mismo figura que pines podes usar y cuales no como tmb cual es - (GND)

ACA mi codigo tmb echo en c++

Código
  1. #include <dos.h>
  2. #include <stdio.h>
  3. #include <conio.h>
  4. #include <iostream.h>
  5.  
  6. void main (void){
  7.  
  8. do {
  9. outportb (0x378,255);
  10. delay (1000);
  11.  outportb (0x378,128);
  12. delay (1000);
  13.  outportb (0x378,64);
  14. delay (1000);
  15.  outportb (0x378,32);
  16. delay (1000);
  17.  outportb (0x378,16);
  18. delay (1000);
  19.  outportb (0x378,8);
  20. delay (1000);
  21.  outportb (0x378,4);
  22. delay (1000);
  23.  outportb (0x378,2);
  24. delay (1000);
  25.  
  26. }while (!kbhit());}
si tenes error en la compilacion por el delay te recomiendo q uses el TC
turbo c

bueno
outportb (0x378,255) lo q hace es mandar la señal al puerto 0x378 (LPT) que encienda el valor 255 por asi decirlo como es esto?

128  64  32  16  8  4  2  1

 1     1    1    1  1   1  1  1  ----> la suma da 255

osea q todos los leds van a estar prendidos si queremos prender el led
32 y el 4
lo q tenes q hacer es poner la suma de ellos asi

outportb (0x378,36) y esos dos leds se prenden asi suesivamente podes hacer una secuencia de q prendan en 128 luego se apage i prenda 64 se apage prenda 32 se apage ...............................
y dependiendo el tiempo le vas a dar velocidad delay (1000) es un segundo

bueno esto es todo lo q puedo aportar espero que te sea de ayuda




Título: Re: Puerto paralelo problemas
Publicado por: Meta en 6 Mayo 2010, 19:17 pm
Precisamente estoy haciendo el manual sobre el puerto paralelo con Visual C#, del mismo manual tambiñen con Visual Basic .NET y Visual C++.

http://electronica-pic.blogspot.com/2010/01/interfaz-puerto-paralelo.html

Saludo.