Problème calcul d'un checksum

Bonjour à tous,

Je dois pour un projet (Topic Afficheur à LED) calculer un checksum de données à envoyer.
Voici mon programme:

char A[11] = {0,1,2,3,192,'0','0','1',226,193,192};
char FIN = 4;
int i;
int cnt;
int fin = 0;

char MSG[4]={'T','E','S','T'};
char CK=0; // Checksum

  
void setup() {
  // Port série à 9600
  Serial.begin(9600);
}

void loop() {
  if(fin == 0){
    for(i=0;i<=10;i++){
       CK = CK^A[i];
    }
    for(i=0;i<=3;i++){
       CK = CK^MSG[i];
    }
    CK = CK^FIN;
    
    for(i=0;i<=10;i++){
       Serial.print(A[i]);
      delay(2); 
    }
    
    Serial.print(A);
    Serial.print(MSG);
    Serial.print(FIN);
    Serial.print(CK,DEC);
    fin = 1;
    }
 }

Mais lors de l’affichage sur le moniteur, la valeur de CK est nulle.

Bonjour,
En effet, je viens de me rendre compte qu'en changeant le MSG j'obtiens bien une valeur non-nul, j'ai pas pris un bon exemple :grin:

Par contre, toujours aucun changement sur mon afficheur.

Est-ce que mon programme effectue la même chose que ce programme ?

Salut,
Tout d'abord merci de ta réponse !
J'ai récupéré un afficheur à LED, j'ai réussi à communiquer avec lui ! ;D
Le 3éme caractère envoyé définit l'adresse de cette afficheur, qui était 1 et non 2 ! 8)

Tout fonctionne merci ! :smiley: