besoin d'aide pour un menu,

ok tout marche bien sur l écran non I2C mais toujours la mème chose avec c PU#### d’écran I2C je croie que je v les garder pour des truc simple a afficher et opter pour d autre type d’écran.

tu ma dit que tu n utiliser pas se type d’écran tu utilise quoi et tu conseillerez quoi ?

j ai vu d'autre type d’écran mais je c pas encore si c'est velue a comprendre pour mon lvl ?

Oui, c'est ça que j'utilise : écran TFT couleur en SPI. Il existe en touchscreen ce qui te permet de faire une interface tactile.

SPI ! c'est important pour ne pas avoir trop de fils à connecter. (un peu comme l'I2C)

Si tu veux monter jusque vers 20€, tu peux prendre un écran Nextion, c'est top. Nextion propose un logiciel pour construire l'IHM, ce qui simplifie énormément le travail.

Moi, je n'en ai jamais testé, mais on trouve de l'aide sur le forum pour ça aussi.

Si tout marche bien maintenant, enlève les lignes à la fin du setup, qui ne servent à rien et diminuent la longévité de ton EEPROM

 Serial.println(EEPROM.read(0));
 Serial.println(EEPROM.read(4));
 Serial.println(EEPROM.read(6));
 Serial.println(EEPROM.read(8));
 Serial.println(EEPROM.read(10));
 Serial.println(EEPROM.read(12));
 Serial.println(EEPROM.read(14));
 Serial.println(EEPROM.read(16));
 Serial.println(EEPROM.read(18));

ok je nettoie sa

au début en faite je penser que EEPROM avez une durée de vie mais a l écriture je ne penser pas que la lecture impacter aussi

sinon ouep je vient voir une vidéo sur le logiciel de l'écran et c juste ouf et sa na pas l aire incompréhensible je croie je v partir sur sa. leur logiciel et utilisable pour tout leur écran ? ou faut que je fasse gaffe ?

Je pense que c'est pour tous leurs écrans. Je crois que tu peux le télécharger et l'essayer sans acheter d'écran

bin parfait je v regarder sa et m en prendre un le mois prochain je croie en tout cas un grand merci pour ton aide tu ma fait avancer énormément dans mon projet.

Pas de souci, ça m'a fait plaisir. A+ pour la suite !

J'ai suivi en diagonale.

Si j'ai bien compris :
Vous ne parvenez pas à afficher quoi que ce soit avec un LCD 20x4 I2C ?

Pourtant avec la librairie proposée par lesept : GitHub - fdebrabander/Arduino-LiquidCrystal-I2C-library: Library for the LiquidCrystal LCD display connected to an Arduino board., ça marche tout seul.

hello
moi j'utilise celle ci sans prob

LiquidCrystal_I2C.zip (7.95 KB)

dfgh hbachetti en faite je n 'est aucun soucie pour des affichage simple mais avec mon menu je doit avoir certaine incompatibilité avec la librairie

sans I2C sa marche impeccable et des que je passe avec I2C tout est en vrac et j ai pu constater que beaucoup de monde était dans mon cas

Tu pourrais être plus précis et poster le code avec I2C ?

bien-sur pas de soucie jte poste sa. etre plus précis c compliquer pour moi je suis novice sur le Arduino

pas de soucie quand je suis sans I2C mon menu affiche bien je peux naviguer rentrer dans les sous menu et les éditer

par contre en I2C mes sonde sont bien afficher j arrive a rentrer dans le menu j'affiche les menu 10,20,30

pour les sous menu seul les sous menu 11,12 et 21 apparaisse le 22 j ai uniquement le dernier caractère de mon sous menu qui s affiche

et quand je souhaite augmenter la température de ma regul dans le sous menu l' affichage de celui si plante

second soucie il ne prend plus en conte mes ventilo et ne d’éclanche plus

merci

code-menu-OK_sonde-OK _ventil-OK _eeprom-OK _V6.3_en-devcpp.cpp (11.2 KB)

Il n'y a pas de LCD I2C dans ce code.

ah !!! zut je me suis planté de code dsl

test i2c .cpp (6.99 KB)

test i2c positive.cpp (9.83 KB)

Il manque :

  • type de carte utilisée
  • librairie LCD utilisée

J'ai trouvé : https://bitbucket.org/fmalpartida/new-liquidcrystal/src

Dans to premier code :

LiquidCrystal_I2C lcd(0x27,20,4);// adressage de votre carte.

Cette librairie possède un constructeur qui correspond à ce passage de paramètres mais les paramètres ne sont pas ceux que tu crois :

   LiquidCrystal_I2C::LiquidCrystal_I2C(uint8_t lcd_Addr, uint8_t backlighPin, 
                                     t_backlightPol pol = POSITIVE)
   // plus loin dans ton setup :
  lcd.init();             // inutile
  lcd.backlight();
  lcd.begin(16, 2);  // 16x2 ???

Tu mélanges tout.

Parlons du deuxième code :

LiquidCrystal_I2C lcd(0x27, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE);

Les paramètres correspondent à ce constructeur :

LiquidCrystal_I2C::LiquidCrystal_I2C(uint8_t lcd_Addr, uint8_t En, uint8_t Rw,
                                     uint8_t Rs, uint8_t d4, uint8_t d5,
                                     uint8_t d6, uint8_t d7, uint8_t backlighPin, 
                                     t_backlightPol pol = POSITIVE )

Ce constructeur permet de préciser quelles pins du convertisseur I2C sont reliées aux pins de l'afficheur.
Es-tu sûr de la correspondance ?

Sincèrement tu ferais mieux d'utilisée cette librairie : Arduino-LiquidCrystal-I2C-library.git

Dans le premier code, supprime l'appel à lcd.init() et les paramètres de lcd.begin()

//  lcd.init();
  lcd.backlight();
  lcd.begin();

La librairie new-liquidcrystal est un monstre qui permet d'adresser beaucoup d'afficheurs.
Inutile dans ton cas.

je v essayer quand je rentre mais j'ai test cette librairie en première. jte redit en tout cas merci de te pencher sur mon soucie

au passage j ai jeté un coups d’œil a ton blog y a pas mal de contenu c cool. ta fait pas mal de chose sur les capteur et du coups je suis a la recherche d'une sonde d'humidité qui ressemblerai a la DS18B20 la forme la taille etc il ne faut pas plus grand car dans l idéale il faudrait que je puisse l envoyer dans un trous entre 5 et 10 mm et que les connectique soit étanche car elle sera coulé dans de la pierre reconstitué ?

Je ne connais pas de capteur d'humidité de cette taille.