Bonjour
Matériel :
- Une carte Arduino Uno ( c'est uniquement pour faire des tests )
- Un module RTC DS1302
- Un écran LCD i2c 1602
Câblage :

La librairie que j'ai utilisé :
Le tuto que j'ai utilisé :
Mon problème :
J'ai utilisé le code du tuto pour tester mon module et commencer a faire joujou avec. Mais maintenant, j'aimerai le comprendre. Il y a une ligne que je ne comprends pas, c'est celle-ci :
// 0 sec, 30 min, 18 hour, 2 date, january, 2022, wed
time.settime(0, 30, 18, 2, 1, 22, 0);
Elle sert a mettre l'horloge a jour. Mais pour la réglée a la date d'aujourd'hui ( 0 s, 0 min, 17h, 17 j, mai, 2023, mercredi ), je ne comprend pas. Dans le commentaire, une chose me dérange :
wed = wednesday, mais dans le code, Wed correspond a 0...
Cela voudrai dire que Thursday : 1 ?
La doc de la librairie est en russe...
Si vous avez une doc en français/anglais, ou que vous avez déjà fait joujou avec cette librairie et que vous savez comment faire, je suis preneur ![]()
Voici le code exemple du tuto :
#include "Wire.h"
#include "LiquidCrystal_I2C.h"
LiquidCrystal_I2C LCD(0x27,16,2);
#include "iarduino_RTC.h"
iarduino_RTC time (RTC_DS1302,7,5,6); // pour module DS1302
// iarduino_RTC time (RTC_DS1307); // pour module DS1307 i2C
// iarduino_RTC time (RTC_DS3231); // pour module DS3231 i2C
void setup() {
Serial.begin(9600);
LCD.init();
LCD.backlight();
time.begin();
// 0 sec, 30 min, 18 hour, 2 date, january, 2022, wed
time.settime(0, 30, 18, 2, 1, 22, 0);
}
void loop() {
// si 1 seconde s'est écoulée affiche l'heure
if (millis() % 1000 == 0) {
Serial.println(time.gettime("d-m-Y, H:i:s, D"));
LCD.setCursor(0,0);
LCD.print(time.gettime("d M Y, D"));
LCD.setCursor(4,1);
LCD.print(time.gettime("H:i:s"));
}
}
Merci d'avance
Cordialement
Pandaroux007
EDIT : autre question, cette ligne :
Serial.println(time.gettime("d-m-Y, H:i:s, D"));
Les lettres servent a appeler une partie de la date ? Par exemple d est l'heure, m les minutes, etc ( ce sont des exemples... ) ?