Bonjour,
Je tiens d'abord à dire que mon code fonctionne très bien mais comme le titre l'indique , quand le téléversement est terminé, j'ai ce message "aucun fichier d'en-tête (.h) trouvé"
C'est pour tester un DS1302 (pas trop mauvais mais quartz pas compensé en température donc direction DS3231) en vue d'un réveil avec écran TFT tactile car j'aime pas les boutons.
Plus précisement :
Le croquis utilise 8270 octets (3%) de l'espace de stockage de programmes. Le maximum est de 253952 octets.
Les variables globales utilisent 339 octets (4%) de mémoire dynamique, ce qui laisse 7853 octets pour les variables locales. Le maximum est de 8192 octets.
Bibliothèque non valide trouvée dans C:\Program Files (x86)\Arduino\libraries\adafruit_docs : aucun fichier d'en-tête (.h) trouvé dans C:\Program Files (x86)\Arduino\libraries\adafruit_docs
Bibliothèque non valide trouvée dans C:\Program Files (x86)\Arduino\libraries\bitmaps : aucun fichier d'en-tête (.h) trouvé dans C:\Program Files (x86)\Arduino\libraries\bitmaps
Bibliothèque non valide trouvée dans C:\Program Files (x86)\Arduino\libraries\examples : aucun fichier d'en-tête (.h) trouvé dans C:\Program Files (x86)\Arduino\libraries\examples
Bibliothèque non valide trouvée dans C:\Program Files (x86)\Arduino\libraries\adafruit_docs : aucun fichier d'en-tête (.h) trouvé dans C:\Program Files (x86)\Arduino\libraries\adafruit_docs
Bibliothèque non valide trouvée dans C:\Program Files (x86)\Arduino\libraries\bitmaps : aucun fichier d'en-tête (.h) trouvé dans C:\Program Files (x86)\Arduino\libraries\bitmaps
Bibliothèque non valide trouvée dans C:\Program Files (x86)\Arduino\libraries\examples : aucun fichier d'en-tête (.h) trouvé dans C:\Program Files (x86)\Arduino\libraries\examples
Hein ? oui j'ai chercher avec qwant (google n'est pas mon ami) mais rien trouver . Et puis si je résous tous mes problèmes aujourd'hui qu'un autre peut faire à ma place demain, ça serait ballot non ?
Attention : prêt ? partez !
Le premier qui trouve a gagné .
/*__________________projet-pourri_____*/
/*___librairies___*/
#include <stdio.h>
#include <DS1302.h>
#include <LiquidCrystal.h>
/*_________________fin des libraisries__*/
/*patte_du_rétroéclairage_*/
const byte BACKLIGHT_PWM_PIN = 10;
/*_________________afficheur_lcd________*/
LiquidCrystal lcd(8, 9, 4, 5, 6, 7);
//int i = 0;
int h = 0;
int bat = 0;
int x = 0;
int lcd_key = 0;
int adc_key_in = 0;
#define btnRIGHT 0
#define btnUP 1
#define btnDOWN 2
#define btnLEFT 3
#define btnSELECT 4
#define btnNONE 5
/*_______________________________fin___*/
namespace {
const int kCePin = 53; //patte RST
const int kIoPin = 51; //patte DATA
const int kSclkPin = 49; //patte CLK
DS1302 rtc(kCePin, kIoPin, kSclkPin);
/*_______les jours en français _____*/
String dayAsString(const Time::Day day) {
switch (day) {
case Time::kSunday: return "Dimanche";
case Time::kMonday: return "Lundi";
case Time::kTuesday: return "Mardi";
case Time::kWednesday: return "Mercredi";
case Time::kThursday: return "Jeudi";
case Time::kFriday: return "Vendredi";
case Time::kSaturday: return "Samedi";
}
return "(unknown day)";
}
/*_______lecture datte et heure_______*/
void printTime() {
Time t = rtc.time();
const String day = dayAsString(t.day);
char buf[50]; //
snprintf(buf, sizeof(buf), "%02d/%02d/%02d",t.yr, t.mon, t.date, day.c_str());
char buf1[50];
snprintf(buf1, sizeof(buf1), "%02d:%02d:%02d", t.hr, t.min, t.sec);
/*_________écriture_date_heures________*/
Serial.println(buf1);
Serial.print(buf);
lcd.setCursor(0,0);
lcd.print(buf);
lcd.setCursor(0,1);
lcd.print(buf1);
Serial.print(buf1);
delay(300);
}
/*_______________________fin____________*/
}
void setup() {
analogWrite(BACKLIGHT_PWM_PIN, 255); // <--------------luminosité(elle est là pour future réglages
/*_____________________alim_virtuel____*/
//alim virtuel car le 5v est planqué par le keypad
const int vcc = 47; // VCC du module
pinMode(vcc, OUTPUT);
digitalWrite(vcc, HIGH); //et ça marche bien pour cette utilisation mais pas pour le final
/*____________________fin_alim_virtuel___*/
lcd.begin(16, 2);
lcd.clear();
Serial.begin(9600);
rtc.writeProtect(false);
rtc.halt(false);
// ************ mettre a l'heure la première fois en activant les 3 lignes ci dessous
//mise a l'heure
//Time t(2019, 4, 6, 15, 07, 50, Time::kSaturday); // <---- année mois jour heures minutes secondes et jour en lettre ici
//rtc.time(t);
}
void loop() {
x = analogRead(A10); // <---------c'est pour lire la tension de mon A-fesses
lcd.setCursor(10,1);
lcd.print("V");
lcd.setCursor(12,1);
bat = x * (5.0 / 1023.0); //à peu près, ok ok, c'est pas compensé mais plus tard
lcd.print(bat);
lcd.setCursor(12,0);
lcd.print(h);
h++;
printTime();
}
Edite : je n'affiche pas les jours question de place sur l'LCD