#include <LiquidCrystal.h>
const int RS=13; //declaration constante de broche
const int E=12; //declaration constante de broche
const int D4=11; //declaration constante de broche
const int D5=10; //declaration constante de broche
const int D6=9; //declaration constante de broche
const int D7=8; //declaration constante de broche
LiquidCrystal lcd(RS, E, D4, D5, D6, D7);// initialisation LCD en mode 4 bits
int tempPin=A0;
double temp;
double seuil=31.25;
double seuil1=85.45;
int Bp1Pin=39;
int Bp2Pin=38;
int Bp3Pin=37;
int Bp4Pin=36;
int Bp5Pin=35;
int LED1Pin=30;
int LED2Pin=31;
int LED3Pin=32;
int LED4Pin=33;
int LED5Pin=34;
// etat relais
int R1Pin=22;
int R2Pin=23;
int R3Pin=24;
int R4Pin=25;
int R5Pin=26;
//
int etatBouton=0;
int etatBouton1=0;
void setup() {
//Déclaration de Pin de Capteur de Temp en sortie
pinMode(tempPin,INPUT);
//Déclaration des Pins de ULN2803 en sorti
pinMode(22,OUTPUT);
pinMode(23,OUTPUT);
pinMode(24,OUTPUT);
pinMode(25,OUTPUT);
pinMode(26,OUTPUT);
pinMode(27,OUTPUT);
pinMode(28,OUTPUT);
pinMode(29,OUTPUT);
//Déclaration des Pins des LEDS en Sortie
pinMode(30,OUTPUT);
pinMode(31,OUTPUT);
pinMode(32,OUTPUT);
pinMode(33,OUTPUT);
pinMode(34,OUTPUT);
//Déclaration des Pins des interrupteurs en entrée
pinMode(35,INPUT);
pinMode(36,INPUT);
pinMode(37,INPUT);
pinMode(38,INPUT);
pinMode(39,INPUT);
lcd.begin(16, 2); // Initialise le LCD avec 16 colonnes x 2 lignes
}
void loop() {
temp=analogRead(tempPin);
temp=(5.0temp100.0)/1024.0;
lcd.setCursor(0,0);
lcd.print(“Temp:”);
lcd.print(temp);
lcd.print((char)223);
lcd.print(“C”);
if(temp==seuil){
digitalWrite(R1Pin,HIGH);
}
else{
digitalWrite(R1Pin,LOW);
}
if(temp==seuil && R1Pin==LOW)
{
lcd.setCursor(1,0);
lcd.print(“Sonde Erreur”);
}
boolean etatBouton=digitalRead(Bp1Pin);
if(temp==seuil&&etatBouton==LOW)
{
digitalWrite(LED1Pin,HIGH);
lcd.setCursor(2,2);
lcd.print(“sonde1 ok”);
}
else
{
etatBouton==HIGH;
digitalWrite(LED1Pin,LOW);
}
if(temp==seuil1){
digitalWrite(R2Pin,HIGH);
}
else{
digitalWrite(R2Pin,LOW);
}
boolean etatBouton1=digitalRead(Bp2Pin);
if(temp==seuil1 && R2Pin==LOW)
{
lcd.setCursor(1,0);
lcd.print(“Sonde Erreur”);
}
if(temp==seuil1&&etatBouton1==LOW)
{
digitalWrite(LED2Pin,HIGH);
lcd.setCursor(2,2);
lcd.print(“sonde2 ok”);
}
else
{
digitalWrite(LED2Pin,LOW);
}
}
finaljunior.ino (6.47 KB)