MathieuBahin / ControleurFilPiloteSMS

Contrôler un radiateur avec fil pilote à distance par SMS
0 stars 0 forks source link

erreur compilation #1

Open kopascal opened 11 months ago

kopascal commented 11 months ago

Bonjour,

Merci pour le partage !! J'essaie votre code et j'ai une erreur à la compilation :

C:\Users\Admin\Documents\Arduino\chauffage arduino mathieubahin\ControleurFilPiloteSMS-main\GSM_Controleur_Radiateur\GSM_Controleur_Radiateur.ino: In function 'void check_GSM()':

C:\Users\Admin\Documents\Arduino\chauffage arduino mathieubahin\ControleurFilPiloteSMS-main\GSM_Controleur_Radiateur\GSM_Controleur_Radiateur.ino:298:23: warning: comparison is always true due to limited range of data type [-Wtype-limits] if (u8_CREG_Index != -1) // le message reçue est +CREG: x,y

J'ai remplacé par "unsigned char" par "char" dans void check_GSM(), pas d'erreur, mais cela a-t-il une incidence ?

J'ai commandé des CI que j'attends pour tester.

Bien cordialement Pascal Kolly

void check_GSM() { String str_recep; // unsigned char u8_CREG_Index = 0; remplacée par celle dessous pour éviter erreur compil char u8_CREG_Index = 0;

ifdef DEBUG

    Serial.println("Vérification GSM connecté");
#endif
Serial_Sim.println("AT+CREG?");
delay(1000);

while (Serial_Sim.available())
{
    st_gsm.s8_received = Serial_Sim.read();  // 1 caractère
    str_recep.concat(st_gsm.s8_received);   //on concatène le char à la chaine  
    delay(1); // nécessaire car la liaison uart est 9600 (1ms par caractère)
    #ifdef DEBUG
        Serial.print(st_gsm.s8_received);
    #endif
MathieuBahin commented 11 months ago

Bonjour, non pas d'incidence. Cette variable est utilisé pour récupérer l'index du caractère virgule. Il est effectivement possible que l'index soit négatif si le caractère n'est pas trouvé. Si vous le souhaitez vous pouvez faire une pull request qui corrige le problème. N'hésiter pas à me tenir au courant de vos avancées. Pour info le prototype tourne non stop depuis maintenant 2 ans sans problème (mis à part que les utilisateurs s'attendent à recevoir la réponse instantanément même si le réseau n'est pas bon) Slt Mathieu