Respondiendo a la pregunta de David : «Al leer del puerto serie leo su contenido pero me lo muestra como ASCii, existe alguna forma para visualizar su contenido en HEX o Decimal?»
Function AsciiToHex(TramaRecibida As String, ConvertToHex As Boolean) As String ' ' Conversion de un string a una cadena de Hexadecimales / decimales For Each c As Char In TramaRecibida If ConvertToHex Then AsciiToHex += "0x" + Hex(Asc(c)) + " " Else AsciiToHex += Asc(c).ToString + " " End If Next Return AsciiToHex End Function
Para invocar la funcion :
Dim RespuestaEnHex As String = AsciiToHex("abcABCD_CualquierTextoRecibido", True) Dim RespuestaEnDEC As String = AsciiToHex("abcABCD_CualquierTextoRecibido", False)
Espero te sea util.
Saludos,
PepLluis,
hola PepLluis te comento una cosa que me ocurre
cuando entra un byte se supone que salta un evento pues bien ahi pongo un contador que deberia incrementar con cada byte que entre no?
pues cuando el pic me manda un byte incrementa pero como lo que me manda son paquetes de 5bytes seguidos solo incrementa en 1 ,y esto lo estava haciendo porque quiero que cuando me entre 1 byte incremente el contador y cada byte segun el numero que tenga el contador se guarde en una variable u otra,no se si habla alguna forma de hacerlo mejor,el tema es que yo leo el puerto con readexisting y con una funcion lo convierto a hexadecimal pero necesito desglosar la variable que me almacena 5bytes hexadecimales
si puedes ayudarme?
gracias
un saludo
Aqui tienes un post que habla sobre como separar las tramas recibidas.
Espero sea esto lo que andas buscando.
PepLluis,
Aqui tienes un post que habla sobre como separar las tramas recibidas.
http://msmvps.com/blogs/peplluis/archive/2011/10/11/easy-or-difficult-does-not-matter-for-vb-or-c-if-you-build-your-style.aspx
Espero sea esto lo que andas buscando.
PepLluis,
hola un saludo.
Tengo una duda aqui.
una vez que leo mi puerto en que registro estan fuadando los datos del puerto, y si yo quiero mostrar los datos en un textbox como se llama a la funcion.
seria?
textbox1.text=(AsciiToHex(Datos de puerto)) pero cual es el registro que utiliza la funcion?
Gracias por la ayuda!
Hola Oscar,
Deberias usarlo dentro de una funcion similar a la descrita en este post:
http://msmvps.com/blogs/peplluis/archive/2007/11/27/una-alternativa-al-serialport-readline.aspx
Saludos,
PepLluis,
Muy bueno, me funcionó a la primera