J'envoie un tableau d'octets à un élément matériel.Comment calculer le plus petit octet de signal en Ruby
Les 7 premiers octets contiennent des données et le 8ème octet est une somme de contrôle.
Le 8ème octet est l'octet le moins significatif de la somme des 7 premiers octets. Exemples contenant la somme de contrôle correcte.
Le dernier octet de chacun d'entre eux est la somme de contrôle
200-30-7-5-1-2-0-245
42-0-0-1-176-0-148-39
42-0-0-3-177-0-201-118
Comment calculer la somme de contrôle?
Merci, Seth
merci pour la réponse rapide. J'ai essayé votre méthode avec les 2ème et 3ème jeux de données et cela me donne une réponse différente de la somme de contrôle incluse dans les exemples. Quelque chose que je manque? –
Les seules choses auxquelles je peux penser sont que soit la somme de contrôle est quelque chose de différent que simplement additionner les valeurs modulo 256 ou que les exemples de données sont faux. Essayer les calculs à la main correspond à l'extrait de programme (c'est-à-dire que les 2e et 3e jeux de données ne fonctionnent pas). –
J'ai compris la plupart de ce qui n'allait pas. La documentation est médiocre, mais il semble que les commandes commençant par 42 concernent tous les périphériques du réseau et n'ont pas de paramètres qui changent de sorte que la somme de contrôle des deux derniers jeux de données est fournie et non calculée comme la première. –