#include //AVR library for writing to ROM #include //Imports the library, which needs to be //Initialized in setup. void setup() { LedSign::Init(); //Initializes the screen } int seconde = 55; int minute = 42; int heure = 11; int reste_heure,reste_minute, reste_seconde; void loop() { static unsigned long lastTick = 0; //Incrémentation des secondes if (millis() - lastTick >= 1000) { lastTick = millis(); seconde++;} //Remise à zéro des variables si celles-ci atteignent ou dépassent 60 pour les minutes et les secondes et 12 pour les heures. if(seconde >= 60) { minute++; seconde = 0; } if(minute >= 60) { heure++; minute = 0; } if(heure >= 12) { heure = 0; } //Calcul des leds allumées pour les heures if(heure/8>=1) {LedSign::Set( 1, 5, 1); LedSign::Set( 2, 5, 1);reste_heure=heure%8;} else {LedSign::Set( 1, 5, 0); LedSign::Set( 2, 5, 0);reste_heure=heure;} if(reste_heure/4>=1) {LedSign::Set( 1, 6, 1); LedSign::Set( 2, 6, 1);reste_heure=reste_heure%4;} else {LedSign::Set( 1, 6, 0); LedSign::Set( 2, 6, 0);} if(reste_heure/2>=1) {LedSign::Set( 1, 7, 1); LedSign::Set( 2, 7, 1);reste_heure=reste_heure%2;} else {LedSign::Set( 1, 7, 0); LedSign::Set( 2, 7, 0);} if(reste_heure/1>=1) {LedSign::Set( 1, 8, 1); LedSign::Set( 2, 8, 1);reste_heure=reste_heure%1;} else {LedSign::Set( 1, 8, 0); LedSign::Set( 2, 8, 0);} //Calcul des leds allumées pour les minutes if((minute/32)>=1) {LedSign::Set( 6, 3, 1); LedSign::Set( 7, 3, 1);reste_minute=minute%32;} else {LedSign::Set( 6, 3, 0); LedSign::Set( 7, 3, 0);reste_minute=minute;} if((reste_minute/16)>=1) {LedSign::Set( 6, 4, 1); LedSign::Set( 7, 4, 1);reste_minute=reste_minute%16;} else {LedSign::Set( 6, 4, 0); LedSign::Set( 7, 4, 0);} if((reste_minute/8)>=1) {LedSign::Set( 6, 5, 1); LedSign::Set( 7, 5, 1);reste_minute=reste_minute%8;} else {LedSign::Set( 6, 5, 0); LedSign::Set( 7, 5, 0);} if((reste_minute/4)>=1) {LedSign::Set( 6, 6, 1); LedSign::Set( 7, 6, 1);reste_minute=reste_minute%4;} else {LedSign::Set( 6, 6, 0); LedSign::Set( 7, 6, 0);} if((reste_minute/2)>=1) {LedSign::Set( 6, 7, 1); LedSign::Set( 7, 7, 1);reste_minute=reste_minute%2;} else {LedSign::Set( 6, 7, 0); LedSign::Set( 7, 7, 0);} if((reste_minute/1)>=1) {LedSign::Set( 6, 8, 1); LedSign::Set( 7, 8, 1);reste_minute=reste_minute%1;} else {LedSign::Set( 6, 8, 0); LedSign::Set( 7, 8, 0);} //Calcul des leds allumées pour les secondes if((seconde/32)>=1) {LedSign::Set( 11, 3, 1); LedSign::Set( 12, 3, 1);reste_seconde=seconde%32;} else {LedSign::Set( 11, 3, 0); LedSign::Set( 12, 3, 0);reste_seconde=seconde;} if((reste_seconde/16)>=1) {LedSign::Set( 11, 4, 1); LedSign::Set( 12, 4, 1);reste_seconde=reste_seconde%16;} else {LedSign::Set( 11, 4, 0); LedSign::Set( 12, 4, 0);} if((reste_seconde/8)>=1) {LedSign::Set( 11, 5, 1); LedSign::Set( 12, 5, 1);reste_seconde=reste_seconde%8;} else {LedSign::Set( 11, 5, 0); LedSign::Set( 12, 5, 0);} if((reste_seconde/4)>=1) {LedSign::Set( 11, 6, 1); LedSign::Set( 12, 6, 1);reste_seconde=reste_seconde%4;} else {LedSign::Set( 11, 6, 0); LedSign::Set( 12, 6, 0);} if((reste_seconde/2)>=1) {LedSign::Set( 11, 7, 1); LedSign::Set( 12, 7, 1);reste_seconde=reste_seconde%2;} else {LedSign::Set( 11, 7, 0); LedSign::Set( 12, 7, 0);} if((reste_seconde/1)>=1) {LedSign::Set( 11, 8, 1); LedSign::Set( 12, 8, 1);reste_seconde=reste_seconde%1;} else {LedSign::Set( 11, 8, 0); LedSign::Set( 12, 8, 0);} }