Erreur de compilation - exit status 1

J'ai utilisé un code de ma prof d'elec pour une gestion de température avec un tft ili9341 et un uno R4

j'ai ce message
compilation terminated.

exit status 1

Compilation error: exit status 1

#include <Adafruit_GFX.h>
#include <Adafruit_ILI9341.h>
#include <TouchScreen.h>
#include <math.h>

#define TFT_CS     10
#define TFT_RST    9
#define TFT_DC     8

#define PIN_NTC A1

#define MINPRESSURE 10
#define MAXPRESSURE 1000

// Brochage de l'écran tactile
#define TS_CS_PIN 7
#define TS_IRQ_PIN 2

// Brochage des relais
#define RELAY1_PIN 3
#define RELAY2_PIN 4
#define RELAY3_PIN 5

TouchScreen ts = TouchScreen(TS_CS_PIN, TS_IRQ_PIN);

Adafruit_ILI9341 tft = Adafruit_ILI9341(TFT_CS, TFT_DC, TFT_RST);

double Rref = 10000.0; // Résistance de référence à 25°C
double V_IN = 5.0; // Alimentation électrique

double consigne_temperature = 50.0; // Température de consigne initiale

// Information de la thermistance
double A_1 = 3.354016E-3;
double B_1 = 2.569850E-4;
double C_1 = 2.620131E-6;
double D_1 = 6.383091E-8;

unsigned long time_relay1_triggered = 0;
unsigned long time_relay2_triggered = 0;
bool relay1_active = false;
bool relay2_active = false;

void setup() {
  Serial.begin(9600);
  tft.begin();
  tft.setRotation(3);

  pinMode(RELAY1_PIN, OUTPUT);
  pinMode(RELAY2_PIN, OUTPUT);
  pinMode(RELAY3_PIN, OUTPUT);
}

void loop() {
  // Lecture des coordonnées tactiles
  TSPoint p = ts.getPoint();
  pinMode(YP, OUTPUT);
  pinMode(XM, OUTPUT);

  if (p.z > MINPRESSURE && p.z < MAXPRESSURE) {
    int xpos = map(p.x, 0, 240, tft.width(), 0);
    int ypos = map(p.y, 0, 320, tft.height(), 0);

    // Interaction tactile pour ajuster la consigne de température
    if (xpos > 100 && xpos < 140 && ypos > 200 && ypos < 240) {
      consigne_temperature -= 1.0; // Diminuer la consigne de 1 degré
    } else if (xpos > 180 && xpos < 220 && ypos > 200 && ypos < 240) {
      consigne_temperature += 1.0; // Augmenter la consigne de 1 degré
    }
  }

  // Lecture de la température pour chaque résistance chauffante (simulée ici)
  double valeurAnalog = analogRead(PIN_NTC);
  double V =  valeurAnalog / 1024 * V_IN;
  double Rth = (Rref * V ) / (V_IN - V);
  double kelvin = SteinhartHart(Rth);
  double celsius = kelvin - 273.15;

  // Vérification de la plage de température
  if (celsius < 18) {
    celsius = 18;
  } else if (celsius > 100) {
    celsius = 100;
  }

  // Contrôle des relais en fonction de la consigne de température
  if (celsius < consigne_temperature) {
    if (!relay1_active) {
      digitalWrite(RELAY1_PIN, HIGH); // Allumer le relais 1 (résistance chauffante 1)
      relay1_active = true;
      time_relay1_triggered = millis(); // Enregistrer le temps où le relais 1 a été activé
    } else if (relay1_active && !relay2_active && (millis() - time_relay1_triggered >= 30000)) {
      digitalWrite(RELAY2_PIN, HIGH); // Allumer le relais 2 (résistance chauffante 2)
      relay2_active = true;
      time_relay2_triggered = millis(); // Enregistrer le temps où le relais 2 a été activé
    } else if (relay1_active && relay2_active && (millis() - time_relay2_triggered >= 60000)) {
      digitalWrite(RELAY3_PIN, HIGH); // Allumer le relais 3 (résistance chauffante 3)
    }
  } else {
    digitalWrite(RELAY1_PIN, LOW); // Éteindre le relais 1 (résistance chauffante 1)
    digitalWrite(RELAY2_PIN, LOW); // Éteindre le relais 2 (résistance chauffante 2)
    digitalWrite(RELAY3_PIN, LOW); // Éteindre le relais 3 (résistance chauffante 3)
    relay1_active = false;
    relay2_active = false;
  }

  // Affichage de la température et de la consigne de température
  tft.fillScreen(ILI9341_BLACK);
  tft.setCursor(10, 10);
  tft.setTextColor(ILI9341_WHITE);
  tft.setTextSize(2);
  tft.print("Temp: ");
  tft.print(celsius);
  tft.print(" C");

  tft.setCursor(10, 30);
  tft.print("Consigne: ");
  tft.print(consigne_temperature);
  tft.print(" C");

  delay(1000);
}

double SteinhartHart(double R)
{
  // Division de l'équation en 4 parties. La premiere est uniquement A1
  double equationB1 = B_1 * log(R/Rref);
  double equationC1 = C_1 * pow(log(R/Rref), 2);
  double equationD1 = D_1 * pow(log(R/Rref), 3);
  double equation = A_1 + equationB1 + equationC1 + equationD1;
  return pow(equation, -1);
}

saisissez ou collez du code ici

J'ai besoin de votre aide

vous avez sans doute un message bcp plus long. postez le avec les balises de code

dites nous en plus aussi sur votre carte arduino et le montage

:warning:
Post mis dans la mauvaise section, on parle anglais dans les forums généraux. déplacé vers le forum francophone.

Merci de prendre en compte les recommandations listées dans Les bonnes pratiques du Forum Francophone

@chtimimir77
On demande que le titre du fil de discussion présente le problème de manière synthétique.
J'ai changé le titre et copié celui que tu avais mis en tête de ton message.

Pour obtenir des messages d'erreur plus complets, si tu ne l'as pas déjà fait, il faut activer le compte-rendu détaillé dans les préférences.

Finalement,
Je n'ai pas réussi à faire marcher l'écran tactile dommage.
J'ai fait mon projet avec 3 bouton physique
Et un écran LCD

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.