system
May 13, 2014, 12:57pm
1
Bonjour,
En bref J'ai un programme pour sur arduino qui capte et traduis une trame Radio.
Il y à donc a la fin un calcul de CRC que je ne comprend pas c’est pour cela que je vous demande de me l'expliquer si des gens y arrivent
boolean CheckITPlusCRC() {
byte nbBytes = 5;
byte reg = 0;
byte curByte, curbit, bitmask;
byte do_xor;
while (nbBytes != 0) {
curByte = rf12_buf[5-nbBytes];
nbBytes--;
bitmask = 0b10000000;
while (bitmask != 0) {
curbit = ((curByte & bitmask) == 0) ? 0 : 1;
bitmask >>= 1;
do_xor = (reg & 0x80);
reg <<=1;
reg |= curbit;
if (do_xor) {
reg ^= CRC_POLY;
}
}
}
return (reg == 0);
}
Je sais aussi que : CRC des 4 octets situés du quartet n°6 au quartet n°13. Le polynôme est x8+x5+x4+1 (0x31), la valeur initiale 0, et il n'y a pas de XOR à la fin.
Merci d'avance
Cordialement
Ganew:
Bonjour,
En bref J'ai un programme pour sur arduino qui capte et traduis une trame Radio.
Il y à donc a la fin un calcul de CRC que je ne comprend pas c’est pour cela que je vous demande de me l'expliquer si des gens y arrivent
Le polynôme est x8+x5+x4+1
bonjour
puisque tu connais déjà le polynôme generateur , que veut tu que l'on t'explique de plus ?
Quand on me pose une question "comment calculez vous le CRC " je dis quoi ?
Et je ne comprend pas comment le programme le calcul...
bonjour,
pourquoi ne pas continuer sur ton post précédent?
http://forum.arduino.cc/index.php/topic,233892.0.html
Quand on me pose une question "comment calculez vous le CRC " je dis quoi ?
que t'as pompé un code sur le net sans comprendre ce qu'il fait
lis ce topic, tu trouveras des réponses peut être
http://forum.arduino.cc/index.php?topic=110161.0
Je ne continu pas sur ce topic car ce n'est pas le même problème.
Ensuite non je n'ai pas "pompé ce programme sur internet c'est bien mon prof qui me l'a donné.
Et je n'ai pas d'explication dasn le topic la personne utilise le polynome de fred comme moi mais il ne décrit pas le calcul qui va faire pour l'utiliser...