Leer cadena hexadecimal
Saludos. Mi pregunta es ¿como extraer una parte especifica de una trama en hexadecimal que recibo por el puerto serie, estoy utilizando la función Mid, pero no me extrae el dato correcto. Te pongo el código de mi programa para ver si me puedes decir donde esta mi error.
Dim recibir() As Byte
Private Sub cmdAbrir_Click()
If comm1.PortOpen = True Then
comm1.PortOpen = False
cmdAbrir.Caption = "Abrir Puerto"
Exit Sub
Else
comm1.PortOpen = True
cmdAbrir.Caption = "Desconectar"
End If
End Sub
Private Sub cmdLimpiar_Click()
txtRepor.Text = ""
End Sub
Private Sub cmdSalir_Click()
End
End Sub
Private Sub comm1_OnComm()
Dim v As String
Dim p As String
recibir() = comm1.Input
p = Format(Hex(recibir(i)), "00") '& ","
txtRepor.Text = txtRepor.Text & p
v = Mid(p, 23, 4)
txt1 = v
End Sub
Private Sub Form_Load()
comm1.CommPort = 1
comm1.Settings = "9600,N,8,1"
comm1.InputLen = 1
comm1.RThreshold = 1
comm1.NullDiscard = False
End Sub
Private Sub txt1_Change()
End Sub
Private Sub txtRepor_Change()
End Sub
en el texto en negritas es donde leo la cadena hexadecimal, pero Mid no me extrae el dato correctamente
La trama exacta seria 7E 00 12 83 56 78 2E 00 05 04 00 02 FB 81, y lo que quiero extraer para convertirlo es el 02 FB exactamente, te agradezco tu ayuda