![]() |
ComPort Hex
Buenos días señores/as.
tengo un problema que seguro que para los eruditos de este foro sera nimia. pero para mi me esta costando horrores. estoy intentando comunicar con un tele-indicador. el cual hay que mandarle los datos en Hex. en formato
bueno hasta aquí todo bien. el problema me viene cuando intento mandar el testo de un Edit. he intentado varios métodos pero no consigo que el formato adecuado. lo único que me pinta son los números correspondientes a cada carácter. y si en el Result le fuerso a pintar chr($. me lo pinta literalmente. hay algún método para hacerlo. un saludo. |
No he entendido bien el problema.
Si envías 'H'+'o'+'l'+'a' ¿qué muestra? |
Si envió
El teneindicador me pinta "Texto" Pero si lo hago
Siendo Edit1.Text := 'Texto' lo que pinta es '546578746f' como decía literal. y al forzar el Result
me pinta "+chr($54)+chr($65)+chr($78)+chr($74)+chr($6F)" |
No tengo un delphi a mano ahora mismo, pero creo que debes modificar tu función StringToHex.
Result:= Result + IntToHex(ord(S[i]),2); Ahi devuelve: 546578746f Tendría que devolver cada uno por separado, $54$65$78$74$6f |
ese es mi dilema.
como modificar
|
Resuelto
No se si es la forma mas ortodoxa pero lo he echo de esta manera
Un saludo. |
Hola ramonibk
Según tu código esta parte solo te devuelve dentro de buffer exactamente la misma cadena que ya tienes en Edit3.text, sin ningún tipo de modificación Cita:
y aquí el código un poco mas optimizado:
Un saludo |
La franja horaria es GMT +2. Ahora son las 00:26:22. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi