Bonjours à tous je suis dans un premier temps heureux de pouvoir enfin parti de cette communauté.
Je me suis lancé depuis quelques mois dans l'arduino et à l'heure actuelle je rencontre un problème lors de la compilation d'un programme dédié à un afficheur LCD je vous écris ci dessous le programme:
#include <LiquidCrystal.h>
/*****************Régulation intéligente de la température d'une voiture /
/************************************************************************/
int LM35_pin = A0; //La pin A0 est reliée au capteur LM35
int Motors_pin = 13; //La pin 13 est reliée aux deux ventilateurs tournant dans deux sens différents
int pushbutton_pin = 0; // La pin 8 est reliée au boutton poussoir
/**************************Pin Déclaration *****************************************/
int LM35_Value = 0;
float Temperature = 0;
float Temperature_Celsius = 0;
int pushbutton = 0;
//Création d'un objet LCD de paramétre:(RS= pin N°12, E= pin N°11, D4= pin N°5,D5= pin N°4,D6= pin N°3, D7= pin N°2
LiquidCrystal LCD_pin = LiquidCrystal(12,11,5,4,3,2);
void setup(){
Serial.begin(9600);
//Initialisation des composants :
pinMode(LM35_pin,INPUT); // Définit la broche A0 comme une entrée
pinMode(Motors_pin,OUTPUT);/// Définit la broche 13 comme une sortie
pinMode(pushbutton_pin,INPUT); // Définit la broche 0 comme une entrée
LCD_pin.begin(16,2);
LCD_pin.clear();
}
void loop() {
/**************************************** PARTIE 1.a /
/ Mesure de la température avec un capteur LM35******/
// La fonction analogRead, va lire la valeur sur la pin A0 et la convertir en valeur numérique
LM35_Value = analogRead(LM35_pin);
Temperature = (LM35_Value/1024.0)*5000;
Temperature_Celsius = Temperature/10;
Serial.print("Lav temperature est :");
Serial.println(Temperature_Celsius);
/**************************************** PARTIE 1.b *****************/
/ Fonctionnement des Moteurs a partie de 30°C ************************/
if(Temperature_Celsius >= 30)
digitalWrite(Motors_pin,HIGH);
else
digitalWrite(Motors_pin,LOW);
/**************************************** PARTIE 1.c **/
/ Affichage LCD ***************************************/
LCD_pin.setCursor(0,0);
LCD_pin.print("Temperatur en C:");
LCD_pin.setCursor(0,1);
LCD_pin.println(Temperature_Celsius);
/**************************************** PARTIE 1.d ****************/
/ Interuption à l’aide d’un bouton poussoir *************************/
pushbutton = digitalRead(pushbutton_pin);
if(pushbutton == 1)
digitalWrite(Motors_pin,LOW);
else
digitalWrite(Motors_pin,HIGH);
}
Voici l'erreur :
C:\Users\Fatma Zorgati\Documents\Scolarité\P3GA\S2\TP Systeme Embarqué\Confinement\06-05-2020 (S4)\Smart_temp_rature\Smart_temp_rature UNO.ino: In function 'void loop()':
C:\Users\Fatma Zorgati\Documents\Scolarité\P3GA\S2\TP Systeme Embarqué\Confinement\06-05-2020 (S4)\Smart_temp_rature\Smart_temp_rature UNO.ino:30:6: error: redefinition of 'void loop()'
C:\Users\Fatma Zorgati\Documents\Scolarité\P3GA\S2\TP Systeme Embarqué\Confinement\06-05-2020 (S4)\Smart_temp_rature\Smart_temp_rature.ino:31:6: note: 'void loop()' previously defined here
Plusieurs bibliothèque trouvées pour "LiquidCrystal.h"
Utilisé : C:\Program Files (x86)\Arduino\libraries\LiquidCrystal
Non utilisé : C:\Users\Fatma Zorgati\Documents\Arduino\libraries\LiquidCrystal-master
Utilisation de la bibliothèque LiquidCrystal version 1.0.7 dans le dossier: C:\Program Files (x86)\Arduino\libraries\LiquidCrystal
exit status 1
Erreur de compilation pour la carte Arduino Mega or Mega 2560
P.S: Je spécifie que le programme marché parfaitement mais quand j'ai changé de carte les ennuies ont commencer
Merci d'avance pour votre aide