Bonjour à toutes et à tous,
Voilà, je vous expose mon problème. Je dois communiquer via modem avec un Serveur. Celui ci, m'envoi une trame de 254 octets max et à la fin de cette trame il y a 2octets qui correspondent au CRC sur 16bits. Or, je ne connais rien de ce CRC, je ne sais pas comment il est généré.
Je dois donc créer un algo qui dois me generer le meme CRC.
Je peux vous donnée quelques pistes :
pour la trame suivante, j'ai le CRC suivant :
trame :
et pour la trame suivante j'ai le CRC suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 unsigned char trame[14],crc[2]; trame[0]=0x81; trame[1]=0x00; trame[2]=0x0b; trame[3]=0x31; trame[4]=0x30; trame[5]=0x30; trame[6]=0x30; trame[7]=0x32; trame[8]=0x31; trame[9]=0x31; trame[10]=0x31; trame[11]=0x31; trame[12]=0x31; trame[13]=0x31; CRC : 0x1d29 ou crc[0]=0x1D crc[1]=0x29
Donc voila il le problème que j'ai, j'ai essayé de trouver un polynome generateur en brute force mais je n'arrive pas a trouvé le même polynome pour les deux trame et leur CRC.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 trame[0]=0x81; trame[1]=0x00; trame[2]=0x0b; trame[3]=0x31; trame[4]=0x30; trame[5]=0x30; trame[6]=0x30; trame[7]=0x32; trame[8]=0x31; trame[9]=0x32; trame[10]=0x33; trame[11]=0x34; trame[12]=0x35; trame[13]=0x36; CRC : 0xA63F ou crc[0]=0xA6 crc[1]=0x3F
Je vous remercie beaucoup pour votre aide
Matt
Partager