[Electronica y programación] manejo del puerto paralelo...

Iniciado por BADBYTE-K, 27 Noviembre 2004, 11:11 AM

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

chinone

holas queria saber si me puedes ayudar necesito hacer un programa en visual basic con una alarma cuando la alarma detecte un movimiento manda un pulso al puerto paralelo y visual despliega un mensaje por pantalla... pero no se como hacerlo y con cuantos voltajes trabaja me podrias ayudar por fa...  :)

BADBYTE-K

 te dire teoricamente y si kieres aprender bien bien, debes tratar de empezar a hacerlo tu en base a la info que recolectes...

Cita de: chinone en 22 Abril 2005, 23:54 PM
cuando la alarma detecte un movimiento manda un pulso al puerto paralelo y visual despliega un mensaje por pantalla...

Primero, supongo que esa alarma cuenta ademas de su "sistema de alarma" cuenta con su sensor o algo por el estilo que detectara el movimiento... entonces lo que debes hacer es conectar la parte del "flujo de deteccion" del movimiento (por ejemplo: en un sensor infrarojo, conectas la parte en donde se alimenta la activacion de la alarma, ya tu sabes..) entonces esa misma conexion la haces llegar al puerto paralelo de la pc, la conectaras en la etapa de estado del puerto:

CitarStatusport

pin 10 - ACK
pin 11 - BUSY
pin 12 - PAPER END
pin 13 - SELECT IN

para mas detalles lee mi explicacion del status port:

http://foro.elhacker.net/index.php/topic,48748.0.html

entonces dicho status port sera el que detectara la actividad del movimiento de tu alarma, claro debes tomar en cuenta el voltaje, con esto aprovecho para contestar tu otra pregunta

Cita de: chinone en 22 Abril 2005, 23:54 PM
y con cuantos voltajes trabaja me podrias ayudar por fa... :)

trabaja con 5 voltios tal y como un sistema digital TTL... si tu alarma trabaja con mas voltaje una alternativa (y cuando digo alternativa me refiero a que hay otras formas) es construir una etapa separadora por medio de reles (relays) en la cual se maneje el valor de voltaje de tu alarma separa totalmente de la conexion al puerto para no dañarlo...


y con respecto al mensaje que dara tu programa en visual basic, por ejemplo lo puedes hacer usando la condicional IF - ENDIF

If tal cosa then
pasa esto
End if


recuerda que el estado del status port (valga la redundancia) genera un dato, un dato numerico que sera por ejemplo 123,562, 345, etc.. segun la combinacion que se tengan en los pines de este... entonces en base al dato de el status port a la hora de activacion/desactivacion de la alarma haces tu estructura con el IF-END IF
te hare un ejemplo a la rapida

If dato = 143 then
msgbox ("La alarma se activo")
End if


Suponiendo que la variable dato sea la que almacena el estado de los pines y 143 sea la combinacion que indica que se ha activado la alarma...

lo demas me parece que esta explicado en el post principal:

http://foro.elhacker.net/index.php/topic,48748.0.html

trata de empezar a programarlo, y si tienes otras dudas durante el proceso de programacion, hazlas saber que aki estamos varios con animos de ayudar  :)



saludox

Ian~Shadow

y si la señal que recive la computadora es variable como la señal de un fotosensor???

Gracias

BADBYTE-K

la señal debe ser rectificada antes de entrar en contacto con el SP porke el metodo que te doy se basa en la sensibilidad del SP a la conmutacion


saludox

chinone

Hola sabes que todavia no puedo hacer que funcione mira te envio el codigo me podrias decir que me falta porfa ...

Dim recibe As String

Private Sub Form_Load()
Label2.Visible = False
Out &H378, 0 'Apaga todas las salidas del puerto LPT1

End Sub

Private Sub Command1_Click()
Label1.Visible = False
Out &H378, 1 'Prende numero 2 en la salidas del puerto LPT1
recibe = Inp(&H379)
MsgBox recibe

If recibe = 71 Then
MsgBox "Entrada 11 Detectada"
Label2.Visible = True
End If
End Sub

y no se por que no me funciona de antemano gracias...

{_The_Alwar_}

sabe que creo...  porque le as hecho que detecte cuando pulse el boton, entonces solo funcionara cuando le des al boton y llegue señar, te recomiendo que pongas un timer con un intervalo bajo y que ay pongas
recibe = Inp(&H379)
MsgBox recibe

If recibe = 71 Then
MsgBox "Entrada 11 Detectada"
Label2.Visible = True
End If

chinone

todavia nop ... lo puse como dijiste

Dim envia As String
Dim recibe As String

Private Sub Form_Load()
Label2.Visible = False
Out &H378, 0 'Apaga todas las salidas del puerto LPT1
Out &H378, 1 'Prende numero 2 en la salidas del puerto LPT1
End Sub

Private Sub Timer1_Timer()
Label1.Visible = False
recibe = Inp(&H379)
Text1.Text = recibe

If recibe = 71 Then
Text1.Text = "Entrada 11 Detectada"
Label2.Visible = True
End If

End Sub

y no pasa nada  :'(


marcn

hola
soy ingeniero electronico y estoy desarrollando un proyecto. el proyecto consiste en manejar el puerto ubs como entrada y salida, la toma de datos vienen de una tarjeta que se esta diseñando. pero el software se debe de hacer en linux para la visualizacion de los datos de entrada. pero no estoy seguro que software me permite manejar el puerto usb en linux y ademas que linux usar. el programa debe de trabajar muy rapido...


BADBYTE-K

todo lo que necesites saber de usb en linux lo encuentras aki:

http://www.linux-usb.org/

y con respecto a que linux usar, podrias usar cualkiera, aunke recomendada podria ser debian, aunke asi com es de buena asi es de compleja...

para mas detalles de linux, usa las FAQ de adikto:

http://foro.elhacker.net/index.php/topic,4269.0.html

para saber donde bajar la gran mayoria de distribuciones de linux:

http://foro.elhacker.net/index.php/topic,28752.0.html

saludox

chinone

BADBYTE-K sabes todavia no me funciona, queria consultarte con que le enviaste el pulso al computador para que lo recibiera en puerto 11 y si estas seguro que son 5 vol, lo que yo hago es que salga por el puerto 2 y entre por el 11 pero siempre me arroja como resultado el numero 126 y no cambia ojala que me puedas ayudar, despues de que detecte tiene que sacar una foto con una camara web y guardar la imagen en el pc en una carpeta...[/b][/color]