Bonjour, bonsoir à tous, j'ai fait un programme pour mesurer une consommation d'énergie , et j'affiche cette consommation d'énergie sur le moniteur série d'arduino.
Cependant, je voudrais afficher cette même consommation sur un afficheur lcd, mais ce que m'affiche l'afficheur lcd est uniquement une série de "ffffffffffffffffffffffff" .... J'ai essayé d'enlever mes lcd.print en pensant que ca venait de là... Mais même en essayant d'afficher juste l'heure, cela ne fonctionne toujours pas ... (j'ai toujours une série de fffffff).
J'ai mis en pièce joint, l'afficheur lcd ainsi que son branchement, l'afficheur est bien évidemment en (16,4).
Je pense que le problème vient de ma carte SD qui doit utiliser les mêmes broches que le lcd.
#include <SD.h>
#include <RTClib.h>
#include <wire.h>
#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
RTC_DS1307 rtc;
void setup()
{
rtc.begin(); // Initialisation de l'horloge et donc de la bibliothèque RTClib.h
lcd.begin(16,4); // Initialisation de l'écran lcd
}
void loop()
{
DateTime now = rtc.now();
lcd.setCursor(1, 0);
lcd.print(now.day());
lcd.print(" ");
switch (now.month())
{
case 1:
lcd.print("janvier");
break;
case 2:
lcd.print("fevrier");
break;
case 3:
lcd.print("mars");
break;
case 4:
lcd.print("avril");
break;
case 5:
lcd.print("mai");
break;
case 6:
lcd.print("juin");
break;
case 7:
lcd.print("juillet");
break;
case 8:
lcd.print("aout");
break;
case 9:
lcd.print("septembre");
break;
case 10:
lcd.print("octobre");
break;
case 11:
lcd.print("novembre");
break;
case 12:
lcd.print("decembre");
break;
}
lcd.print(" ");
lcd.print(now.year());
delay(periodeMesure);
lcd.clear();
/*
lcd.setCursor(0, 0);
lcd.print(now.hour());
lcd.print(":");
if (now.minute() < 10) {
lcd.print("0");
}
lcd.print(now.minute());
lcd.print(":");
if (now.second() < 10) {
lcd.print("0");
}
lcd.print(now.second());
lcd.setCursor(2,0); // Défini le curseur de l'afficheur LCD à la position (2,0)
lcd.print("Energie consommee en wH : "); // Affiche sur l'afficheur LCD le texte : Energie consommee en Wh
lcd.print(energieCons,2);
lcd.setCursor(3,0); // Défini le curseur de l'afficheur LCD à la position (3,0)
lcd.print("Puissance en W : "); // Affiche sur l'afficheur LCD le texte : Puissance en W
lcd.print(p,3);
lcd.setCursor(4,0); // Défini le curseur de l'afficheur LCD à la position (4,0)
lcd.print("Courant Batterie en A : "); // Affiche sur l'afficheur LCD le texte : Courant Batterie en A
lcd.print(iCons,4);
lcd.setCursor(4,1); // Défini le curseur de l'afficheur LCD à la position (4,1)
lcd.print("Tension Batterie en V : "); // Affiche sur l'afficheur LCD le texte : Tension Batterie en V
lcd.print(uCons,4);
*/
}
Merci d'avoir lu .