Salut,
Je trouve un résultat différent pour le calcul du checksum.
Trame
STX16@CHKS1CHKS2
16 = Adresse en décimal
@ = Commande en ASCII
-Willis-,
En lisant ce que tu as écrit, je comprends qu'on est dans le cadre d'un checksum de type : somme des bits à 1 + 0x30 (le modulo 256 c'est juste pour s'assurer de prendre que les 8 bits soit la valeur 255). La somme des bits à 1 peut aller de 0 à 8 et en ajoutant 0x30 alors tu te retrouves avec un caractère ASCII allant de '0' à '8'.
16 = 0001 0000 = 1 seul bit à 1 dans l'octet de poids fort
@ = 0100 0000 = 1 seul bit à 1 dans l'octet de poids faible
On a donc 1 + 0x30 pour le MSB = '1'
On a donc 1 + 0x30 pour le LSB = '1'
Trame
STX16@11
Partager