Mi pregunta esta dirigida a que de alguna forma tengo que capturar del pin 2 (supuestamente el bit 0 de datos) el cambio de estado. O sea, permanece siempre en 0 y cada tanto emite un pulso. Si se puede hacer con un evento mejor, pero si hay que hacerlo con un timer no hay problema, el tema es que no se como leer justo ese bit. Muchas gracias
1 respuesta
Respuesta de leosoft
1
1
leosoft, Programacion Avanzada en VisualBasic, trabajo hace mas de 15 años...
Justamente el Bit 0 es el más fácil de leer, fíjate que si ese bit es "0" el numero que lees en el puerto es "Par" y si es "1" el numero es "Impar", pero te paso esta función: Pega esto el el procedimiento general: Dim binario(7) As Boolean Private Sub BCD_Binario(NumeroBCD As Byte) BinarioResultado = "" For asd = 0 to 7 binario(asd) = False Next For asd = 1 To NumeroBCD If binario(7) = True Then binario(7) = False If binario(6) = True Then binario(6) = False If binario(5) = True Then binario(5) = False If binario(4) = True Then binario(4) = False If binario(3) = True Then binario(3) = False If binario(2) = True Then binario(2) = False If binario(1) = True Then binario(1) = False If binario(0) = True Then binario(0) = False Else binario(0) = True End If Else binario(1) = True End If Else binario(2) = True End If Else binario(3) = True End If Else binario(4) = True End If Else binario(5) = True End If Else binario(6) = True End If Else binario(7) = True End If Next End Sub ahora lo que tienes que hacer es esto: Call BCD_Binario(Numero) Donde le envías el "Numero" que tomas del puerto paralelo, luego simplemente ves el resultado en la matriz "binario(x)" donde "x" es el numero de bit que quieres leer, en este caso el Bit 0 es Binario(0), este si es verdadero es un "1" y si es falso es un "0".
Necesito saber cómo leer ese numero del puerto. Con eso y la aclaración anterior resolverías mi problema. Ah! También quería saber si para leer el puerto es necesario el timer o se puede hacer vía eventos. Gracias de nuevo
Pensé que el numero lo tomabas pero no tenias como discriminar el bit correspondiente a una pata, para leer desde el puerto paralelo tienes que utilizar una librería externa, el Visual basic no tiene soporte directo para leerlo, si me das una dirección de correo te envío esa librería con una ejemplo de como utilizarla y te agrego la rutina anterior en el ejemplo.