![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
|||
|
|||
|
Ya lo he solucionado. Estaba calculando mal la suma lógica XOR de los números. Tenía primero que convertirlos a Integer, luego otra vez a HEX, luego el resultado a HEX y finalmente a ASCII, es decir, una vuelta de tuerca impresionante que no aparece en ningún manual.
Mañana intentaré postera el código exacto. |
|
#2
|
|||
|
|||
|
Aquí va el código que utilizo para calzular el checksum dichoso y enviar correctamente el resultado a la balanza.
En el ejemplo envío la siguiente cadena: 9 8 0 0 1 5 0 X Cr Lf Código:
a:='30';
b:='30';
c:='31';
d:='35';
e:='30';
h:=inttohex(hextoint('39') xor hextoint('38'),1);
h:=inttohex(hextoint(h) xor hextoint(a),1);
h:=inttohex(hextoint(h) xor hextoint(b),1);
h:=inttohex(hextoint(h) xor hextoint(c),1);
h:=inttohex(hextoint(h) xor hextoint(d),1);
h:=inttohex(hextoint(h) xor hextoint(e),1);
//Cadena completa en HEX
edit21.text:='39'+'38'+a+b+c+d+e+h+'0D'+'0A';
//Cadena en ASCII (sin #13 ni #10)
edit19.text:=chr(hextoint('39'))+chr(hextoint('38'))+chr(hextoint(a))+chr(hextoint(b))+chr(hextoint(c))+chr(hextoint(d))+chr(hextoint(e))+chr(hextoint(h));
//Cadena ASCII completa (CON #13#10)
ApdComPort1.OutPut := edit19.text+#13+#10;
|
|
#3
|
||||
|
||||
|
ingeniosa tu solución!!!
felicidades por que te quedo tu problema...
y si la verdad es que buscando ayuda o consultando en foros es como se hecha a andar nuestro codigo... que bueno que fue un problema de conversion... saludos!!!...
__________________
el cielo me dio un cariño sin merecerlo... chimikuilo!!! |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Recibir datos del puerto serie en bytes. | REHome | .NET | 1 | 31-10-2008 18:50:10 |
| Puerto Serie / Envio De Datos | alebarto | C++ Builder | 4 | 07-09-2008 23:46:58 |
| Quiero tomar datos de puerto serie con Delphi4PHP | lsg | PHP | 1 | 09-08-2008 04:24:37 |
| Capturar datos por el puerto serie | mierda | Varios | 8 | 05-12-2007 19:23:29 |
| Envio de datos al puerto serie COM1 | Niko | Varios | 5 | 15-03-2005 19:38:21 |
|