Merci de ta reponse,
Les afficheurs sont:
https://fr.aliexpress.com/item/1005001525593395.html?spm=a2g0s.9042311.0.0.27426c37QyCFME
et mon code est :
#include <SevenSegmentExtended.h>
#include <SevenSegmentFun.h>
#include <SevenSegmentTM1637.h>
#include <TM1637Display.h>
#include "SevenSegmentTM1637.h"
#include "SevenSegmentExtended.h"
#include "RTClib.h"
// Sortie horloge Rouge
const byte PIN_CLK_Red = A0; // define CLK pin
// Sortie horloge Verte
const byte PIN_CLK_Green = A1; // define CLK pin
// Sortie horloge Orange
const byte PIN_CLK_Orange = A2; // define CLK pin
//RED Displays
const byte PIN_DIO_R1 = 3;
SevenSegmentTM1637 red1(PIN_CLK_Red, PIN_DIO_R1); //SegmentTM1637 pour utiliser la methode "print" permet d'enlever les ":" entre les chiffres
const byte PIN_DIO_R2 = 4;
SevenSegmentTM1637 red2(PIN_CLK_Red, PIN_DIO_R2); //SegmentTM1637 pour utiliser la methode "print" permet d'enlever les ":" entre les chiffres
const byte PIN_DIO_R3 = 5;
SevenSegmentExtended red3(PIN_CLK_Red, PIN_DIO_R3); // SegmentExtended pour utiliser la methode "PrintTime"
//GREEN Displays
const byte PIN_DIO_G1 = 6;
SevenSegmentExtended green1(PIN_CLK_Green, PIN_DIO_G1);
const byte PIN_DIO_G2 = 7;
SevenSegmentTM1637 green2(PIN_CLK_Green, PIN_DIO_G2); //SegmentTM1637 pour utiliser la methode "print" permet d'enlever les ":" entre les chiffres
const byte PIN_DIO_G3 = 8;
SevenSegmentExtended green3(PIN_CLK_Green, PIN_DIO_G3); // SegmentExtended pour utiliser la methode "PrintTime"
int greenAM = 12;
int greenPM = 13;
// ORANGE Displays
const byte PIN_DIO_O1 = 9;
SevenSegmentTM1637 orange1(PIN_CLK_Orange, PIN_DIO_O1); //SegmentTM1637 pour utiliser la methode "print" permet d'enlever les ":" entre les chiffres
const byte PIN_DIO_O2 = 10;
SevenSegmentTM1637 orange2(PIN_CLK_Orange, PIN_DIO_O2); //SegmentTM1637 pour utiliser la methode "print" permet d'enlever les ":" entre les chiffres
const byte PIN_DIO_O3 = 11;
SevenSegmentExtended orange3(PIN_CLK_Orange, PIN_DIO_O3); // SegmentExtended pour utiliser la methode "PrintTime"
bool parse=false;
bool config=false;
int Hour=0;
RTC_DS3231 rtc;
int backlightred = 25; //backlight level on the red display
int backlightgreen = 100; //backlight level on the green display
int backlightorange = 50; //backlight level on the orange display
int year_red = 1985; //"Year" on the red display
int date_red = 1105; //"Month" & "Day" on the red display
int date_orange = 1112; //"Month" & "Day" on the orange display
int year_orange = 1955; //"Year" on the orange display
void setup() {
pinMode(PIN_CLK_Red, OUTPUT);
pinMode(PIN_CLK_Green, OUTPUT);
pinMode(PIN_CLK_Orange, OUTPUT);
pinMode(PIN_DIO_O1, OUTPUT);
pinMode(PIN_DIO_O2, OUTPUT);
pinMode(PIN_DIO_O3, OUTPUT);
pinMode(PIN_DIO_G1, OUTPUT);
pinMode(PIN_DIO_G2, OUTPUT);
pinMode(PIN_DIO_G3, OUTPUT);
pinMode(PIN_DIO_R1, OUTPUT);
pinMode(PIN_DIO_R2, OUTPUT);
pinMode(PIN_DIO_R3, OUTPUT);
pinMode(greenAM, OUTPUT);
pinMode(greenPM, OUTPUT);
Serial.begin(9600); // initializes the Serial connection @ 9600 baud
orange1.begin(); // initializes the display
orange2.begin();
orange3.begin();
green1.begin();
green2.begin();
green3.begin();
red1.begin();
red2.begin();
red3.begin();
orange1.setBacklight(backlightorange); // set the brightness to the level defind in variable "Backlightorange"
orange2.setBacklight(backlightorange);// set the brightness to the level defind in variable "Backlightorange"
// orange2.setColonOn(0); // Switch off ":" for orange "year"
orange3.setBacklight(backlightorange); // set the brightness to the level defind in variable "Backlightorange"
green1.setBacklight(backlightgreen); // set the brightness to the level defind in variable "Backlightgreen"
green2.setBacklight(backlightgreen); // set the brightness to the level defind in variable "Backlightgreen"
green3.setBacklight(backlightgreen); // set the brightness to the level defind in variable "Backlightgreen"
red1.setBacklight(backlightred);// set the brightness to the level defind in variable "Backlightred"
red2.setBacklight(backlightred);// set the brightness to the level defind in variable "Backlightred"
// red2.setColonOn(0); // Switch off ":" for red "year"
red3.setBacklight(backlightred); // set the brightness to the level defind in variable "Backlightred"
#ifndef ESP8266
while (!Serial); // for Leonardo/Micro/Zero
#endif
Serial.begin(9600);
delay(3000); // wait for console opening
if (! rtc.begin()) {
Serial.println("Couldn't find RTC");
while (1);
}
// if (rtc.lostPower()) {
// Serial.println("RTC lost power, lets set the time!");
// following line sets the RTC to the date & time this sketch was compiled
// rtc.adjust(DateTime(2021,6,22,16,19,0));
}
void loop() {
DateTime now = rtc.now();
Serial.print(now.year(), DEC);
//Serial.print('.');
Serial.print(now.month(), DEC);
//Serial.print('.');
Serial.print(now.day(), DEC);
//Serial.print(" ");
Serial.print(now.hour(), DEC);
// Serial.print(':');
Serial.print(now.minute(), DEC);
// Serial.print(':');
Serial.print(now.second(), DEC);
// Serial.println();
if(now.hour()>=13){
Hour=now.hour();
digitalWrite(greenAM,0);
digitalWrite(greenPM,1);}
else if(now.hour()==12)
{Hour=now.hour();
digitalWrite(greenAM,0);
digitalWrite(greenPM,1);}
else{
Hour=now.hour();
digitalWrite(greenAM,1);
digitalWrite(greenPM,0);
}
//Red displays - Destination TIME 11.05 1985 01:24
red1.print(date_red, true);
red2.print(year_red, true);
red3.printTime(01, 24, false);
//Green Displays - Present TIME - Heure actuelle
green1.printTime(now.month(),now.day(), false);
green2.print(now.year());
green3.printTime(Hour, now.minute(), false);
// Orange Displays - Last time departed 11.12 1955 12:46
orange1.print(date_orange, true);
orange2.print(year_orange, true);
orange3.printTime(12, 46, false);
}