// // ##################################### // # HORLOGE DE LA COIFFEUSE 2 # // ##################################### // # Guy Magli 23.01.2020 # // ##################################### // # Conception, cablages # // # mises a jour, # // # contact... # // # www.magli.fr # // ###################################### // // : ------ : // La personnalisation des affichages de ce code source concerne : Angele : // : ------ : // // Afin d'eviter les problemes d'affichage et d'impression les signes diacritiques // ont ete retires des commentaires et des chaines de caracteres. // // ! ======================== ! // ! Librairies et parametres ! // ! ======================== ! // #include // Pour la communication avec un peripherique #include // Pour utilisation de l'horloge RTC #include // Pour l'ecran graphique #include // Idem #include // Chaines de caracteres #include // Clavier 4x4 // const byte byLignes = 4; // 4 lignes const byte byColonnes = 4; // 4 colonnes char cTouches[byLignes][byColonnes] = { {'1','2','3','A'}, {'4','5','6','B'}, {'7','8','9','C'}, {'*','0','#','D'} }; // ! ================================================= ! // ! VARIABLES GLOBALES, CONSTANTES ET INITIALISATIONS ! // ! ================================================= ! // // : --------------- : // : Pour le clavier : // : --------------- : // // Quand on regarde le clavier de face // // 1 2 3 A // 4 5 6 B // 7 8 9 C // * 0 # D // byte byLignesConnecteurs[byLignes] = { 29, 31, 33, 35 }; // Lignes byte byColonnesConnecteurs[byColonnes] = { 37, 39, 41, 43 }; // Colonnes Keypad keypad = Keypad(makeKeymap(cTouches), byLignesConnecteurs, byColonnesConnecteurs, byLignes, byColonnes); char cTouche = ' '; // La touche frappe au clavier int iNombreTouche = 0; // Le nombre de touches frappees au clavier String cSaisieClavier = ""; // La ligne complete saisie au clavier bool bSaisieCorrecte = false; // RTC_DS1307 RTC; // Constante pour le module horloge // Pour l'interrupteur permettant le reglage de l'heure d'ete ou d'hiver bool bBoutonAppuye = false; unsigned long lDateAntiRebond = 0; int iCompteurDeClicks = 0; #define TEMPS_ANTI_REBOND_MS 30 // Pour les calculs sur les dates et les heures DateTime now; int iHeures = 0; // Nombre d'heures. int iHeuresD = 0; // Dizaines. int iHeuresU = 0; // Unites. int iMinutes = 0; // Idem pour les minutes. int iMinutesD = 0; // Dizaines. int iMinutesU = 0; // Unites. int iJours = 0; // La date. int iJoursD = 0; // Dizaines. int iJoursU = 0; // Minutes. String cJours = ""; // Jours en lettres. int iMois = 0; // Le mois. int iMoisD = 0; // Dizaines. int iMoisU = 0; // Unites. String cMois = ""; // Mois en lettres. long int iAnnees = 0; int iJoursDeLaSemaine = 0; // Jour de la semaine. String cJoursDeLaSemaine = ""; String cChaineDate = ""; // La date sous la forme JJMMAAA. String cCHaineHeure = ""; // L'heure sous la forme HHMM. // // : ------------------------- : // : Pour la saisie au clavier : // : ------------------------- : // int iJoursClavier = 0; int iMoisClavier = 0; int iAnneesClavier = 0; int iHeuresClavier = 0; int iMinutesClavier = 0; int iBrillance = 50; // // : ------------------------------ : // : Pour le detecteur de mouvement : // : ------------------------------ : // const int iMouvement = 53; // // : ------ : // : Divers : // : ------ : // int t; // Pour les boucles diverses int iDelai = 10000; // Delai d'affichage // // : --------------- : // : Pour les heures : // : --------------- : // int iDizainesHeures = 0; int iUnitesHeures = 0; int iDizainesMinutes = 0; int iUnitesMinutes = 0; // // : ------------ : // : Pour l'ecran : // : ------------ : // #define LCD_CS A3 #define LCD_CD A2 #define LCD_WR A1 #define LCD_RD A0 #define LCD_RESET A4 #define BLACK 0x0000 #define BLUE 0x001F #define RED 0xF800 #define GREEN 0x07E0 #define CYAN 0x07FF #define MAGENTA 0xF81F #define YELLOW 0xFFE0 #define WHITE 0xFFFF #define FOND BLACK #define HEURE GREEN #define DATE YELLOW #define MESSAGE WHITE #define FONDLED FOND #define BUFFPIXEL 20 Elegoo_TFTLCD tft(LCD_CS, LCD_CD, LCD_WR, LCD_RD, LCD_RESET); int xPos, yPos; // Coordonnees d'affichage // // : ----------------------- : // : Pour l'afficheur a LEDS : // : ----------------------- : // // Les chiffres correspondent aux adresses 0xc0 0xc2 0xc4 0xc6 0xc8 0xca 0xcc 0xce const int strobe = 23; // STB const int clock = 25; // CLK const int data = 27; // DIO #define SEGMENT_A 0x01 // A #define SEGMENT_B 0x02 // --- #define SEGMENT_C 0x04 // F : : B #define SEGMENT_D 0x08 // -G- #define SEGMENT_E 0x10 // E : : C #define SEGMENT_F 0x20 // --- #define SEGMENT_G 0x40 // D unsigned char cCarLu; // // Les chiffres // const unsigned char cChiffres[] = { SEGMENT_A + SEGMENT_B + SEGMENT_C + SEGMENT_D + SEGMENT_E + SEGMENT_F, // 0 SEGMENT_B + SEGMENT_C, // 1 SEGMENT_A + SEGMENT_B + SEGMENT_G + SEGMENT_E + SEGMENT_D, // 2 SEGMENT_A + SEGMENT_B + SEGMENT_G + SEGMENT_C + SEGMENT_D, // 3 SEGMENT_F + SEGMENT_G + SEGMENT_B + SEGMENT_C, // 4 SEGMENT_A + SEGMENT_F + SEGMENT_G + SEGMENT_C + SEGMENT_D, // 5 SEGMENT_A + SEGMENT_F + SEGMENT_G + SEGMENT_E + SEGMENT_C + SEGMENT_D, // 6 SEGMENT_A + SEGMENT_B + SEGMENT_C, // 7 SEGMENT_A + SEGMENT_F + SEGMENT_B + SEGMENT_G + SEGMENT_E + SEGMENT_C + SEGMENT_D, // 8 SEGMENT_A + SEGMENT_B + SEGMENT_C + SEGMENT_F + SEGMENT_G + SEGMENT_D, // 9 }; // // Les lettres // const unsigned char cLettreA = SEGMENT_E + SEGMENT_F + SEGMENT_A + SEGMENT_B + SEGMENT_C + SEGMENT_G; // Comme le R const unsigned char cLettreB = SEGMENT_A + SEGMENT_B + SEGMENT_C + SEGMENT_D + SEGMENT_E + SEGMENT_F + SEGMENT_G; const unsigned char cLettreb = SEGMENT_C + SEGMENT_D + SEGMENT_E + SEGMENT_F + SEGMENT_G; const unsigned char cLettreC = SEGMENT_A + SEGMENT_F + SEGMENT_E + SEGMENT_D; const unsigned char cLettrec = SEGMENT_D + SEGMENT_E + SEGMENT_G; const unsigned char cLettreD = SEGMENT_A + SEGMENT_B + SEGMENT_C + SEGMENT_D + SEGMENT_E + SEGMENT_F; // Comme le O const unsigned char cLettred = SEGMENT_B + SEGMENT_C + SEGMENT_D + SEGMENT_E + SEGMENT_G; const unsigned char cLettreE = SEGMENT_A + SEGMENT_F + SEGMENT_G + SEGMENT_E + SEGMENT_D; const unsigned char cLettreF = SEGMENT_A + SEGMENT_F + SEGMENT_E + SEGMENT_G; const unsigned char cLettreG = SEGMENT_A + SEGMENT_F + SEGMENT_E + SEGMENT_D + SEGMENT_C; // Comme le N const unsigned char cLettreH = SEGMENT_F + SEGMENT_E + SEGMENT_G + SEGMENT_B + SEGMENT_C; const unsigned char cLettreh = SEGMENT_C + SEGMENT_E + SEGMENT_F + SEGMENT_G; const unsigned char cLettreI = SEGMENT_B + SEGMENT_C; const unsigned char cLettrei = SEGMENT_C; const unsigned char cLettreJ = SEGMENT_B + SEGMENT_C + SEGMENT_D; // Pas de K const unsigned char cLettreL = SEGMENT_F + SEGMENT_E + SEGMENT_D; const unsigned char cLettreM = SEGMENT_E + SEGMENT_F + SEGMENT_A + SEGMENT_B + SEGMENT_C; // Comme le N const unsigned char cLettreN = SEGMENT_E + SEGMENT_F + SEGMENT_A + SEGMENT_B + SEGMENT_C; // Comme le M const unsigned char cLettren = SEGMENT_C + SEGMENT_D + SEGMENT_E; const unsigned char cLettreO = SEGMENT_A + SEGMENT_B + SEGMENT_C + SEGMENT_D + SEGMENT_E + SEGMENT_F; const unsigned char cLettreo = SEGMENT_C + SEGMENT_D + SEGMENT_E + SEGMENT_G; const unsigned char cLettreP = SEGMENT_E + SEGMENT_F + SEGMENT_A + SEGMENT_B + SEGMENT_G; const unsigned char cLettreQ = SEGMENT_A + SEGMENT_B + SEGMENT_C + SEGMENT_D + SEGMENT_E + SEGMENT_F; // Comme le D et le 0 const unsigned char cLettreR = SEGMENT_E + SEGMENT_F + SEGMENT_A + SEGMENT_B + SEGMENT_C + SEGMENT_G; // Comme le A const unsigned char cLettrer = SEGMENT_E + SEGMENT_G; const unsigned char cLettreS = SEGMENT_A + SEGMENT_F + SEGMENT_G + SEGMENT_C + SEGMENT_D; const unsigned char cLettreT = SEGMENT_F + SEGMENT_E + SEGMENT_G; // en majuscule comme const unsigned char cLettret = SEGMENT_F + SEGMENT_E + SEGMENT_G; // en minuscule const unsigned char cLettreU = SEGMENT_F + SEGMENT_E + SEGMENT_D + SEGMENT_C + SEGMENT_B; // Comme le V const unsigned char cLettreu = SEGMENT_C + SEGMENT_D + SEGMENT_E; const unsigned char cLettreV = SEGMENT_F + SEGMENT_E + SEGMENT_D + SEGMENT_C + SEGMENT_B; // Comme le U // Pas de W // Pas de X const unsigned char cLettreY = SEGMENT_F + SEGMENT_G + SEGMENT_B + SEGMENT_C + SEGMENT_D; // Pas de Z // // La ponctuation // const unsigned char cEspace = 0x00; const unsigned char cPoint = 0x80; const unsigned char cApostrophe = SEGMENT_F; const unsigned char cTraitDUnion = SEGMENT_G;// // // ! ===== ! // ! Setup ! // ! ===== ! // void setup() { // // Pour le débogage // Serial.begin(9600); Serial.println("HORLOGE DE LA COIFFEUSE 2"); Serial.println(" "); // // Pour l'ecran a LEDS. // pinMode(strobe, OUTPUT); pinMode(clock, OUTPUT); pinMode(data, OUTPUT); sendCommand(0x8f); reset(); sendCommand(0x44); // // // Pour la detection du mouvement // pinMode(iMouvement, INPUT); // C'est un connecteur d'entree digitalWrite(iMouvement, LOW); // // Pour l'horloge // Wire.begin(); RTC.begin(); // // Pour le clavier // pinMode(20, INPUT); // C'est un connecteur d'entree pinMode(22, INPUT); pinMode(24, INPUT); pinMode(26, INPUT); pinMode(28, INPUT); pinMode(30, INPUT); pinMode(32, INPUT); pinMode(34, INPUT); // // : ------------------------------ : // : Affichage de la page d'accueil : // : ------------------------------ : // // Sur l'écran à LEDS // Serial.println("Affichage du prenom sur les LEDS"); Serial.println(" "); digitalWrite(strobe, LOW); shiftOut(data, clock, LSBFIRST, 0xc0); shiftOut(data, clock, LSBFIRST, 0x00); digitalWrite(strobe, HIGH); digitalWrite(strobe, LOW); shiftOut(data, clock, LSBFIRST, 0xc2); shiftOut(data, clock, LSBFIRST, cLettreA); digitalWrite(strobe, HIGH); digitalWrite(strobe, LOW); shiftOut(data, clock, LSBFIRST, 0xc4); shiftOut(data, clock, LSBFIRST, cLettreN); digitalWrite(strobe, HIGH); digitalWrite(strobe, LOW); shiftOut(data, clock, LSBFIRST, 0xc6); shiftOut(data, clock, LSBFIRST, cLettreG); digitalWrite(strobe, HIGH); digitalWrite(strobe, LOW); shiftOut(data, clock, LSBFIRST, 0xc8); shiftOut(data, clock, LSBFIRST, cLettreE); digitalWrite(strobe, HIGH); digitalWrite(strobe, LOW); shiftOut(data, clock, LSBFIRST, 0xca); shiftOut(data, clock, LSBFIRST, cLettreL); digitalWrite(strobe, HIGH); digitalWrite(strobe, LOW); shiftOut(data, clock, LSBFIRST, 0xcc); shiftOut(data, clock, LSBFIRST, cLettreE); digitalWrite(strobe, HIGH); digitalWrite(strobe, LOW); shiftOut(data, clock, LSBFIRST, 0xce); shiftOut(data, clock, LSBFIRST, 0x00); digitalWrite(strobe, HIGH); tft.reset(); uint16_t identifier = tft.readID(); identifier = 0x9341; tft.begin(identifier); tft.fillScreen(FOND); tft.setRotation(2); // // Sur l'écran TFT LCD // Serial.println("Affichage du nom et du prenom sur l'ecran TFT"); Serial.println(" "); // // Titre. // xPos = 10; yPos = 80; HTaille1(xPos, yPos, MESSAGE); OTaille1(xPos, yPos, MESSAGE); RTaille1(xPos, yPos, MESSAGE); LTaille1(xPos, yPos, MESSAGE); OTaille1(xPos, yPos, MESSAGE); GTaille1(xPos, yPos, MESSAGE); ETaille1(xPos, yPos, MESSAGE); xPos = 10; yPos = 110; PTaille1(xPos, yPos, MESSAGE); ETaille1(xPos, yPos, MESSAGE); RTaille1(xPos, yPos, MESSAGE); STaille1(xPos, yPos, MESSAGE); OTaille1(xPos, yPos, MESSAGE); NTaille1(xPos, yPos, MESSAGE); NTaille1(xPos, yPos, MESSAGE); ATaille1(xPos, yPos, MESSAGE); LTaille1(xPos, yPos, MESSAGE); ITaille1(xPos, yPos, MESSAGE); STaille1(xPos, yPos, MESSAGE); ETaille1(xPos, yPos, MESSAGE); ETaille1(xPos, yPos, MESSAGE); delay(2500); // // Prenoms et noms // xPos = 10; yPos = 180; ATaille1(xPos, yPos, MESSAGE); NTaille1(xPos, yPos, MESSAGE); GTaille1(xPos, yPos, MESSAGE); ETaille1(xPos, yPos, MESSAGE); LTaille1(xPos, yPos, MESSAGE); ETaille1(xPos, yPos, MESSAGE); // Espace xPos += 10; MTaille1(xPos, yPos, MESSAGE); ATaille1(xPos, yPos, MESSAGE); GTaille1(xPos, yPos, MESSAGE); LTaille1(xPos, yPos, MESSAGE); ITaille1(xPos, yPos, MESSAGE); delay(iDelai); // // Teste tout // //afficheBonjour(); delay(2000); //afficheBonjour(); delay(2000); //afficheBonsoir(); delay(2000); //afficheBonsoir(); delay(2000); //afficheBonneNuit(); delay(2000); //afficheBonneNuit(); delay(2000); //afficheBonneAnnee(); delay(2000); //afficheBonneAnnee(); delay(2000); //afficheJoyeuxNoel(); delay(2000); //afficheJoyeuxNoel(); delay(2000); //afficheBonAnniversaire(1); delay(2000); //afficheBonAnniversaire(2); delay(2000); //afficheBonneFete(1); delay(2000); //afficheBonneFete(2); delay(2000); // // Affiche les parametres // Serial.println("Affichage des parametres sur l'ecran TFT"); Serial.println(" "); litLaDateEtLHeure(); tft.fillScreen(BLACK); tft.setRotation(2); unsigned long start = micros(); tft.setCursor(0, 20); tft.setTextSize(3); tft.setTextColor(RED); tft.println(" PARAMETRES"); tft.println(" REGLABLES"); tft.println(" "); tft.setTextColor(GREEN); tft.println(" DATE"); tft.setTextColor(YELLOW); tft.print(" "); tft.print(iJours); tft.print("."); tft.print(iMois); tft.print("."); tft.println(iAnnees); tft.setTextColor(GREEN); tft.println(" HEURE"); tft.setTextColor(YELLOW); tft.print(" "); tft.print(iHeures); tft.print("."); tft.println(iMinutes); delay(iDelai); tft.fillScreen(BLACK); effaceTout(); Serial.println("Fin du setup"); Serial.println(" "); } // // // ! ==== ! // ! Loop ! // ! ==== ! // void loop() { // // : ------------------- : // : Réglages au clavier : // : ------------------- : // // Si on a presse une touche cTouche = keypad.getKey(); if (cTouche != NO_KEY) { bSaisieCorrecte = false; if (cTouche == '*') // Reglages demandes { Serial.println("Reglages de l'heure et de la date au clavier"); Serial.println(" "); // // La date // bSaisieCorrecte = false; while (bSaisieCorrecte == false) { iNombreTouche = 0; cTouche = ' '; cSaisieClavier = ""; tft.fillScreen(BLACK); tft.setRotation(2); unsigned long start = micros(); tft.setCursor(0, 20); tft.setTextSize(3); tft.setTextColor(GREEN); tft.println("DATE"); tft.setTextColor(YELLOW); tft.println("ENTREZ"); tft.println("SIX CHIFFRES"); tft.println("JJMMAA"); tft.println("EXEMPLES"); tft.println("140120"); tft.setTextColor(RED); iNombreTouche = 0; cTouche = ' '; iJours = 0; iMois = 0; iAnnees = 0; while (iNombreTouche < 6) { cTouche = keypad.getKey(); if (cTouche != NO_KEY) { if ((cTouche >= '0') && (cTouche <= '9')) { iNombreTouche++; tft.print(cTouche); switch (iNombreTouche) { case 1: iJours = (((int)cTouche - 48) * 10); break; case 2: iJours = iJours + (((int)cTouche - 48) * 1); break; case 3: iMois = (((int)cTouche - 48) * 10); break; case 4: iMois = iMois + (((int)cTouche - 48) * 1); break; case 5: iAnnees = (((int)cTouche - 48) * 10); break; case 6: iAnnees = iAnnees + (((int)cTouche - 48) * 1); break; } cSaisieClavier = cSaisieClavier + cTouche; cTouche = ' '; delay(250); } } } tft.fillScreen(BLACK); tft.setRotation(2); tft.setCursor(0, 20); tft.setTextSize(3); tft.setTextColor(GREEN); tft.println("DATE"); tft.setTextColor(YELLOW); tft.println("VALEUR"); tft.setTextColor(RED); tft.println(cSaisieClavier); tft.setTextColor(YELLOW); tft.println("CORRECTE ?"); tft.println("1 OUI / 0 NON"); iNombreTouche = 0; cTouche = ' '; tft.setTextColor(RED); while (iNombreTouche < 1) { cTouche = keypad.getKey(); if (cTouche != NO_KEY) { if ((cTouche >= '0') && (cTouche <= '1')) { iNombreTouche++; if (cTouche == '1') { bSaisieCorrecte = true; cChaineDate = cSaisieClavier; tft.print(cTouche); delay(250); } else // On recommence tout { tft.print(cTouche); delay(250); } } } } } // // L'heure // bSaisieCorrecte = false; while (bSaisieCorrecte == false) { iNombreTouche = 0; cTouche = ' '; cSaisieClavier = ""; tft.fillScreen(BLACK); tft.setRotation(2); unsigned long start = micros(); tft.setCursor(0, 20); tft.setTextSize(3); tft.setTextColor(GREEN); tft.println("HEURE"); tft.setTextColor(YELLOW); tft.println("ENTREZ"); tft.println("QUATRE CHIFFRES"); tft.println("HHMM"); tft.println("EXEMPLE"); tft.println("1425"); tft.setTextColor(RED); iNombreTouche = 0; cTouche = ' '; iHeures = 0; iMinutes = 0; while (iNombreTouche < 4) { cTouche = keypad.getKey(); if (cTouche != NO_KEY) { if ((cTouche >= '0') && (cTouche <= '9')) { iNombreTouche++; tft.print(cTouche); switch (iNombreTouche) { case 1: iHeures = (((int)cTouche - 48) * 10); break; case 2: iHeures = iHeures + (((int)cTouche - 48) * 1); break; case 3: iMinutes = (((int)cTouche - 48) * 10); break; case 4: iMinutes = iMinutes + (((int)cTouche - 48) * 1); break; } cSaisieClavier = cSaisieClavier + cTouche; cTouche = ' '; delay(250); } } } tft.fillScreen(BLACK); tft.setRotation(2); tft.setCursor(0, 20); tft.setTextSize(3); tft.setTextColor(GREEN); tft.println("HEURE"); tft.setTextColor(YELLOW); tft.println("VALEUR"); tft.setTextColor(RED); tft.println(cSaisieClavier); tft.setTextColor(YELLOW); tft.println("CORRECTE ?"); tft.println("1 OUI / 0 NON"); iNombreTouche = 0; cTouche = ' '; tft.setTextColor(RED); while (iNombreTouche < 1) { cTouche = keypad.getKey(); if (cTouche != NO_KEY) { if ((cTouche >= '0') && (cTouche <= '1')) { iNombreTouche++; if (cTouche == '1') { bSaisieCorrecte = true; cCHaineHeure = cSaisieClavier; tft.print(cTouche); delay(250); // On regle la date et l'heure RTC.adjust(DateTime((2000 + iAnnees), iMois, iJours, iHeures, iMinutes, 0)); tft.fillScreen(BLACK); tft.setRotation(2); tft.setCursor(0, 20); tft.setTextSize(3); tft.setTextColor(GREEN); tft.println("RECAPITULATIF"); tft.setTextColor(YELLOW); tft.setTextColor(YELLOW); tft.println("DATE "); tft.setTextColor(RED); tft.print(iJours); tft.print("."); tft.print(iMois); tft.print("."); tft.println(iAnnees); tft.setTextColor(YELLOW); tft.println("HEURE "); tft.setTextColor(RED); tft.print(iHeures); tft.print(":"); tft.print(iMinutes); delay(10000); } else // On recommence tout { tft.print(cTouche); delay(250); } } } } } } } tft.fillScreen(BLACK); // // On affiche la date et l'heure sur les LEDS même si aucun mouvement n'est détecté. // litLaDateEtLHeure(); afficheHeureLEDS(); // Serial.println("Affichage de l'heure et de la date sur les LEDS"); // // : --------------------------- : // : Si un mouvement est detecte : // : --------------------------- : // if (digitalRead(iMouvement) == HIGH) { Serial.println("Un mouvement a ete detecte"); Serial.println(" "); // On affiche ensuite les messages personnalises. // Si on est a Nouvel An on affiche BONNE ANNEE if ((iJours == 1) && (iMois == 1)) { afficheBonneAnnee(); delay(iDelai); } // Si on est a Noel on affiche JOYEUX NOEL if ((iJours == 25) && (iMois == 12)) { afficheJoyeuxNoel(); delay(iDelai); } // Si on est a un jour anniversaire on affiche BON ANNIVERSAIRE if ((iJours == 12) && (iMois == 10)) { afficheBonAnniversaire(); delay(iDelai); } // Si on est a un jour de fete on affiche BONNE FETE if ((iJours == 27) && (iMois == 1)) { afficheBonneFete(); delay(iDelai); } // Dans tous les cas, on affiche BONJOUR, BONSOIR ou BONNE NUIT... tft.fillScreen(FOND); if ((iHeures >= 0) && (iHeures < 8)) { afficheBonjour(); } if ((iHeures >= 8) && (iHeures < 9)) { afficheBonAppetit(); } if ((iHeures >= 9) && (iHeures < 11)) { afficheBonjour(); } if ((iHeures >= 11) && (iHeures < 12)) { afficheBonAppetit(); } if ((iHeures >= 12) && (iHeures < 17)) { afficheBonApresMidi(); } if ((iHeures >= 17) && (iHeures < 18)) { afficheBonAppetit(); } if ((iHeures >= 18) && (iHeures < 20)) { afficheBonsoir(); } if ((iHeures >= 20) && (iHeures <= 23)) { afficheBonneNuit(); } delay(iDelai); tft.fillScreen(BLACK); digitalWrite(iMouvement, LOW); delay(iDelai / 2); } } // // ! ========== ! // ! Procedures ! // ! ========== ! // // : ------------------------------------- : // : Initialisation de l'afficheur digital : // : ------------------------------------- : // void sendCommand(uint8_t value) { digitalWrite(strobe, LOW); shiftOut(data, clock, LSBFIRST, value); digitalWrite(strobe, HIGH); } // void reset() { sendCommand(0x40); // set auto increment mode digitalWrite(strobe, LOW); shiftOut(data, clock, LSBFIRST, 0xc0); for (uint8_t i = 0; i < 16; i++) { shiftOut(data, clock, LSBFIRST, 0x00); } digitalWrite(strobe, HIGH); } // // : -------------------------------- : // : Efface totalement l'ecran a LEDS : // : -------------------------------- : // void effaceTout() { digitalWrite(strobe, LOW); shiftOut(data, clock, LSBFIRST, 0xc0); shiftOut(data, clock, LSBFIRST, 0x00); digitalWrite(strobe, HIGH); digitalWrite(strobe, LOW); shiftOut(data, clock, LSBFIRST, 0xc2); shiftOut(data, clock, LSBFIRST, 0x00); digitalWrite(strobe, HIGH); digitalWrite(strobe, LOW); shiftOut(data, clock, LSBFIRST, 0xc4); shiftOut(data, clock, LSBFIRST, 0x00); digitalWrite(strobe, HIGH); digitalWrite(strobe, LOW); shiftOut(data, clock, LSBFIRST, 0xc6); shiftOut(data, clock, LSBFIRST, 0x00); digitalWrite(strobe, HIGH); digitalWrite(strobe, LOW); shiftOut(data, clock, LSBFIRST, 0xc8); shiftOut(data, clock, LSBFIRST, 0x00); digitalWrite(strobe, HIGH); digitalWrite(strobe, LOW); shiftOut(data, clock, LSBFIRST, 0xca); shiftOut(data, clock, LSBFIRST, 0x00); digitalWrite(strobe, HIGH); digitalWrite(strobe, LOW); shiftOut(data, clock, LSBFIRST, 0xcc); shiftOut(data, clock, LSBFIRST, 0x00); digitalWrite(strobe, HIGH); digitalWrite(strobe, LOW); shiftOut(data, clock, LSBFIRST, 0xce); shiftOut(data, clock, LSBFIRST, 0x00); digitalWrite(strobe, HIGH); } // // : ------------------------------------------------------- : // : Affiche l'heure et les minutes en petit en haut l'ecran : // : ------------------------------------------------------- : // void afficheHeurePetit() { int xHeureD = 55; int xHeureU = 98; int xMinutesD = 157; int xMinutesU = 200; int yHeure = 85; litLaDateEtLHeure(); tft.fillScreen(FOND); switch (iHeuresD) // Le chiffre des dizaines des heures. { case 0: Led0Taille2(xHeureD, yHeure, HEURE); break; case 1: Led1Taille2(xHeureD, yHeure, HEURE); break; case 2: Led2Taille2(xHeureD, yHeure, HEURE); break; case 3: Led3Taille2(xHeureD, yHeure, HEURE); break; case 4: Led4Taille2(xHeureD, yHeure, HEURE); break; case 5: Led5Taille2(xHeureD, yHeure, HEURE); break; case 6: Led6Taille2(xHeureD, yHeure, HEURE); break; case 7: Led7Taille2(xHeureD, yHeure, HEURE); break; case 8: Led8Taille2(xHeureD, yHeure, HEURE); break; case 9: Led9Taille2(xHeureD, yHeure, HEURE); break; } switch (iHeuresU) // Le chiffre des unites des heures. { case 0: Led0Taille2(xHeureU, yHeure, HEURE); break; case 1: Led1Taille2(xHeureU, yHeure, HEURE); break; case 2: Led2Taille2(xHeureU, yHeure, HEURE); break; case 3: Led3Taille2(xHeureU, yHeure, HEURE); break; case 4: Led4Taille2(xHeureU, yHeure, HEURE); break; case 5: Led5Taille2(xHeureU, yHeure, HEURE); break; case 6: Led6Taille2(xHeureU, yHeure, HEURE); break; case 7: Led7Taille2(xHeureU, yHeure, HEURE); break; case 8: Led8Taille2(xHeureU, yHeure, HEURE); break; case 9: Led9Taille2(xHeureU, yHeure, HEURE); break; } // Les deux points LedDeuxPointsTaille2(128, 95, YELLOW); switch (iMinutesD) // Le chiffre des dizaines des minutes. { case 0: Led0Taille2(xMinutesD, yHeure, HEURE); break; case 1: Led1Taille2(xMinutesD, yHeure, HEURE); break; case 2: Led2Taille2(xMinutesD, yHeure, HEURE); break; case 3: Led3Taille2(xMinutesD, yHeure, HEURE); break; case 4: Led4Taille2(xMinutesD, yHeure, HEURE); break; case 5: Led5Taille2(xMinutesD, yHeure, HEURE); break; case 6: Led6Taille2(xMinutesD, yHeure, HEURE); break; case 7: Led7Taille2(xMinutesD, yHeure, HEURE); break; case 8: Led8Taille2(xMinutesD, yHeure, HEURE); break; case 9: Led9Taille2(xMinutesD, yHeure, HEURE); break; } switch (iMinutesU) // Le chiffre des unites des minutes. { case 0: Led0Taille2(xMinutesU, yHeure, HEURE); break; case 1: Led1Taille2(xMinutesU, yHeure, HEURE); break; case 2: Led2Taille2(xMinutesU, yHeure, HEURE); break; case 3: Led3Taille2(xMinutesU, yHeure, HEURE); break; case 4: Led4Taille2(xMinutesU, yHeure, HEURE); break; case 5: Led5Taille2(xMinutesU, yHeure, HEURE); break; case 6: Led6Taille2(xMinutesU, yHeure, HEURE); break; case 7: Led7Taille2(xMinutesU, yHeure, HEURE); break; case 8: Led8Taille2(xMinutesU, yHeure, HEURE); break; case 9: Led9Taille2(xMinutesU, yHeure, HEURE); break; } } // // : --------------------------------- : // : Affiche la date en bas de l'ecran : // : --------------------------------- : // void afficheDatePetit() { int xDateD = 5; int xDateU = 40; int yDate = 310; // // Ecrit la date. // litLaDateEtLHeure(); switch (iJoursD) // Le chiffre des dizaines des jours. { case 0: Led0Taille2(xDateD, yDate, DATE); break; case 1: Led1Taille2(xDateD, yDate, DATE); break; case 2: Led2Taille2(xDateD, yDate, DATE); break; case 3: Led3Taille2(xDateD, yDate, DATE); break; case 4: Led4Taille2(xDateD, yDate, DATE); break; case 5: Led5Taille2(xDateD, yDate, DATE); break; case 6: Led6Taille2(xDateD, yDate, DATE); break; case 7: Led7Taille2(xDateD, yDate, DATE); break; case 8: Led8Taille2(xDateD, yDate, DATE); break; case 9: Led9Taille2(xDateD, yDate, DATE); break; } switch (iJoursU) // Le chiffre des unites des jours. { case 0: Led0Taille2(xDateU, yDate, DATE); break; case 1: Led1Taille2(xDateU, yDate, DATE); break; case 2: Led2Taille2(xDateU, yDate, DATE); break; case 3: Led3Taille2(xDateU, yDate, DATE); break; case 4: Led4Taille2(xDateU, yDate, DATE); break; case 5: Led5Taille2(xDateU, yDate, DATE); break; case 6: Led6Taille2(xDateU, yDate, DATE); break; case 7: Led7Taille2(xDateU, yDate, DATE); break; case 8: Led8Taille2(xDateU, yDate, DATE); break; case 9: Led9Taille2(xDateU, yDate, DATE); break; } // // Ecrit le jour en lettres. // xPos = 80; yPos = 277; if (iJoursDeLaSemaine == 0) // DIMANCHE. { DTaille1(xPos, yPos, DATE); ITaille1(xPos, yPos, DATE); MTaille1(xPos, yPos, DATE); ATaille1(xPos, yPos, DATE); NTaille1(xPos, yPos, DATE); CTaille1(xPos, yPos, DATE); HTaille1(xPos, yPos, DATE); ETaille1(xPos, yPos, DATE); } if (iJoursDeLaSemaine == 1) // LUNDI. { LTaille1(xPos, yPos, DATE); UTaille1(xPos, yPos, DATE); NTaille1(xPos, yPos, DATE); DTaille1(xPos, yPos, DATE); ITaille1(xPos, yPos, DATE); } if (iJoursDeLaSemaine == 2) // MARDI. { MTaille1(xPos, yPos, DATE); ATaille1(xPos, yPos, DATE); RTaille1(xPos, yPos, DATE); DTaille1(xPos, yPos, DATE); ITaille1(xPos, yPos, DATE); } if (iJoursDeLaSemaine == 3) // MERCREDI. { MTaille1(xPos, yPos, DATE); ETaille1(xPos, yPos, DATE); RTaille1(xPos, yPos, DATE); CTaille1(xPos, yPos, DATE); RTaille1(xPos, yPos, DATE); ETaille1(xPos, yPos, DATE); DTaille1(xPos, yPos, DATE); ITaille1(xPos, yPos, DATE); } if (iJoursDeLaSemaine == 4) // JEUDI. { JTaille1(xPos, yPos, DATE); ETaille1(xPos, yPos, DATE); UTaille1(xPos, yPos, DATE); DTaille1(xPos, yPos, DATE); ITaille1(xPos, yPos, DATE); } if (iJoursDeLaSemaine == 5) // VENDREDI. { VTaille1(xPos, yPos, DATE); ETaille1(xPos, yPos, DATE); NTaille1(xPos, yPos, DATE); DTaille1(xPos, yPos, DATE); RTaille1(xPos, yPos, DATE); ETaille1(xPos, yPos, DATE); DTaille1(xPos, yPos, DATE); ITaille1(xPos, yPos, DATE); } if (iJoursDeLaSemaine == 6) // SAMEDI. { STaille1(xPos, yPos, DATE); ATaille1(xPos, yPos, DATE); MTaille1(xPos, yPos, DATE); ETaille1(xPos, yPos, DATE); DTaille1(xPos, yPos, DATE); ITaille1(xPos, yPos, DATE); } // // Ecrit le mois en lettres. // xPos = 80; yPos = 310; if (iMois == 1) // JANVIER. { JTaille1(xPos, yPos, DATE); ATaille1(xPos, yPos, DATE); NTaille1(xPos, yPos, DATE); VTaille1(xPos, yPos, DATE); ITaille1(xPos, yPos, DATE); ETaille1(xPos, yPos, DATE); RTaille1(xPos, yPos, DATE); } if (iMois == 2) // FEVRIER. { FTaille1(xPos, yPos, DATE); ETaille1(xPos, yPos, DATE); VTaille1(xPos, yPos, DATE); RTaille1(xPos, yPos, DATE); ITaille1(xPos, yPos, DATE); ETaille1(xPos, yPos, DATE); RTaille1(xPos, yPos, DATE); } if (iMois == 3) // MARS. { MTaille1(xPos, yPos, DATE); ATaille1(xPos, yPos, DATE); RTaille1(xPos, yPos, DATE); STaille1(xPos, yPos, DATE); } if (iMois == 4) // AVRIL. { ATaille1(xPos, yPos, DATE); VTaille1(xPos, yPos, DATE); RTaille1(xPos, yPos, DATE); ITaille1(xPos, yPos, DATE); LTaille1(xPos, yPos, DATE); } if (iMois == 5) // MAI. { MTaille1(xPos, yPos, DATE); ATaille1(xPos, yPos, DATE); ITaille1(xPos, yPos, DATE); } if (iMois == 6) // JUIN. { JTaille1(xPos, yPos, DATE); UTaille1(xPos, yPos, DATE); ITaille1(xPos, yPos, DATE); NTaille1(xPos, yPos, DATE); } if (iMois == 7) // JUILLET. { JTaille1(xPos, yPos, DATE); UTaille1(xPos, yPos, DATE); ITaille1(xPos, yPos, DATE); LTaille1(xPos, yPos, DATE); LTaille1(xPos, yPos, DATE); ETaille1(xPos, yPos, DATE); TTaille1(xPos, yPos, DATE); } if (iMois == 8) // AOUT. { ATaille1(xPos, yPos, DATE); OTaille1(xPos, yPos, DATE); UTaille1(xPos, yPos, DATE); TTaille1(xPos, yPos, DATE); } if (iMois == 9) // SEPTEMBRE. { STaille1(xPos, yPos, DATE); ETaille1(xPos, yPos, DATE); PTaille1(xPos, yPos, DATE); TTaille1(xPos, yPos, DATE); ETaille1(xPos, yPos, DATE); MTaille1(xPos, yPos, DATE); BTaille1(xPos, yPos, DATE); RTaille1(xPos, yPos, DATE); ETaille1(xPos, yPos, DATE); } if (iMois == 10) // OCTOBRE. { OTaille1(xPos, yPos, DATE); CTaille1(xPos, yPos, DATE); TTaille1(xPos, yPos, DATE); OTaille1(xPos, yPos, DATE); BTaille1(xPos, yPos, DATE); RTaille1(xPos, yPos, DATE); ETaille1(xPos, yPos, DATE); } if (iMois == 11) // NOVEMBRE. { NTaille1(xPos, yPos, DATE); OTaille1(xPos, yPos, DATE); VTaille1(xPos, yPos, DATE); ETaille1(xPos, yPos, DATE); MTaille1(xPos, yPos, DATE); BTaille1(xPos, yPos, DATE); RTaille1(xPos, yPos, DATE); ETaille1(xPos, yPos, DATE); } if (iMois == 12) // DECEMBRE. { DTaille1(xPos, yPos, DATE); ETaille1(xPos, yPos, DATE); CTaille1(xPos, yPos, DATE); ETaille1(xPos, yPos, DATE); MTaille1(xPos, yPos, DATE); BTaille1(xPos, yPos, DATE); RTaille1(xPos, yPos, DATE); ETaille1(xPos, yPos, DATE); } } // // : ----------------- : // : Lit le module RTC : // : ----------------- : // void litLaDateEtLHeure() { now = RTC.now(); // On lit l'heure complete et on extrait iHeures = now.hour(); // l'heure, if (iHeures >= 10) { iHeuresD = iHeures / 10; iHeuresU = iHeures - (iHeuresD * 10); } else { iHeuresD = 0; iHeuresU = iHeures; } iMinutes = now.minute(); // les minutes, if (iMinutes >= 10) { iMinutesD = iMinutes / 10; iMinutesU = iMinutes - (iMinutesD * 10); } else { iMinutesD = 0; iMinutesU = iMinutes; } iJours = now.day(); // la date du jour, cJours = (String)iJours; if (iJours >= 10) { iJoursD = iJours / 10; iJoursU = iJours - (iJoursD * 10); } else { iJoursD = 0; iJoursU = iJours; } iMois = now.month(); // le mois, iAnnees = now.year(); // l'annee iJoursDeLaSemaine = now.dayOfTheWeek(); // et le jour de la semaine. } // // : ------------------------ : // : Affiche Bon Anniversaire : // : ------------------------ : // void afficheBonAnniversaire() { litLaDateEtLHeure(); tft.fillScreen(FOND); // L'heure en petit caracteres en haut. afficheHeurePetit(); // Le message BON ANNIVERSAIRE. xPos = 30; yPos = 130; BTaille1(xPos, yPos, MESSAGE); OTaille1(xPos, yPos, MESSAGE); NTaille1(xPos, yPos, MESSAGE); xPos = 30; yPos = 160; ATaille1(xPos, yPos, MESSAGE); NTaille1(xPos, yPos, MESSAGE); NTaille1(xPos, yPos, MESSAGE); ITaille1(xPos, yPos, MESSAGE); VTaille1(xPos, yPos, MESSAGE); ETaille1(xPos, yPos, MESSAGE); RTaille1(xPos, yPos, MESSAGE); STaille1(xPos, yPos, MESSAGE); ATaille1(xPos, yPos, MESSAGE); ITaille1(xPos, yPos, MESSAGE); RTaille1(xPos, yPos, MESSAGE); ETaille1(xPos, yPos, MESSAGE); AfficheLePrenom(); // La date en petits caracteres. afficheDatePetit(); } // // : ------------------ : // : Affiche Bonne Fete : // : ------------------ : // void afficheBonneFete() { litLaDateEtLHeure(); tft.fillScreen(FOND); // L'heure en petit caracteres en haut. afficheHeurePetit(); // Le message BONNE FETE. xPos = 30; yPos = 130; BTaille1(xPos, yPos, MESSAGE); OTaille1(xPos, yPos, MESSAGE); NTaille1(xPos, yPos, MESSAGE); NTaille1(xPos, yPos, MESSAGE); ETaille1(xPos, yPos, MESSAGE); xPos = 30; yPos = 160; FTaille1(xPos, yPos, MESSAGE); ETaille1(xPos, yPos, MESSAGE); TTaille1(xPos, yPos, MESSAGE); ETaille1(xPos, yPos, MESSAGE); AfficheLePrenom(); // La date en petits caracteres. afficheDatePetit(); } // // : ------------------- : // : Affiche Joyeux Noel : // : ------------------- : // void afficheJoyeuxNoel() { litLaDateEtLHeure(); tft.fillScreen(FOND); // L'heure en petit caracteres en haut. afficheHeurePetit(); // Le message JOYEUX NOEL. xPos = 30; yPos = 130; JTaille1(xPos, yPos, MESSAGE); OTaille1(xPos, yPos, MESSAGE); YTaille1(xPos, yPos, MESSAGE); ETaille1(xPos, yPos, MESSAGE); UTaille1(xPos, yPos, MESSAGE); XTaille1(xPos, yPos, MESSAGE); xPos += 10; yPos = 130; NTaille1(xPos, yPos, MESSAGE); OTaille1(xPos, yPos, MESSAGE); ETaille1(xPos, yPos, MESSAGE); LTaille1(xPos, yPos, MESSAGE); AfficheLePrenom(); // La date en petits caracteres. afficheDatePetit(); } // // : ------------------- : // : Affiche Bonne Annee : // : ------------------- : // void afficheBonneAnnee() { litLaDateEtLHeure(); tft.fillScreen(FOND); // L'heure en petit caracteres en haut. afficheHeurePetit(); // Le message BONNE ANNEE. xPos = 30; yPos = 130; BTaille1(xPos, yPos, MESSAGE); OTaille1(xPos, yPos, MESSAGE); NTaille1(xPos, yPos, MESSAGE); NTaille1(xPos, yPos, MESSAGE); ETaille1(xPos, yPos, MESSAGE); xPos += 10; ATaille1(xPos, yPos, MESSAGE); NTaille1(xPos, yPos, MESSAGE); NTaille1(xPos, yPos, MESSAGE); ETaille1(xPos, yPos, MESSAGE); ETaille1(xPos, yPos, MESSAGE); AfficheLePrenom(); // La date en petits caracteres. afficheDatePetit(); } // // : --------------- : // : Affiche Bonjour : // : --------------- : // void afficheBonjour() { litLaDateEtLHeure(); // L'heure en petit caracteres en haut. afficheHeurePetit(); // Le message BONJOUR. xPos = 30; yPos = 130; BTaille1(xPos, yPos, MESSAGE); OTaille1(xPos, yPos, MESSAGE); NTaille1(xPos, yPos, MESSAGE); JTaille1(xPos, yPos, MESSAGE); OTaille1(xPos, yPos, MESSAGE); UTaille1(xPos, yPos, MESSAGE); RTaille1(xPos, yPos, MESSAGE); AfficheLePrenom(); // La date en petits caracteres. afficheDatePetit(); } // // : --------------- : // : Affiche Bonsoir : // : --------------- : // void afficheBonsoir() { litLaDateEtLHeure(); // L'heure en petit caracteres en haut. afficheHeurePetit(); // Le message BONSOIR. xPos = 30; yPos = 130; BTaille1(xPos, yPos, MESSAGE); OTaille1(xPos, yPos, MESSAGE); NTaille1(xPos, yPos, MESSAGE); STaille1(xPos, yPos, MESSAGE); OTaille1(xPos, yPos, MESSAGE); ITaille1(xPos, yPos, MESSAGE); RTaille1(xPos, yPos, MESSAGE); AfficheLePrenom(); // La date en petits caracteres. afficheDatePetit(); } // // : ------------------- : // : Affiche Bonne Nuit : // : ------------------- : // void afficheBonneNuit() { litLaDateEtLHeure(); // L'heure en petit caracteres en haut. afficheHeurePetit(); // Le message BONNE NUIT. xPos = 30; yPos = 130; BTaille1(xPos, yPos, MESSAGE); OTaille1(xPos, yPos, MESSAGE); NTaille1(xPos, yPos, MESSAGE); NTaille1(xPos, yPos, MESSAGE); ETaille1(xPos, yPos, MESSAGE); xPos += 10; NTaille1(xPos, yPos, MESSAGE); UTaille1(xPos, yPos, MESSAGE); ITaille1(xPos, yPos, MESSAGE); TTaille1(xPos, yPos, MESSAGE); AfficheLePrenom(); // La date en petits caracteres. afficheDatePetit(); } // // : ---------------------- : // : Affiche Bon Apres-Midi : // : ---------------------- : // void afficheBonApresMidi() { litLaDateEtLHeure(); // L'heure en petit caracteres en haut. afficheHeurePetit(); // Le message BONNE NUIT. xPos = 30; yPos = 130; BTaille1(xPos, yPos, MESSAGE); OTaille1(xPos, yPos, MESSAGE); NTaille1(xPos, yPos, MESSAGE); xPos = 30; yPos = 160; ATaille1(xPos, yPos, MESSAGE); PTaille1(xPos, yPos, MESSAGE); RTaille1(xPos, yPos, MESSAGE); ETaille1(xPos, yPos, MESSAGE); STaille1(xPos, yPos, MESSAGE); xPos += 10; MTaille1(xPos, yPos, MESSAGE); ITaille1(xPos, yPos, MESSAGE); DTaille1(xPos, yPos, MESSAGE); ITaille1(xPos, yPos, MESSAGE); AfficheLePrenom(); // La date en petits caracteres. afficheDatePetit(); } // // : ------------------- : // : Affiche Bon Appetit : // : ------------------- : // void afficheBonAppetit() { litLaDateEtLHeure(); // L'heure en petit caracteres en haut. afficheHeurePetit(); // Le message BONNE NUIT. xPos = 30; yPos = 130; BTaille1(xPos, yPos, MESSAGE); OTaille1(xPos, yPos, MESSAGE); NTaille1(xPos, yPos, MESSAGE); xPos += 10; ATaille1(xPos, yPos, MESSAGE); PTaille1(xPos, yPos, MESSAGE); PTaille1(xPos, yPos, MESSAGE); ETaille1(xPos, yPos, MESSAGE); TTaille1(xPos, yPos, MESSAGE); ITaille1(xPos, yPos, MESSAGE); TTaille1(xPos, yPos, MESSAGE); AfficheLePrenom(); // La date en petits caracteres. afficheDatePetit(); } // // : ------------------------- : // : Affiche le premier prenom : // : ------------------------- : // void AfficheLePrenom() { xPos = 30; yPos = 210; ATaille1(xPos, yPos, MESSAGE); NTaille1(xPos, yPos, MESSAGE); GTaille1(xPos, yPos, MESSAGE); ETaille1(xPos, yPos, MESSAGE); LTaille1(xPos, yPos, MESSAGE); ETaille1(xPos, yPos, MESSAGE); } // // : ----------- : // : LES LETTRES : // : ----------- : // // : - : // : A : // : - : // void ATaille1(int x, int y, int iColor) // Largeur 19. { tft.fillRect(x, y - 1, 2, 2, iColor); tft.fillRect(x + 1, y - 4, 2, 3, iColor); tft.fillRect(x + 2, y - 6, 2, 3, iColor); tft.fillRect(x + 3, y - 9, 2, 4, iColor); tft.fillRect(x + 4, y - 12, 2, 3, iColor); tft.fillRect(x + 5, y - 15, 2, 4, iColor); tft.fillRect(x + 6, y - 17, 2, 3, iColor); tft.fillRect(x + 7, y - 19, 3, 2, iColor); tft.fillRect(x + 9, y - 17, 2, 3, iColor); tft.fillRect(x + 10, y - 16, 2, 4, iColor); tft.fillRect(x + 11, y - 13, 2, 3, iColor); tft.fillRect(x + 12, y - 10, 2, 4, iColor); tft.fillRect(x + 13, y - 7, 2, 3, iColor); tft.fillRect(x + 14, y - 5, 2, 3, iColor); tft.fillRect(x + 15, y - 2, 2, 2, iColor); tft.fillRect(x + 3, y - 7, 11, 2, iColor); xPos += 19; } void ATaille2(int x, int y, int iColor) // Largeur 38. { tft.fillRect(x, y - 2, 4, 4, iColor); tft.fillRect(x + 2, y - 8, 4, 6, iColor); tft.fillRect(x + 4, y - 12, 4, 6, iColor); tft.fillRect(x + 6, y - 18, 4, 8, iColor); tft.fillRect(x + 8, y - 24, 4, 6, iColor); tft.fillRect(x + 10, y - 30, 4, 8, iColor); tft.fillRect(x + 12, y - 34, 4, 6, iColor); tft.fillRect(x + 14, y - 38, 6, 4, iColor); tft.fillRect(x + 18, y - 34, 4, 6, iColor); tft.fillRect(x + 20, y - 32, 4, 8, iColor); tft.fillRect(x + 22, y - 26, 4, 6, iColor); tft.fillRect(x + 24, y - 20, 4, 8, iColor); tft.fillRect(x + 26, y - 14, 4, 6, iColor); tft.fillRect(x + 28, y - 10, 4, 6, iColor); tft.fillRect(x + 30, y - 4, 4, 4, iColor); tft.fillRect(x + 6, y - 14, 22, 4, iColor); xPos += 38; } // // : - : // : B : // : - : // void BTaille1(int x, int y, int iColor) // Largeur 16. { tft.fillRect(x, y - 19, 2, 20, iColor); tft.fillRect(x, y - 19, 11, 2, iColor); tft.fillRect(x, y - 10, 12, 2, iColor); tft.fillRect(x, y - 1, 11, 2, iColor); tft.fillRect(x + 10, y - 18, 2, 2, iColor); tft.fillRect(x + 11, y - 17, 2, 2, iColor); tft.fillRect(x + 11, y - 16, 2, 5, iColor); tft.fillRect(x + 11, y - 15, 2, 2, iColor); tft.fillRect(x + 11, y - 12, 2, 3, iColor); tft.fillRect(x + 12, y - 9, 2, 2, iColor); tft.fillRect(x + 12, y - 7, 2, 5, iColor); tft.fillRect(x + 12, y - 3, 2, 2, iColor); tft.fillRect(x + 11, y - 2, 2, 2, iColor); xPos += 16; } void BTaille2(int x, int y, int iColor) // Largeur 32. { tft.fillRect(x, y - 38, 4, 40, iColor); tft.fillRect(x, y - 38, 22, 4, iColor); tft.fillRect(x, y - 20, 24, 4, iColor); tft.fillRect(x, y - 2, 22, 4, iColor); tft.fillRect(x + 20, y - 36, 4, 4, iColor); tft.fillRect(x + 22, y - 34, 4, 4, iColor); tft.fillRect(x + 22, y - 32, 4, 10, iColor); tft.fillRect(x + 22, y - 30, 4, 4, iColor); tft.fillRect(x + 22, y - 24, 4, 6, iColor); tft.fillRect(x + 24, y - 18, 4, 4, iColor); tft.fillRect(x + 24, y - 14, 4, 10, iColor); tft.fillRect(x + 24, y - 6, 4, 4, iColor); tft.fillRect(x + 22, y - 4, 4, 4, iColor); xPos += 32; } // // : - : // : C : // : - : // void CTaille1(int x, int y, int iColor) // Largeur 20. { tft.fillRect(x + 16, y - 6, 2, 2, iColor); tft.fillRect(x + 15, y - 5, 2, 3, iColor); tft.fillRect(x + 14, y - 3, 2, 2, iColor); tft.fillRect(x + 12, y - 2, 3, 2, iColor); tft.fillRect(x + 6, y - 1, 7, 2, iColor); tft.fillRect(x + 4, y - 2, 2, 2, iColor); tft.fillRect(x + 3, y - 3, 2, 2, iColor); tft.fillRect(x + 3, y - 4, 2, 2, iColor); tft.fillRect(x + 1, y - 6, 2, 3, iColor); tft.fillRect(x + 0, y - 13, 2, 7, iColor); tft.fillRect(x + 1, y - 15, 2, 3, iColor); tft.fillRect(x + 2, y - 16, 2, 2, iColor); tft.fillRect(x + 3, y - 17, 2, 2, iColor); tft.fillRect(x + 4, y - 18, 2, 2, iColor); tft.fillRect(x + 6, y - 19, 7, 2, iColor); tft.fillRect(x + 13, y - 18, 2, 2, iColor); tft.fillRect(x + 14, y - 17, 2, 2, iColor); tft.fillRect(x + 15, y - 16, 2, 2, iColor); tft.fillRect(x + 16, y - 15, 2, 2, iColor); xPos += 20; } void CTaille2(int x, int y, int iColor) // Largeur 40. { tft.fillRect(x + 33, y - 12, 4, 4, iColor); tft.fillRect(x + 30, y - 10, 4, 6, iColor); tft.fillRect(x + 28, y - 6, 4, 4, iColor); tft.fillRect(x + 24, y - 4, 6, 4, iColor); tft.fillRect(x + 11, y - 2, 14, 4, iColor); tft.fillRect(x + 8, y - 4, 4, 4, iColor); tft.fillRect(x + 6, y - 6, 4, 4, iColor); tft.fillRect(x + 6, y - 8, 4, 4, iColor); tft.fillRect(x + 2, y - 12, 4, 6, iColor); tft.fillRect(x + 0, y - 26, 4, 14, iColor); tft.fillRect(x + 2, y - 30, 4, 6, iColor); tft.fillRect(x + 4, y - 32, 4, 4, iColor); tft.fillRect(x + 6, y - 34, 4, 4, iColor); tft.fillRect(x + 8, y - 36, 4, 4, iColor); tft.fillRect(x + 12, y - 38, 14, 4, iColor); tft.fillRect(x + 26, y - 36, 4, 4, iColor); tft.fillRect(x + 28, y - 34, 4, 4, iColor); tft.fillRect(x + 30, y - 32, 4, 4, iColor); tft.fillRect(x + 32, y - 30, 4, 4, iColor); xPos += 40; } // // : - : // : D : // : - : // void DTaille1(int x, int y, int iColor) // Largeur 19. { tft.fillRect(x + 0, y - 19, 2, 19, iColor); tft.fillRect(x + 0, y - 19, 12, 2, iColor); tft.fillRect(x + 0, y - 1, 12, 2, iColor); tft.fillRect(x + 11, y - 18, 2, 2, iColor); tft.fillRect(x + 13, y - 17, 2, 2, iColor); tft.fillRect(x + 14, y - 15, 2, 2, iColor); tft.fillRect(x + 15, y - 13, 2, 8, iColor); tft.fillRect(x + 14, y - 5, 2, 2, iColor); tft.fillRect(x + 13, y - 3, 2, 2, iColor); tft.fillRect(x + 12, y - 2, 2, 2, iColor); xPos += 19; } void DTaille2(int x, int y, int iColor) // Largeur 38. { tft.fillRect(x + 0, y - 38, 4, 38, iColor); tft.fillRect(x + 0, y - 38, 24, 4, iColor); tft.fillRect(x + 0, y - 2, 24, 4, iColor); tft.fillRect(x + 22, y - 36, 4, 4, iColor); tft.fillRect(x + 26, y - 34, 4, 4, iColor); tft.fillRect(x + 28, y - 30, 4, 4, iColor); tft.fillRect(x + 30, y - 26, 4, 16, iColor); tft.fillRect(x + 28, y - 10, 4, 4, iColor); tft.fillRect(x + 26, y - 6, 4, 4, iColor); tft.fillRect(x + 24, y - 4, 4, 4, iColor); xPos += 38; } // // : - : // : E : // : - : // void ETaille1(int x, int y, int iColor) // Largeur 17. { tft.fillRect(x + 0, y - 19, 2, 19, iColor); tft.fillRect(x + 0, y - 19, 15, 2, iColor); tft.fillRect(x + 0, y - 10, 14, 2, iColor); tft.fillRect(x + 0, y - 0, 15, 2, iColor); xPos += 17; } void ETaille2(int x, int y, int iColor) // Largeur 34. { tft.fillRect(x + 0, y - 38, 4, 38, iColor); tft.fillRect(x + 0, y - 38, 30, 4, iColor); tft.fillRect(x + 0, y - 20, 28, 4, iColor); tft.fillRect(x + 0, y - 0, 30, 4, iColor); xPos += 34; } // // : - : // : F : // : - : // void FTaille1(int x, int y, int iColor) // Largeur 17. { tft.fillRect(x + 0, y - 19, 2, 21, iColor); tft.fillRect(x + 0, y - 19, 15, 2, iColor); tft.fillRect(x + 0, y - 10, 12, 2, iColor); xPos += 17; } void FTaille2(int x, int y, int iColor) // Largeur 34. { tft.fillRect(x + 0, y - 38, 4, 42, iColor); tft.fillRect(x + 0, y - 38, 30, 4, iColor); tft.fillRect(x + 0, y - 20, 24, 4, iColor); xPos += 34; } // // : - : // : G : // : - : // void GTaille1(int x, int y, int iColor) // Largeur 20. { tft.fillRect(x + 16, y - 6, 2, 2, iColor); tft.fillRect(x + 15, y - 5, 2, 3, iColor); tft.fillRect(x + 14, y - 3, 2, 2, iColor); tft.fillRect(x + 12, y - 2, 3, 2, iColor); tft.fillRect(x + 6, y - 1, 7, 2, iColor); tft.fillRect(x + 4, y - 2, 2, 2, iColor); tft.fillRect(x + 3, y - 3, 2, 2, iColor); tft.fillRect(x + 3, y - 4, 2, 2, iColor); tft.fillRect(x + 1, y - 6, 2, 3, iColor); tft.fillRect(x + 0, y - 13, 2, 7, iColor); tft.fillRect(x + 1, y - 15, 2, 3, iColor); tft.fillRect(x + 2, y - 16, 2, 2, iColor); tft.fillRect(x + 3, y - 17, 2, 2, iColor); tft.fillRect(x + 4, y - 18, 2, 2, iColor); tft.fillRect(x + 6, y - 19, 7, 2, iColor); tft.fillRect(x + 13, y - 18, 2, 2, iColor); tft.fillRect(x + 14, y - 17, 2, 2, iColor); tft.fillRect(x + 15, y - 16, 2, 2, iColor); tft.fillRect(x + 16, y - 15, 2, 2, iColor); tft.fillRect(x + 10, y - 10, 8, 2, iColor); tft.fillRect(x + 16, y - 10, 2, 7, iColor); xPos += 20; } void GTaille2(int x, int y, int iColor) // Largeur 40. { tft.fillRect(x + 33, y - 12, 4, 4, iColor); tft.fillRect(x + 30, y - 10, 4, 6, iColor); tft.fillRect(x + 28, y - 6, 4, 4, iColor); tft.fillRect(x + 24, y - 4, 6, 4, iColor); tft.fillRect(x + 11, y - 2, 14, 4, iColor); tft.fillRect(x + 8, y - 4, 4, 4, iColor); tft.fillRect(x + 6, y - 6, 4, 4, iColor); tft.fillRect(x + 6, y - 8, 4, 4, iColor); tft.fillRect(x + 2, y - 12, 4, 6, iColor); tft.fillRect(x + 0, y - 26, 4, 14, iColor); tft.fillRect(x + 2, y - 30, 4, 6, iColor); tft.fillRect(x + 4, y - 32, 4, 4, iColor); tft.fillRect(x + 6, y - 34, 4, 4, iColor); tft.fillRect(x + 8, y - 36, 4, 4, iColor); tft.fillRect(x + 12, y - 38, 14, 4, iColor); tft.fillRect(x + 26, y - 36, 4, 4, iColor); tft.fillRect(x + 28, y - 34, 4, 4, iColor); tft.fillRect(x + 30, y - 32, 4, 4, iColor); tft.fillRect(x + 32, y - 30, 4, 4, iColor); tft.fillRect(x + 20, y - 20, 16, 4, iColor); tft.fillRect(x + 32, y - 20, 4, 14, iColor); xPos += 40; } // // : - : // : H : // : - : // void HTaille1(int x, int y, int iColor) // Largeur 17. { tft.fillRect(x + 0, y - 19, 2, 20, iColor); tft.fillRect(x + 0, y - 10, 15, 2, iColor); tft.fillRect(x + 13, y - 19, 2, 20, iColor); xPos += 17; } void HTaille2(int x, int y, int iColor) // Largeur 34. { tft.fillRect(x + 0, y - 38, 4, 40, iColor); tft.fillRect(x + 0, y - 20, 30, 4, iColor); tft.fillRect(x + 26, y - 38, 4, 40, iColor); xPos += 34; } // // : - : // : I : // : - : // void ITaille1(int x, int y, int iColor) // Largeur 7. { tft.fillRect(x + 0, y - 19, 2, 20, iColor); xPos += 7; } void ITaille2(int x, int y, int iColor) // Largeur 14. { tft.fillRect(x + 0, y - 38, 4, 40, iColor); xPos += 14; } // // : - : // : J : // : - : // void JTaille1(int x, int y, int iColor) // Largeur 13. { tft.fillRect(x + 0, y - 5, 2, 3, iColor); tft.fillRect(x + 1, y - 2, 2, 2, iColor); tft.fillRect(x + 2, y - 1, 5, 2, iColor); tft.fillRect(x + 7, y - 2, 2, 2, iColor); tft.fillRect(x + 8, y - 19, 2, 17, iColor); xPos += 13; } void JTaille2(int x, int y, int iColor) // Largeur 26. { tft.fillRect(x + 0, y - 10, 4, 6, iColor); tft.fillRect(x + 2, y - 4, 4, 4, iColor); tft.fillRect(x + 4, y - 2, 10, 4, iColor); tft.fillRect(x + 14, y - 4, 4, 4, iColor); tft.fillRect(x + 16, y - 38, 4, 34, iColor); xPos += 26; } // // : - : // : K : // : - : // void KTaille1(int x, int y, int iColor) // Largeur 18. { tft.fillRect(x + 0, y - 19, 2, 20, iColor); tft.drawLine(x + 2, y - 9, x + 12, y - 19, iColor); tft.drawLine(x + 2, y - 8, x + 13, y - 19, iColor); tft.drawLine(x + 2, y - 7, x + 14, y - 19, iColor); tft.fillRect(x + 6, y - 10, 2, 2, iColor); tft.fillRect(x + 7, y - 8, 3, 2, iColor); tft.fillRect(x + 8, y - 6, 3, 1, iColor); tft.fillRect(x + 9, y - 5, 3, 1, iColor); tft.fillRect(x + 10, y - 4, 3, 1, iColor); tft.fillRect(x + 11, y - 3, 2, 2, iColor); tft.fillRect(x + 12, y - 2, 3, 1, iColor); tft.fillRect(x + 12, y - 1, 3, 1, iColor); tft.fillRect(x + 13, y - 0, 3, 0, iColor); xPos += 18; } void KTaille2(int x, int y, int iColor) // Largeur 36. { tft.fillRect(x + 0, y - 38, 4, 40, iColor); tft.drawLine(x + 4, y - 18, x + 24, y - 38, iColor); tft.drawLine(x + 4, y - 16, x + 26, y - 38, iColor); tft.drawLine(x + 4, y - 14, x + 28, y - 38, iColor); tft.fillRect(x + 12, y - 20, 4, 4, iColor); tft.fillRect(x + 14, y - 16, 6, 4, iColor); tft.fillRect(x + 16, y - 12, 6, 2, iColor); tft.fillRect(x + 18, y - 10, 6, 2, iColor); tft.fillRect(x + 20, y - 8, 6, 2, iColor); tft.fillRect(x + 22, y - 6, 4, 4, iColor); tft.fillRect(x + 24, y - 4, 6, 2, iColor); tft.fillRect(x + 24, y - 2, 6, 2, iColor); tft.fillRect(x + 26, y - 0, 6, 0, iColor); xPos += 36; } // // : - : // : L : // : - : // void LTaille1(int x, int y, int iColor) // Largeur 14. { tft.fillRect(x + 0, y - 19, 2, 20, iColor); tft.fillRect(x + 0, y - 1, 12, 2, iColor); xPos += 14; } void LTaille2(int x, int y, int iColor) // Largeur 28. { tft.fillRect(x + 0, y - 38, 4, 40, iColor); tft.fillRect(x + 0, y - 2, 24, 4, iColor); xPos += 28; } // // : - : // : M : // : - : // void MTaille1(int x, int y, int iColor) // Largeur 18. { tft.fillRect(x + 0, y - 19, 2, 20, iColor); tft.fillRect(x + 0, y - 18, 4, 3, iColor); tft.fillRect(x + 3, y - 15, 2, 3, iColor); tft.fillRect(x + 4, y - 12, 2, 3, iColor); tft.fillRect(x + 5, y - 9, 2, 4, iColor); tft.fillRect(x + 6, y - 6, 2, 4, iColor); tft.fillRect(x + 7, y - 2, 3, 3, iColor); tft.fillRect(x + 9, y - 6, 2, 4, iColor); tft.fillRect(x + 10, y - 9, 2, 4, iColor); tft.fillRect(x + 11, y - 12, 2, 3, iColor); tft.fillRect(x + 12, y - 15, 2, 3, iColor); tft.fillRect(x + 13, y - 18, 1, 4, iColor); tft.fillRect(x + 14, y - 19, 2, 20, iColor); xPos += 18; } void MTaille2(int x, int y, int iColor) // Largeur 36. { tft.fillRect(x + 0, y - 38, 4, 40, iColor); tft.fillRect(x + 0, y - 36, 8, 6, iColor); tft.fillRect(x + 6, y - 30, 4, 6, iColor); tft.fillRect(x + 8, y - 24, 4, 6, iColor); tft.fillRect(x + 10, y - 18, 4, 8, iColor); tft.fillRect(x + 12, y - 12, 4, 8, iColor); tft.fillRect(x + 14, y - 4, 6, 6, iColor); tft.fillRect(x + 18, y - 12, 4, 8, iColor); tft.fillRect(x + 20, y - 18, 4, 8, iColor); tft.fillRect(x + 22, y - 24, 4, 6, iColor); tft.fillRect(x + 24, y - 30, 4, 6, iColor); tft.fillRect(x + 26, y - 36, 2, 8, iColor); tft.fillRect(x + 28, y - 38, 4, 40, iColor); xPos += 36; } // // : - : // : N : // : - : // void NTaille1(int x, int y, int iColor) // Largeur 18. { tft.fillRect(x + 0, y - 19, 2, 20, iColor); tft.fillRect(x + 0, y - 19, 3, 2, iColor); tft.fillRect(x + 0, y - 17, 4, 2, iColor); tft.fillRect(x + 3, y - 15, 2, 1, iColor); tft.fillRect(x + 4, y - 14, 2, 2, iColor); tft.fillRect(x + 5, y - 12, 2, 1, iColor); tft.fillRect(x + 6, y - 11, 2, 2, iColor); tft.fillRect(x + 7, y - 9, 2, 2, iColor); tft.fillRect(x + 8, y - 7, 2, 1, iColor); tft.fillRect(x + 9, y - 6, 2, 2, iColor); tft.fillRect(x + 10, y - 4, 2, 1, iColor); tft.fillRect(x + 11, y - 3, 2, 2, iColor); tft.fillRect(x + 12, y - 1, 2, 2, iColor); tft.fillRect(x + 14, y - 19, 2, 20, iColor); xPos += 18; } void NTaille2(int x, int y, int iColor) // Largeur 36. { tft.fillRect(x + 0, y - 38, 4, 40, iColor); tft.fillRect(x + 0, y - 38, 6, 4, iColor); tft.fillRect(x + 0, y - 34, 8, 4, iColor); tft.fillRect(x + 6, y - 30, 4, 2, iColor); tft.fillRect(x + 8, y - 28, 4, 4, iColor); tft.fillRect(x + 10, y - 24, 4, 2, iColor); tft.fillRect(x + 12, y - 22, 4, 4, iColor); tft.fillRect(x + 14, y - 18, 4, 4, iColor); tft.fillRect(x + 16, y - 14, 4, 2, iColor); tft.fillRect(x + 18, y - 12, 4, 4, iColor); tft.fillRect(x + 20, y - 8, 4, 2, iColor); tft.fillRect(x + 22, y - 6, 4, 4, iColor); tft.fillRect(x + 24, y - 2, 4, 4, iColor); tft.fillRect(x + 28, y - 38, 4, 40, iColor); xPos += 36; } // // : - : // : O : // : - : // void OTaille1(int x, int y, int iColor) // Largeur 21. { tft.fillRect(x + 16, y - 6, 2, 2, iColor); tft.fillRect(x + 15, y - 5, 2, 3, iColor); tft.fillRect(x + 14, y - 3, 2, 2, iColor); tft.fillRect(x + 12, y - 2, 3, 2, iColor); tft.fillRect(x + 6, y - 1, 7, 2, iColor); tft.fillRect(x + 4, y - 2, 2, 2, iColor); tft.fillRect(x + 3, y - 3, 2, 2, iColor); tft.fillRect(x + 3, y - 4, 2, 2, iColor); tft.fillRect(x + 1, y - 6, 2, 3, iColor); tft.fillRect(x + 0, y - 13, 2, 7, iColor); tft.fillRect(x + 1, y - 15, 2, 3, iColor); tft.fillRect(x + 2, y - 16, 2, 2, iColor); tft.fillRect(x + 3, y - 17, 2, 2, iColor); tft.fillRect(x + 4, y - 18, 2, 2, iColor); tft.fillRect(x + 6, y - 19, 7, 2, iColor); tft.fillRect(x + 13, y - 18, 2, 2, iColor); tft.fillRect(x + 14, y - 17, 2, 2, iColor); tft.fillRect(x + 15, y - 16, 2, 2, iColor); tft.fillRect(x + 16, y - 15, 2, 2, iColor); tft.fillRect(x + 17, y - 13, 2, 8, iColor); xPos += 21; } void OTaille2(int x, int y, int iColor) // Largeur 42. { tft.fillRect(x + 33, y - 12, 4, 4, iColor); tft.fillRect(x + 30, y - 10, 4, 6, iColor); tft.fillRect(x + 28, y - 6, 4, 4, iColor); tft.fillRect(x + 24, y - 4, 6, 4, iColor); tft.fillRect(x + 11, y - 2, 14, 4, iColor); tft.fillRect(x + 8, y - 4, 4, 4, iColor); tft.fillRect(x + 6, y - 6, 4, 4, iColor); tft.fillRect(x + 6, y - 8, 4, 4, iColor); tft.fillRect(x + 2, y - 12, 4, 6, iColor); tft.fillRect(x + 0, y - 26, 4, 14, iColor); tft.fillRect(x + 2, y - 30, 4, 6, iColor); tft.fillRect(x + 4, y - 32, 4, 4, iColor); tft.fillRect(x + 6, y - 34, 4, 4, iColor); tft.fillRect(x + 8, y - 36, 4, 4, iColor); tft.fillRect(x + 12, y - 38, 14, 4, iColor); tft.fillRect(x + 26, y - 36, 4, 4, iColor); tft.fillRect(x + 28, y - 34, 4, 4, iColor); tft.fillRect(x + 30, y - 32, 4, 4, iColor); tft.fillRect(x + 32, y - 30, 4, 4, iColor); tft.fillRect(x + 34, y - 26, 4, 16, iColor); xPos += 42; } // // : - : // : P : // : - : // void PTaille1(int x, int y, int iColor) // Largeur 16. { tft.fillRect(x + 0, y - 19, 2, 20, iColor); tft.fillRect(x + 0, y - 19, 11, 2, iColor); tft.fillRect(x + 0, y - 9, 10, 2, iColor); tft.fillRect(x + 10, y - 18, 2, 2, iColor); tft.fillRect(x + 11, y - 17, 2, 2, iColor); tft.fillRect(x + 12, y - 16, 2, 6, iColor); tft.fillRect(x + 11, y - 10, 2, 2, iColor); tft.fillRect(x + 10, y - 9, 2, 2, iColor); xPos += 16; } void PTaille2(int x, int y, int iColor) // Largeur 32. { tft.fillRect(x + 0, y - 38, 4, 40, iColor); tft.fillRect(x + 0, y - 38, 22, 4, iColor); tft.fillRect(x + 0, y - 18, 20, 4, iColor); tft.fillRect(x + 20, y - 36, 4, 4, iColor); tft.fillRect(x + 22, y - 34, 4, 4, iColor); tft.fillRect(x + 24, y - 32, 4, 12, iColor); tft.fillRect(x + 22, y - 20, 4, 4, iColor); tft.fillRect(x + 20, y - 18, 4, 4, iColor); xPos += 32; } // // : - : // : Q : // : - : // void QTaille1(int x, int y, int iColor) // Largeur 18. { tft.fillRect(x + 16, y - 6, 2, 2, iColor); tft.fillRect(x + 15, y - 5, 2, 3, iColor); tft.fillRect(x + 14, y - 3, 2, 2, iColor); tft.fillRect(x + 12, y - 2, 3, 2, iColor); tft.fillRect(x + 6, y - 1, 7, 2, iColor); tft.fillRect(x + 4, y - 2, 2, 2, iColor); tft.fillRect(x + 3, y - 3, 2, 2, iColor); tft.fillRect(x + 3, y - 4, 2, 2, iColor); tft.fillRect(x + 1, y - 6, 2, 3, iColor); tft.fillRect(x + 0, y - 13, 2, 7, iColor); tft.fillRect(x + 1, y - 15, 2, 3, iColor); tft.fillRect(x + 2, y - 16, 2, 2, iColor); tft.fillRect(x + 3, y - 17, 2, 2, iColor); tft.fillRect(x + 4, y - 18, 2, 2, iColor); tft.fillRect(x + 6, y - 19, 7, 2, iColor); tft.fillRect(x + 13, y - 18, 2, 2, iColor); tft.fillRect(x + 14, y - 17, 2, 2, iColor); tft.fillRect(x + 15, y - 16, 2, 2, iColor); tft.fillRect(x + 16, y - 15, 2, 2, iColor); tft.fillRect(x + 17, y - 13, 2, 8, iColor); tft.fillRect(x + 10, y - 4, 3, 2, iColor); tft.fillRect(x + 12, y - 3, 5, 3, iColor); tft.fillRect(x + 16, y + 0, 2, 2, iColor); tft.fillRect(x + 17, y + 1, 2, 2, iColor); xPos += 18; } void QTaille2(int x, int y, int iColor) // Largeur 36. { tft.fillRect(x + 33, y - 12, 4, 4, iColor); tft.fillRect(x + 30, y - 10, 4, 6, iColor); tft.fillRect(x + 28, y - 6, 4, 4, iColor); tft.fillRect(x + 24, y - 4, 6, 4, iColor); tft.fillRect(x + 11, y - 2, 14, 4, iColor); tft.fillRect(x + 8, y - 4, 4, 4, iColor); tft.fillRect(x + 6, y - 6, 4, 4, iColor); tft.fillRect(x + 6, y - 8, 4, 4, iColor); tft.fillRect(x + 2, y - 12, 4, 6, iColor); tft.fillRect(x + 0, y - 26, 4, 14, iColor); tft.fillRect(x + 2, y - 30, 4, 6, iColor); tft.fillRect(x + 4, y - 32, 4, 4, iColor); tft.fillRect(x + 6, y - 34, 4, 4, iColor); tft.fillRect(x + 8, y - 36, 4, 4, iColor); tft.fillRect(x + 12, y - 38, 14, 4, iColor); tft.fillRect(x + 26, y - 36, 4, 4, iColor); tft.fillRect(x + 28, y - 34, 4, 4, iColor); tft.fillRect(x + 30, y - 32, 4, 4, iColor); tft.fillRect(x + 32, y - 30, 4, 4, iColor); tft.fillRect(x + 34, y - 26, 4, 16, iColor); tft.fillRect(x + 20, y - 8, 6, 4, iColor); tft.fillRect(x + 24, y - 6, 10, 6, iColor); tft.fillRect(x + 32, y + 0, 4, 4, iColor); tft.fillRect(x + 34, y + 2, 4, 4, iColor); xPos += 36; } // // : - : // : R : // : - : // void RTaille1(int x, int y, int iColor) // Largeur 16. { tft.fillRect(x + 0, y - 19, 2, 20, iColor); tft.fillRect(x + 0, y - 19, 11, 2, iColor); tft.fillRect(x + 0, y - 9, 10, 2, iColor); tft.fillRect(x + 10, y - 18, 2, 2, iColor); tft.fillRect(x + 11, y - 17, 2, 2, iColor); tft.fillRect(x + 12, y - 16, 2, 6, iColor); tft.fillRect(x + 11, y - 10, 2, 2, iColor); tft.fillRect(x + 10, y - 9, 2, 2, iColor); tft.fillRect(x + 8, y - 8, 3, 1, iColor); tft.fillRect(x + 9, y - 7, 2, 1, iColor); tft.fillRect(x + 10, y - 6, 2, 1, iColor); tft.fillRect(x + 10, y - 5, 3, 1, iColor); tft.fillRect(x + 11, y - 4, 3, 1, iColor); tft.fillRect(x + 12, y - 3, 2, 1, iColor); tft.fillRect(x + 13, y - 2, 2, 1, iColor); tft.fillRect(x + 13, y - 1, 3, 1, iColor); tft.fillRect(x + 14, y - 0, 2, 1, iColor); xPos += 16; } void RTaille2(int x, int y, int iColor) // Largeur 32. { tft.fillRect(x + 0, y - 38, 4, 40, iColor); tft.fillRect(x + 0, y - 38, 22, 4, iColor); tft.fillRect(x + 0, y - 18, 20, 4, iColor); tft.fillRect(x + 20, y - 36, 4, 4, iColor); tft.fillRect(x + 22, y - 34, 4, 4, iColor); tft.fillRect(x + 24, y - 32, 4, 12, iColor); tft.fillRect(x + 22, y - 20, 4, 4, iColor); tft.fillRect(x + 20, y - 18, 4, 4, iColor); tft.fillRect(x + 0, y - 38, 4, 40, iColor); tft.fillRect(x + 0, y - 38, 22, 4, iColor); tft.fillRect(x + 0, y - 18, 20, 4, iColor); tft.fillRect(x + 20, y - 36, 4, 4, iColor); tft.fillRect(x + 22, y - 34, 4, 4, iColor); tft.fillRect(x + 24, y - 32, 4, 12, iColor); tft.fillRect(x + 22, y - 20, 4, 4, iColor); tft.fillRect(x + 20, y - 18, 4, 4, iColor); tft.fillRect(x + 16, y - 16, 6, 2, iColor); tft.fillRect(x + 18, y - 14, 4, 2, iColor); tft.fillRect(x + 20, y - 12, 4, 2, iColor); tft.fillRect(x + 20, y - 10, 6, 2, iColor); tft.fillRect(x + 22, y - 8, 6, 2, iColor); tft.fillRect(x + 24, y - 6, 4, 2, iColor); tft.fillRect(x + 26, y - 4, 4, 2, iColor); tft.fillRect(x + 26, y - 2, 6, 2, iColor); tft.fillRect(x + 28, y - 0, 4, 2, iColor); xPos += 32; } // // : - : // : S : // : - : // void STaille1(int x, int y, int iColor) // Largeur 18. { tft.fillRect(x + 0, y - 6, 2, 3, iColor); tft.fillRect(x + 1, y - 4, 2, 2, iColor); tft.fillRect(x + 2, y - 3, 2, 2, iColor); tft.fillRect(x + 3, y - 2, 2, 2, iColor); tft.fillRect(x + 5, y - 1, 7, 2, iColor); tft.fillRect(x + 12, y - 2, 2, 2, iColor); tft.fillRect(x + 13, y - 3, 2, 2, iColor); tft.fillRect(x + 14, y - 7, 2, 4, iColor); tft.fillRect(x + 13, y - 7, 3, 1, iColor); tft.fillRect(x + 11, y - 8, 4, 1, iColor); tft.fillRect(x + 7, y - 9, 7, 1, iColor); tft.fillRect(x + 4, y - 10, 9, 1, iColor); tft.fillRect(x + 2, y - 11, 8, 1, iColor); tft.fillRect(x + 1, y - 12, 3, 1, iColor); tft.fillRect(x + 1, y - 16, 2, 4, iColor); tft.fillRect(x + 2, y - 17, 2, 6, iColor); tft.fillRect(x + 3, y - 18, 2, 2, iColor); tft.fillRect(x + 5, y - 19, 8, 2, iColor); tft.fillRect(x + 13, y - 18, 2, 2, iColor); tft.fillRect(x + 14, y - 16, 2, 2, iColor); xPos += 18; } void STaille2(int x, int y, int iColor) // Largeur 36. { tft.fillRect(x + 0, y - 12, 4, 6, iColor); tft.fillRect(x + 2, y - 8, 4, 4, iColor); tft.fillRect(x + 4, y - 6, 4, 4, iColor); tft.fillRect(x + 6, y - 4, 4, 4, iColor); tft.fillRect(x + 10, y - 2, 18, 4, iColor); tft.fillRect(x + 26, y - 6, 4, 4, iColor); tft.fillRect(x + 28, y - 14, 4, 8, iColor); tft.fillRect(x + 26, y - 14, 6, 2, iColor); tft.fillRect(x + 22, y - 16, 8, 2, iColor); tft.fillRect(x + 14, y - 18, 14, 2, iColor); tft.fillRect(x + 8, y - 20, 18, 2, iColor); tft.fillRect(x + 4, y - 22, 16, 2, iColor); tft.fillRect(x + 2, y - 24, 6, 2, iColor); tft.fillRect(x + 2, y - 32, 4, 8, iColor); tft.fillRect(x + 4, y - 34, 4, 12, iColor); tft.fillRect(x + 6, y - 36, 4, 4, iColor); tft.fillRect(x + 10, y - 38, 16, 4, iColor); tft.fillRect(x + 26, y - 36, 4, 4, iColor); tft.fillRect(x + 28, y - 32, 4, 4, iColor); xPos += 36; } // // : - : // : T : // : - : // void TTaille1(int x, int y, int iColor) // Largeur 16. { tft.fillRect(x + 0, y - 19, 14, 2, iColor); tft.fillRect(x + 6, y - 19, 2, 20, iColor); xPos += 16; } void TTaille2(int x, int y, int iColor) // Largeur 32. { tft.fillRect(x + 0, y - 38, 28, 4, iColor); tft.fillRect(x + 12, y - 38, 4, 40, iColor); xPos += 32; } // // : - : // : U : // : - : // void UTaille1(int x, int y, int iColor) // Largeur 17. { tft.fillRect(x + 0, y - 19, 2, 16, iColor); tft.fillRect(x + 1, y - 4, 2, 3, iColor); tft.fillRect(x + 2, y - 2, 3, 2, iColor); tft.fillRect(x + 4, y - 1, 7, 2, iColor); tft.fillRect(x + 10, y - 2, 3, 2, iColor); tft.fillRect(x + 12, y - 4, 2, 3, iColor); tft.fillRect(x + 13, y - 19, 2, 16, iColor); xPos += 17; } void UTaille2(int x, int y, int iColor) // Largeur 34. { tft.fillRect(x + 0, y - 38, 4, 32, iColor); tft.fillRect(x + 2, y - 8, 4, 6, iColor); tft.fillRect(x + 4, y - 4, 6, 4, iColor); tft.fillRect(x + 8, y - 2, 14, 4, iColor); tft.fillRect(x + 20, y - 4, 6, 4, iColor); tft.fillRect(x + 24, y - 8, 4, 6, iColor); tft.fillRect(x + 26, y - 38, 4, 32, iColor); xPos += 34; } // // : - : // : V : // : - : // void VTaille1(int x, int y, int iColor) // Largeur 19. { tft.fillRect(x + 0, y - 19, 2, 2, iColor); tft.fillRect(x + 1, y - 18, 2, 4, iColor); tft.fillRect(x + 2, y - 15, 2, 3, iColor); tft.fillRect(x + 3, y - 12, 2, 3, iColor); tft.fillRect(x + 4, y - 10, 2, 4, iColor); tft.fillRect(x + 5, y - 7, 2, 3, iColor); tft.fillRect(x + 6, y - 4, 2, 3, iColor); tft.fillRect(x + 7, y - 2, 3, 3, iColor); tft.fillRect(x + 9, y - 4, 2, 3, iColor); tft.fillRect(x + 10, y - 7, 2, 3, iColor); tft.fillRect(x + 11, y - 10, 2, 4, iColor); tft.fillRect(x + 12, y - 12, 2, 3, iColor); tft.fillRect(x + 13, y - 15, 2, 3, iColor); tft.fillRect(x + 14, y - 18, 2, 4, iColor); tft.fillRect(x + 15, y - 19, 2, 2, iColor); xPos += 19; } void VTaille2(int x, int y, int iColor) // Largeur 38. { tft.fillRect(x + 0, y - 38, 4, 4, iColor); tft.fillRect(x + 2, y - 36, 4, 8, iColor); tft.fillRect(x + 4, y - 30, 4, 6, iColor); tft.fillRect(x + 6, y - 24, 4, 6, iColor); tft.fillRect(x + 8, y - 20, 4, 8, iColor); tft.fillRect(x + 10, y - 14, 4, 6, iColor); tft.fillRect(x + 12, y - 8, 4, 6, iColor); tft.fillRect(x + 14, y - 4, 6, 6, iColor); tft.fillRect(x + 18, y - 8, 4, 6, iColor); tft.fillRect(x + 20, y - 14, 4, 6, iColor); tft.fillRect(x + 22, y - 20, 4, 8, iColor); tft.fillRect(x + 24, y - 24, 4, 6, iColor); tft.fillRect(x + 26, y - 30, 4, 6, iColor); tft.fillRect(x + 28, y - 36, 4, 8, iColor); tft.fillRect(x + 30, y - 38, 4, 4, iColor); xPos += 38; } // // : - : // : W : // : - : // void WTaille1(int x, int y, int iColor) // Largeur 28. { tft.fillRect(x + 0, y - 19, 2, 2, iColor); tft.fillRect(x + 1, y - 17, 2, 4, iColor); tft.fillRect(x + 2, y - 13, 2, 4, iColor); tft.fillRect(x + 3, y - 10, 2, 5, iColor); tft.fillRect(x + 4, y - 6, 2, 4, iColor); tft.fillRect(x + 5, y - 2, 3, 3, iColor); tft.fillRect(x + 7, y - 6, 2, 4, iColor); tft.fillRect(x + 8, y - 10, 2, 4, iColor); tft.fillRect(x + 9, y - 14, 2, 4, iColor); tft.fillRect(x + 10, y - 17, 2, 3, iColor); tft.fillRect(x + 11, y - 19, 3, 2, iColor); tft.fillRect(x + 13, y - 19, 2, 2, iColor); tft.fillRect(x + 14, y - 17, 2, 4, iColor); tft.fillRect(x + 15, y - 13, 2, 4, iColor); tft.fillRect(x + 16, y - 10, 2, 5, iColor); tft.fillRect(x + 17, y - 6, 2, 4, iColor); tft.fillRect(x + 18, y - 2, 3, 3, iColor); tft.fillRect(x + 20, y - 6, 2, 4, iColor); tft.fillRect(x + 21, y - 10, 2, 4, iColor); tft.fillRect(x + 22, y - 14, 2, 4, iColor); tft.fillRect(x + 23, y - 17, 2, 3, iColor); tft.fillRect(x + 24, y - 19, 2, 2, iColor); xPos += 28; } void WTaille2(int x, int y, int iColor) // Largeur 56. { tft.fillRect(x + 0, y - 38, 4, 4, iColor); tft.fillRect(x + 2, y - 34, 4, 8, iColor); tft.fillRect(x + 4, y - 26, 4, 8, iColor); tft.fillRect(x + 6, y - 20, 4, 10, iColor); tft.fillRect(x + 8, y - 12, 4, 8, iColor); tft.fillRect(x + 10, y - 4, 6, 6, iColor); tft.fillRect(x + 14, y - 12, 4, 8, iColor); tft.fillRect(x + 16, y - 20, 4, 8, iColor); tft.fillRect(x + 18, y - 28, 4, 8, iColor); tft.fillRect(x + 20, y - 34, 4, 6, iColor); tft.fillRect(x + 22, y - 38, 6, 4, iColor); tft.fillRect(x + 26, y - 38, 4, 4, iColor); tft.fillRect(x + 28, y - 34, 4, 8, iColor); tft.fillRect(x + 30, y - 26, 4, 8, iColor); tft.fillRect(x + 32, y - 20, 4, 10, iColor); tft.fillRect(x + 34, y - 12, 4, 8, iColor); tft.fillRect(x + 36, y - 4, 6, 6, iColor); tft.fillRect(x + 40, y - 12, 4, 8, iColor); tft.fillRect(x + 42, y - 20, 4, 8, iColor); tft.fillRect(x + 44, y - 28, 4, 8, iColor); tft.fillRect(x + 46, y - 34, 4, 6, iColor); tft.fillRect(x + 48, y - 38, 4, 4, iColor); xPos += 56; } // // : - : // : X : // : - : // void XTaille1(int x, int y, int iColor) // Largeur 19. { tft.fillRect(x + 0, y - 0, 3, 1, iColor); tft.fillRect(x + 1, y - 1, 3, 1, iColor); tft.fillRect(x + 2, y - 3, 3, 2, iColor); tft.fillRect(x + 3, y - 4, 3, 1, iColor); tft.fillRect(x + 4, y - 6, 3, 2, iColor); tft.fillRect(x + 5, y - 7, 3, 1, iColor); tft.fillRect(x + 6, y - 8, 2, 1, iColor); tft.fillRect(x + 7, y - 11, 4, 3, iColor); tft.fillRect(x + 6, y - 12, 2, 1, iColor); tft.fillRect(x + 5, y - 14, 3, 2, iColor); tft.fillRect(x + 4, y - 15, 3, 1, iColor); tft.fillRect(x + 3, y - 16, 3, 1, iColor); tft.fillRect(x + 3, y - 17, 2, 1, iColor); tft.fillRect(x + 2, y - 18, 3, 1, iColor); tft.fillRect(x + 1, y - 19, 3, 1, iColor); tft.fillRect(x + 14, y - 0, 3, 1, iColor); tft.fillRect(x + 13, y - 1, 3, 1, iColor); tft.fillRect(x + 13, y - 3, 2, 3, iColor); tft.fillRect(x + 12, y - 3, 3, 1, iColor); tft.fillRect(x + 11, y - 4, 3, 1, iColor); tft.fillRect(x + 10, y - 6, 3, 2, iColor); tft.fillRect(x + 9, y - 7, 3, 1, iColor); tft.fillRect(x + 9, y - 8, 2, 1, iColor); tft.fillRect(x + 9, y - 12, 2, 1, iColor); tft.fillRect(x + 9, y - 13, 3, 2, iColor); tft.fillRect(x + 10, y - 14, 3, 1, iColor); tft.fillRect(x + 11, y - 15, 3, 1, iColor); tft.fillRect(x + 12, y - 16, 3, 1, iColor); tft.fillRect(x + 13, y - 17, 2, 1, iColor); tft.fillRect(x + 13, y - 18, 3, 1, iColor); tft.fillRect(x + 14, y - 19, 3, 1, iColor); xPos += 19; } void XTaille2(int x, int y, int iColor) // Largeur 38. { tft.fillRect(x + 0, y - 0, 6, 2, iColor); tft.fillRect(x + 2, y - 2, 6, 2, iColor); tft.fillRect(x + 4, y - 6, 6, 4, iColor); tft.fillRect(x + 6, y - 8, 6, 2, iColor); tft.fillRect(x + 8, y - 12, 6, 4, iColor); tft.fillRect(x + 10, y - 14, 6, 2, iColor); tft.fillRect(x + 12, y - 16, 4, 2, iColor); tft.fillRect(x + 14, y - 22, 8, 6, iColor); tft.fillRect(x + 12, y - 24, 4, 2, iColor); tft.fillRect(x + 10, y - 28, 6, 4, iColor); tft.fillRect(x + 8, y - 30, 6, 2, iColor); tft.fillRect(x + 6, y - 32, 6, 2, iColor); tft.fillRect(x + 6, y - 34, 4, 2, iColor); tft.fillRect(x + 4, y - 36, 6, 2, iColor); tft.fillRect(x + 2, y - 38, 6, 2, iColor); tft.fillRect(x + 28, y - 0, 6, 2, iColor); tft.fillRect(x + 26, y - 2, 6, 2, iColor); tft.fillRect(x + 26, y - 6, 4, 6, iColor); tft.fillRect(x + 24, y - 6, 6, 2, iColor); tft.fillRect(x + 22, y - 8, 6, 2, iColor); tft.fillRect(x + 20, y - 12, 6, 4, iColor); tft.fillRect(x + 18, y - 14, 6, 2, iColor); tft.fillRect(x + 18, y - 16, 4, 2, iColor); tft.fillRect(x + 18, y - 24, 4, 2, iColor); tft.fillRect(x + 18, y - 26, 6, 4, iColor); tft.fillRect(x + 20, y - 28, 6, 2, iColor); tft.fillRect(x + 22, y - 30, 6, 2, iColor); tft.fillRect(x + 24, y - 32, 6, 2, iColor); tft.fillRect(x + 26, y - 34, 4, 2, iColor); tft.fillRect(x + 26, y - 36, 6, 2, iColor); tft.fillRect(x + 28, y - 38, 6, 2, iColor); xPos += 38; } // // : - : // : Y : // : - : // void YTaille1(int x, int y, int iColor) // Largeur 19. { tft.fillRect(x + 0, y - 19, 2, 1, iColor); tft.fillRect(x + 1, y - 18, 2, 1, iColor); tft.fillRect(x + 2, y - 17, 2, 2, iColor); tft.fillRect(x + 3, y - 15, 2, 2, iColor); tft.fillRect(x + 4, y - 13, 3, 1, iColor); tft.fillRect(x + 5, y - 12, 2, 2, iColor); tft.fillRect(x + 6, y - 10, 4, 2, iColor); tft.fillRect(x + 7, y - 8, 2, 9, iColor); tft.fillRect(x + 9, y - 12, 2, 2, iColor); tft.fillRect(x + 9, y - 13, 3, 1, iColor); tft.fillRect(x + 10, y - 14, 3, 1, iColor); tft.fillRect(x + 11, y - 15, 2, 1, iColor); tft.fillRect(x + 11, y - 16, 3, 1, iColor); tft.fillRect(x + 12, y - 17, 2, 1, iColor); tft.fillRect(x + 12, y - 18, 3, 1, iColor); tft.fillRect(x + 13, y - 19, 3, 1, iColor); xPos += 19; } void YTaille2(int x, int y, int iColor) // Largeur 38. { tft.fillRect(x + 0, y - 38, 4, 2, iColor); tft.fillRect(x + 2, y - 36, 4, 2, iColor); tft.fillRect(x + 4, y - 34, 4, 4, iColor); tft.fillRect(x + 6, y - 30, 4, 4, iColor); tft.fillRect(x + 8, y - 26, 6, 2, iColor); tft.fillRect(x + 10, y - 24, 4, 4, iColor); tft.fillRect(x + 12, y - 20, 8, 4, iColor); tft.fillRect(x + 14, y - 16, 4, 18, iColor); tft.fillRect(x + 18, y - 24, 4, 4, iColor); tft.fillRect(x + 18, y - 26, 6, 2, iColor); tft.fillRect(x + 20, y - 28, 6, 2, iColor); tft.fillRect(x + 22, y - 30, 4, 2, iColor); tft.fillRect(x + 22, y - 32, 6, 2, iColor); tft.fillRect(x + 24, y - 34, 4, 2, iColor); tft.fillRect(x + 24, y - 36, 6, 2, iColor); tft.fillRect(x + 26, y - 38, 6, 2, iColor); xPos += 38; } // // : - : // : Z : // : - : // void ZTaille1(int x, int y, int iColor) // Largeur 18. { tft.fillRect(x + 0, y - 19, 15, 2, iColor); tft.fillRect(x + 0, y - 1, 15, 2, iColor); tft.fillRect(x + 1, y - 2, 2, 1, iColor); tft.fillRect(x + 2, y - 3, 2, 1, iColor); tft.fillRect(x + 2, y - 4, 3, 1, iColor); tft.fillRect(x + 3, y - 5, 3, 1, iColor); tft.fillRect(x + 4, y - 6, 2, 1, iColor); tft.fillRect(x + 5, y - 7, 2, 1, iColor); tft.fillRect(x + 6, y - 8, 2, 1, iColor); tft.fillRect(x + 6, y - 9, 3, 1, iColor); tft.fillRect(x + 7, y - 10, 3, 1, iColor); tft.fillRect(x + 8, y - 11, 2, 1, iColor); tft.fillRect(x + 9, y - 12, 2, 1, iColor); tft.fillRect(x + 9, y - 13, 3, 1, iColor); tft.fillRect(x + 10, y - 14, 3, 1, iColor); tft.fillRect(x + 11, y - 15, 2, 1, iColor); tft.fillRect(x + 12, y - 16, 2, 1, iColor); tft.fillRect(x + 13, y - 17, 2, 1, iColor); xPos += 18; } void ZTaille2(int x, int y, int iColor) // Largeur 36. { tft.fillRect(x + 0, y - 38, 30, 4, iColor); tft.fillRect(x + 0, y - 2, 30, 4, iColor); tft.fillRect(x + 2, y - 4, 4, 2, iColor); tft.fillRect(x + 4, y - 6, 4, 2, iColor); tft.fillRect(x + 4, y - 8, 6, 2, iColor); tft.fillRect(x + 6, y - 10, 6, 2, iColor); tft.fillRect(x + 8, y - 12, 4, 2, iColor); tft.fillRect(x + 10, y - 14, 4, 2, iColor); tft.fillRect(x + 12, y - 16, 4, 2, iColor); tft.fillRect(x + 12, y - 18, 6, 2, iColor); tft.fillRect(x + 14, y - 20, 6, 2, iColor); tft.fillRect(x + 16, y - 22, 4, 2, iColor); tft.fillRect(x + 18, y - 24, 4, 2, iColor); tft.fillRect(x + 18, y - 26, 6, 2, iColor); tft.fillRect(x + 20, y - 28, 6, 2, iColor); tft.fillRect(x + 22, y - 30, 4, 2, iColor); tft.fillRect(x + 24, y - 32, 4, 2, iColor); tft.fillRect(x + 26, y - 34, 4, 2, iColor); xPos += 36; } // // : ------------ : // : LES CHIFFRES : // : ------------ : // void LedTaille1Vierge(int x, int y) { tft.fillRect(x + 2, y - 26, 11, 1, FONDLED); // A tft.fillRect(x + 1, y - 25, 13, 1, FONDLED); tft.fillRect(x + 2, y - 24, 11, 1, FONDLED); tft.fillRect(x + 12, y - 22, 1, 7, FONDLED); // B tft.fillRect(x + 13, y - 23, 1, 9, FONDLED); tft.fillRect(x + 14, y - 24, 1, 11, FONDLED); tft.fillRect(x + 12, y - 10, 1, 7, FONDLED); // C tft.fillRect(x + 13, y - 11, 1, 9, FONDLED); tft.fillRect(x + 14, y - 12, 1, 11, FONDLED); tft.fillRect(x + 2, y - 0, 11, 1, FONDLED); // D tft.fillRect(x + 1, y - 1, 13, 1, FONDLED); tft.fillRect(x + 2, y - 2, 11, 1, FONDLED); tft.fillRect(x + 0, y - 12, 1, 11, FONDLED); // E tft.fillRect(x + 1, y - 11, 1, 9, FONDLED); tft.fillRect(x + 2, y - 10, 1, 7, FONDLED); tft.fillRect(x + 0, y - 24, 1, 11, FONDLED); // F tft.fillRect(x + 1, y - 23, 1, 9, FONDLED); tft.fillRect(x + 2, y - 22, 1, 7, FONDLED); tft.fillRect(x + 2, y - 14, 11, 1, FONDLED); // G tft.fillRect(x + 1, y - 13, 13, 1, FONDLED); tft.fillRect(x + 2, y - 12, 11, 1, FONDLED); } void LedTaille2Vierge(int x, int y) { tft.fillRect(x + 4, y - 52, 22, 2, FONDLED); // A tft.fillRect(x + 2, y - 50, 26, 2, FONDLED); tft.fillRect(x + 4, y - 48, 22, 2, FONDLED); tft.fillRect(x + 24, y - 44, 2, 14, FONDLED); // B tft.fillRect(x + 26, y - 46, 2, 18, FONDLED); tft.fillRect(x + 28, y - 48, 2, 22, FONDLED); tft.fillRect(x + 24, y - 20, 2, 14, FONDLED); // C tft.fillRect(x + 26, y - 22, 2, 18, FONDLED); tft.fillRect(x + 28, y - 24, 2, 22, FONDLED); tft.fillRect(x + 4, y - 0, 22, 2, FONDLED); // D tft.fillRect(x + 2, y - 2, 26, 2, FONDLED); tft.fillRect(x + 4, y - 4, 22, 2, FONDLED); tft.fillRect(x + 0, y - 24, 2, 22, FONDLED); // E tft.fillRect(x + 2, y - 22, 2, 18, FONDLED); tft.fillRect(x + 4, y - 20, 2, 14, FONDLED); tft.fillRect(x + 0, y - 48, 2, 22, FONDLED); // F tft.fillRect(x + 2, y - 46, 2, 18, FONDLED); tft.fillRect(x + 4, y - 44, 2, 14, FONDLED); tft.fillRect(x + 4, y - 28, 22, 2, FONDLED); // G tft.fillRect(x + 2, y - 26, 26, 2, FONDLED); tft.fillRect(x + 4, y - 24, 22, 2, FONDLED); } void LedTaille3Vierge(int x, int y) { tft.fillRect(x + 8, y - 104, 44, 4, FONDLED); // A tft.fillRect(x + 4, y - 100, 52, 4, FONDLED); tft.fillRect(x + 8, y - 96, 44, 4, FONDLED); tft.fillRect(x + 48, y - 88, 4, 28, FONDLED); // B tft.fillRect(x + 52, y - 92, 4, 36, FONDLED); tft.fillRect(x + 56, y - 96, 4, 44, FONDLED); tft.fillRect(x + 48, y - 40, 4, 28, FONDLED); // C tft.fillRect(x + 52, y - 44, 4, 36, FONDLED); tft.fillRect(x + 56, y - 48, 4, 44, FONDLED); tft.fillRect(x + 8, y - 0, 44, 4, FONDLED); // D tft.fillRect(x + 4, y - 4, 52, 4, FONDLED); tft.fillRect(x + 8, y - 8, 44, 4, FONDLED); tft.fillRect(x + 0, y - 48, 4, 44, FONDLED); // E tft.fillRect(x + 4, y - 44, 4, 36, FONDLED); tft.fillRect(x + 8, y - 40, 4, 28, FONDLED); tft.fillRect(x + 0, y - 96, 4, 44, FONDLED); // F tft.fillRect(x + 4, y - 92, 4, 36, FONDLED); tft.fillRect(x + 8, y - 88, 4, 28, FONDLED); tft.fillRect(x + 8, y - 56, 44, 4, FONDLED); // G tft.fillRect(x + 4, y - 52, 52, 4, FONDLED); tft.fillRect(x + 8, y - 48, 44, 4, FONDLED); } // // : --- : // : 1 : // : --- : // void Led1Taille2(int x, int y, int iColor) { tft.fillRect(x + 4, y - 52, 22, 2, FONDLED); // A tft.fillRect(x + 2, y - 50, 26, 2, FONDLED); tft.fillRect(x + 4, y - 48, 22, 2, FONDLED); tft.fillRect(x + 24, y - 44, 2, 14, iColor); // B tft.fillRect(x + 26, y - 46, 2, 18, iColor); tft.fillRect(x + 28, y - 48, 2, 22, iColor); tft.fillRect(x + 24, y - 20, 2, 14, iColor); // C tft.fillRect(x + 26, y - 22, 2, 18, iColor); tft.fillRect(x + 28, y - 24, 1, 22, iColor); tft.fillRect(x + 4, y - 0, 22, 2, FONDLED); // D tft.fillRect(x + 2, y - 2, 26, 2, FONDLED); tft.fillRect(x + 4, y - 4, 22, 2, FONDLED); tft.fillRect(x + 0, y - 24, 2, 22, FONDLED); // E tft.fillRect(x + 2, y - 22, 2, 18, FONDLED); tft.fillRect(x + 4, y - 20, 2, 14, FONDLED); tft.fillRect(x + 0, y - 48, 2, 22, FONDLED); // F tft.fillRect(x + 2, y - 46, 2, 18, FONDLED); tft.fillRect(x + 4, y - 44, 2, 14, FONDLED); tft.fillRect(x + 4, y - 28, 22, 2, FONDLED); // G tft.fillRect(x + 2, y - 26, 26, 2, FONDLED); tft.fillRect(x + 4, y - 24, 22, 2, FONDLED); } void Led1Taille3(int x, int y, int iColor) { tft.fillRect(x + 8, y - 104, 44, 4, FONDLED); // A tft.fillRect(x + 4, y - 100, 52, 4, FONDLED); tft.fillRect(x + 8, y - 96, 44, 4, FONDLED); tft.fillRect(x + 48, y - 88, 4, 28, iColor); // B tft.fillRect(x + 52, y - 92, 4, 36, iColor); tft.fillRect(x + 56, y - 96, 4, 44, iColor); tft.fillRect(x + 48, y - 40, 4, 28, iColor); // C tft.fillRect(x + 52, y - 44, 4, 36, iColor); tft.fillRect(x + 56, y - 48, 4, 44, iColor); tft.fillRect(x + 8, y - 0, 44, 4, FONDLED); // D tft.fillRect(x + 4, y - 4, 52, 4, FONDLED); tft.fillRect(x + 8, y - 8, 44, 4, FONDLED); tft.fillRect(x + 0, y - 48, 4, 44, FONDLED); // E tft.fillRect(x + 4, y - 44, 4, 36, FONDLED); tft.fillRect(x + 8, y - 40, 4, 28, FONDLED); tft.fillRect(x + 0, y - 96, 4, 44, FONDLED); // F tft.fillRect(x + 4, y - 92, 4, 36, FONDLED); tft.fillRect(x + 8, y - 88, 4, 28, FONDLED); tft.fillRect(x + 8, y - 56, 44, 4, FONDLED); // G tft.fillRect(x + 4, y - 52, 52, 4, FONDLED); tft.fillRect(x + 8, y - 48, 44, 4, FONDLED); } // // : --- : // : 2 : // : --- : // void Led2Taille2(int x, int y, int iColor) { tft.fillRect(x + 4, y - 52, 22, 2, iColor); // A tft.fillRect(x + 2, y - 50, 26, 2, iColor); tft.fillRect(x + 4, y - 48, 22, 2, iColor); tft.fillRect(x + 24, y - 44, 2, 14, iColor); // B tft.fillRect(x + 26, y - 46, 2, 18, iColor); tft.fillRect(x + 28, y - 48, 2, 22, iColor); tft.fillRect(x + 24, y - 20, 2, 14, FONDLED); // C tft.fillRect(x + 26, y - 22, 2, 18, FONDLED); tft.fillRect(x + 28, y - 24, 2, 22, FONDLED); tft.fillRect(x + 4, y - 0, 22, 2, iColor); // D tft.fillRect(x + 2, y - 2, 26, 2, iColor); tft.fillRect(x + 4, y - 4, 22, 2, iColor); tft.fillRect(x + 0, y - 24, 2, 22, iColor); // E tft.fillRect(x + 2, y - 22, 2, 18, iColor); tft.fillRect(x + 4, y - 20, 2, 14, iColor); tft.fillRect(x + 0, y - 48, 2, 22, FONDLED); // F tft.fillRect(x + 2, y - 46, 2, 18, FONDLED); tft.fillRect(x + 4, y - 44, 2, 14, FONDLED); tft.fillRect(x + 4, y - 28, 22, 2, iColor); // G tft.fillRect(x + 2, y - 26, 26, 2, iColor); tft.fillRect(x + 4, y - 24, 22, 2, iColor); } void Led2Taille3(int x, int y, int iColor) { tft.fillRect(x + 8, y - 104, 44, 4, iColor); // A tft.fillRect(x + 4, y - 100, 52, 4, iColor); tft.fillRect(x + 8, y - 96, 44, 4, iColor); tft.fillRect(x + 48, y - 88, 4, 28, iColor); // B tft.fillRect(x + 52, y - 92, 4, 36, iColor); tft.fillRect(x + 56, y - 96, 4, 44, iColor); tft.fillRect(x + 48, y - 40, 4, 28, FONDLED); // C tft.fillRect(x + 52, y - 44, 4, 36, FONDLED); tft.fillRect(x + 56, y - 48, 4, 44, FONDLED); tft.fillRect(x + 8, y - 0, 44, 4, iColor); // D tft.fillRect(x + 4, y - 4, 52, 4, iColor); tft.fillRect(x + 8, y - 8, 44, 4, iColor); tft.fillRect(x + 0, y - 48, 4, 44, iColor); // E tft.fillRect(x + 4, y - 44, 4, 36, iColor); tft.fillRect(x + 8, y - 40, 4, 28, iColor); tft.fillRect(x + 0, y - 96, 4, 44, FONDLED); // F tft.fillRect(x + 4, y - 92, 4, 36, FONDLED); tft.fillRect(x + 8, y - 88, 4, 28, FONDLED); tft.fillRect(x + 8, y - 56, 44, 4, iColor); // G tft.fillRect(x + 4, y - 52, 52, 4, iColor); tft.fillRect(x + 8, y - 48, 44, 4, iColor); } // // : --- : // : 3 : // : --- : // void Led3Taille2(int x, int y, int iColor) { tft.fillRect(x + 4, y - 52, 22, 2, iColor); // A tft.fillRect(x + 2, y - 50, 26, 2, iColor); tft.fillRect(x + 4, y - 48, 22, 2, iColor); tft.fillRect(x + 24, y - 44, 2, 14, iColor); // B tft.fillRect(x + 26, y - 46, 2, 18, iColor); tft.fillRect(x + 28, y - 48, 2, 22, iColor); tft.fillRect(x + 24, y - 20, 2, 14, iColor); // C tft.fillRect(x + 26, y - 22, 2, 18, iColor); tft.fillRect(x + 28, y - 24, 2, 22, iColor); tft.fillRect(x + 4, y - 0, 22, 2, iColor); // D tft.fillRect(x + 2, y - 2, 26, 2, iColor); tft.fillRect(x + 4, y - 4, 22, 2, iColor); tft.fillRect(x + 0, y - 24, 2, 22, FONDLED); // E tft.fillRect(x + 2, y - 22, 2, 18, FONDLED); tft.fillRect(x + 4, y - 20, 2, 14, FONDLED); tft.fillRect(x + 0, y - 48, 2, 22, FONDLED); // F tft.fillRect(x + 2, y - 46, 2, 18, FONDLED); tft.fillRect(x + 4, y - 44, 2, 14, FONDLED); tft.fillRect(x + 4, y - 28, 22, 2, iColor); // G tft.fillRect(x + 2, y - 26, 26, 2, iColor); tft.fillRect(x + 4, y - 24, 22, 2, iColor); } void Led3Taille3(int x, int y, int iColor) { tft.fillRect(x + 8, y - 104, 44, 4, iColor); // A tft.fillRect(x + 4, y - 100, 52, 4, iColor); tft.fillRect(x + 8, y - 96, 44, 4, iColor); tft.fillRect(x + 48, y - 88, 4, 28, iColor); // B tft.fillRect(x + 52, y - 92, 4, 36, iColor); tft.fillRect(x + 56, y - 96, 4, 44, iColor); tft.fillRect(x + 48, y - 40, 4, 28, iColor); // C tft.fillRect(x + 52, y - 44, 4, 36, iColor); tft.fillRect(x + 56, y - 48, 4, 44, iColor); tft.fillRect(x + 8, y - 0, 44, 4, iColor); // D tft.fillRect(x + 4, y - 4, 52, 4, iColor); tft.fillRect(x + 8, y - 8, 44, 4, iColor); tft.fillRect(x + 0, y - 48, 4, 44, FONDLED); // E tft.fillRect(x + 4, y - 44, 4, 36, FONDLED); tft.fillRect(x + 8, y - 40, 4, 28, FONDLED); tft.fillRect(x + 0, y - 96, 4, 44, FONDLED); // F tft.fillRect(x + 4, y - 92, 4, 36, FONDLED); tft.fillRect(x + 8, y - 88, 4, 28, FONDLED); tft.fillRect(x + 8, y - 56, 44, 4, iColor); // G tft.fillRect(x + 4, y - 52, 52, 4, iColor); tft.fillRect(x + 8, y - 48, 44, 4, iColor); } // // : --- : // : 4 : // : --- : // void Led4Taille2(int x, int y, int iColor) { tft.fillRect(x + 4, y - 52, 22, 2, FONDLED); // A tft.fillRect(x + 2, y - 50, 26, 2, FONDLED); tft.fillRect(x + 4, y - 48, 22, 2, FONDLED); tft.fillRect(x + 24, y - 44, 2, 14, iColor); // B tft.fillRect(x + 26, y - 46, 2, 18, iColor); tft.fillRect(x + 28, y - 48, 2, 22, iColor); tft.fillRect(x + 24, y - 20, 2, 14, iColor); // C tft.fillRect(x + 26, y - 22, 2, 18, iColor); tft.fillRect(x + 28, y - 24, 1, 22, iColor); tft.fillRect(x + 4, y - 0, 22, 2, FONDLED); // D tft.fillRect(x + 2, y - 2, 26, 2, FONDLED); tft.fillRect(x + 4, y - 4, 22, 2, FONDLED); tft.fillRect(x + 0, y - 24, 2, 22, FONDLED); // E tft.fillRect(x + 2, y - 22, 2, 18, FONDLED); tft.fillRect(x + 4, y - 20, 2, 14, FONDLED); tft.fillRect(x + 0, y - 48, 2, 22, iColor); // F tft.fillRect(x + 2, y - 46, 2, 18, iColor); tft.fillRect(x + 4, y - 44, 2, 14, iColor); tft.fillRect(x + 4, y - 28, 22, 2, iColor); // G tft.fillRect(x + 2, y - 26, 26, 2, iColor); tft.fillRect(x + 4, y - 24, 22, 2, iColor); } void Led4Taille3(int x, int y, int iColor) { tft.fillRect(x + 8, y - 104, 44, 4, FONDLED); // A tft.fillRect(x + 4, y - 100, 52, 4, FONDLED); tft.fillRect(x + 8, y - 96, 44, 4, FONDLED); tft.fillRect(x + 48, y - 88, 4, 28, iColor); // B tft.fillRect(x + 52, y - 92, 4, 36, iColor); tft.fillRect(x + 56, y - 96, 4, 44, iColor); tft.fillRect(x + 48, y - 40, 4, 28, iColor); // C tft.fillRect(x + 52, y - 44, 4, 36, iColor); tft.fillRect(x + 56, y - 48, 4, 44, iColor); tft.fillRect(x + 8, y - 0, 44, 4, FONDLED); // D tft.fillRect(x + 4, y - 4, 52, 4, FONDLED); tft.fillRect(x + 8, y - 8, 44, 4, FONDLED); tft.fillRect(x + 0, y - 48, 4, 44, FONDLED); // E tft.fillRect(x + 4, y - 44, 4, 36, FONDLED); tft.fillRect(x + 8, y - 40, 4, 28, FONDLED); tft.fillRect(x + 0, y - 96, 4, 44, iColor); // F tft.fillRect(x + 4, y - 92, 4, 36, iColor); tft.fillRect(x + 8, y - 88, 4, 28, iColor); tft.fillRect(x + 8, y - 56, 44, 4, iColor); // G tft.fillRect(x + 4, y - 52, 52, 4, iColor); tft.fillRect(x + 8, y - 48, 44, 4, iColor); } // // : --- : // : 5 : // : --- : // void Led5Taille2(int x, int y, int iColor) { tft.fillRect(x + 4, y - 52, 22, 2, iColor); // A tft.fillRect(x + 2, y - 50, 26, 2, iColor); tft.fillRect(x + 4, y - 48, 22, 2, iColor); tft.fillRect(x + 24, y - 44, 2, 14, FONDLED); // B tft.fillRect(x + 26, y - 46, 2, 18, FONDLED); tft.fillRect(x + 28, y - 48, 2, 22, FONDLED); tft.fillRect(x + 24, y - 20, 2, 14, iColor); // C tft.fillRect(x + 26, y - 22, 2, 18, iColor); tft.fillRect(x + 28, y - 24, 2, 22, iColor); tft.fillRect(x + 4, y - 0, 22, 2, iColor); // D tft.fillRect(x + 2, y - 2, 26, 2, iColor); tft.fillRect(x + 4, y - 4, 22, 2, iColor); tft.fillRect(x + 0, y - 24, 2, 22, FONDLED); // E tft.fillRect(x + 2, y - 22, 2, 18, FONDLED); tft.fillRect(x + 4, y - 20, 2, 14, FONDLED); tft.fillRect(x + 0, y - 48, 2, 22, iColor); // F tft.fillRect(x + 2, y - 46, 2, 18, iColor); tft.fillRect(x + 4, y - 44, 2, 14, iColor); tft.fillRect(x + 4, y - 28, 22, 2, iColor); // G tft.fillRect(x + 2, y - 26, 26, 2, iColor); tft.fillRect(x + 4, y - 24, 22, 2, iColor); } void Led5Taille3(int x, int y, int iColor) { tft.fillRect(x + 8, y - 104, 44, 4, iColor); // A tft.fillRect(x + 4, y - 100, 52, 4, iColor); tft.fillRect(x + 8, y - 96, 44, 4, iColor); tft.fillRect(x + 48, y - 88, 4, 28, FONDLED); // B tft.fillRect(x + 52, y - 92, 4, 36, FONDLED); tft.fillRect(x + 56, y - 96, 4, 44, FONDLED); tft.fillRect(x + 48, y - 40, 4, 28, iColor); // C tft.fillRect(x + 52, y - 44, 4, 36, iColor); tft.fillRect(x + 56, y - 48, 4, 44, iColor); tft.fillRect(x + 8, y - 0, 44, 4, iColor); // D tft.fillRect(x + 4, y - 4, 52, 4, iColor); tft.fillRect(x + 8, y - 8, 44, 4, iColor); tft.fillRect(x + 0, y - 48, 4, 44, FONDLED); // E tft.fillRect(x + 4, y - 44, 4, 36, FONDLED); tft.fillRect(x + 8, y - 40, 4, 28, FONDLED); tft.fillRect(x + 0, y - 96, 4, 44, iColor); // F tft.fillRect(x + 4, y - 92, 4, 36, iColor); tft.fillRect(x + 8, y - 88, 4, 28, iColor); tft.fillRect(x + 8, y - 56, 44, 4, iColor); // G tft.fillRect(x + 4, y - 52, 52, 4, iColor); tft.fillRect(x + 8, y - 48, 44, 4, iColor); } // // : --- : // : 6 : // : --- : // void Led6Taille2(int x, int y, int iColor) { tft.fillRect(x + 4, y - 52, 22, 2, iColor); // A tft.fillRect(x + 2, y - 50, 26, 2, iColor); tft.fillRect(x + 4, y - 48, 22, 2, iColor); tft.fillRect(x + 24, y - 44, 2, 14, FONDLED); // B tft.fillRect(x + 26, y - 46, 2, 28, FONDLED); tft.fillRect(x + 28, y - 48, 2, 22, FONDLED); tft.fillRect(x + 24, y - 20, 2, 14, iColor); // C tft.fillRect(x + 26, y - 22, 2, 18, iColor); tft.fillRect(x + 28, y - 24, 2, 22, iColor); tft.fillRect(x + 4, y - 0, 22, 2, iColor); // D tft.fillRect(x + 2, y - 2, 26, 2, iColor); tft.fillRect(x + 4, y - 4, 22, 2, iColor); tft.fillRect(x + 0, y - 24, 2, 22, iColor); // E tft.fillRect(x + 2, y - 22, 2, 18, iColor); tft.fillRect(x + 4, y - 20, 2, 14, iColor); tft.fillRect(x + 0, y - 48, 2, 22, iColor); // F tft.fillRect(x + 2, y - 46, 2, 18, iColor); tft.fillRect(x + 4, y - 44, 2, 14, iColor); tft.fillRect(x + 4, y - 28, 22, 2, iColor); // G tft.fillRect(x + 2, y - 26, 26, 2, iColor); tft.fillRect(x + 4, y - 24, 22, 2, iColor); } void Led6Taille3(int x, int y, int iColor) { tft.fillRect(x + 8, y - 104, 44, 4, iColor); // A tft.fillRect(x + 4, y - 100, 52, 4, iColor); tft.fillRect(x + 8, y - 96, 44, 4, iColor); tft.fillRect(x + 48, y - 88, 4, 28, FONDLED); // B tft.fillRect(x + 52, y - 92, 4, 36, FONDLED); tft.fillRect(x + 56, y - 96, 4, 44, FONDLED); tft.fillRect(x + 48, y - 40, 4, 28, iColor); // C tft.fillRect(x + 52, y - 44, 4, 36, iColor); tft.fillRect(x + 56, y - 48, 4, 44, iColor); tft.fillRect(x + 8, y - 0, 44, 4, iColor); // D tft.fillRect(x + 4, y - 4, 52, 4, iColor); tft.fillRect(x + 8, y - 8, 44, 4, iColor); tft.fillRect(x + 0, y - 48, 4, 44, iColor); // E tft.fillRect(x + 4, y - 44, 4, 36, iColor); tft.fillRect(x + 8, y - 40, 4, 28, iColor); tft.fillRect(x + 0, y - 96, 4, 44, iColor); // F tft.fillRect(x + 4, y - 92, 4, 36, iColor); tft.fillRect(x + 8, y - 88, 4, 28, iColor); tft.fillRect(x + 8, y - 56, 44, 4, iColor); // G tft.fillRect(x + 4, y - 52, 52, 4, iColor); tft.fillRect(x + 8, y - 48, 44, 4, iColor); } // // : --- : // : 7 : // : --- : // void Led7Taille2(int x, int y, int iColor) { tft.fillRect(x + 4, y - 52, 22, 2, iColor); // A tft.fillRect(x + 2, y - 50, 26, 2, iColor); tft.fillRect(x + 4, y - 48, 22, 2, iColor); tft.fillRect(x + 24, y - 44, 2, 14, iColor); // B tft.fillRect(x + 26, y - 46, 2, 18, iColor); tft.fillRect(x + 28, y - 48, 2, 22, iColor); tft.fillRect(x + 24, y - 20, 2, 14, iColor); // C tft.fillRect(x + 26, y - 22, 2, 18, iColor); tft.fillRect(x + 28, y - 24, 2, 22, iColor); tft.fillRect(x + 4, y - 0, 22, 2, FONDLED); // D tft.fillRect(x + 2, y - 2, 26, 2, FONDLED); tft.fillRect(x + 4, y - 4, 22, 2, FONDLED); tft.fillRect(x + 0, y - 24, 2, 22, FONDLED); // E tft.fillRect(x + 2, y - 22, 2, 18, FONDLED); tft.fillRect(x + 4, y - 20, 2, 14, FONDLED); tft.fillRect(x + 0, y - 48, 2, 22, FONDLED); // F tft.fillRect(x + 2, y - 46, 2, 18, FONDLED); tft.fillRect(x + 4, y - 44, 2, 14, FONDLED); tft.fillRect(x + 4, y - 28, 22, 2, FONDLED); // G tft.fillRect(x + 2, y - 26, 26, 2, FONDLED); tft.fillRect(x + 4, y - 24, 22, 2, FONDLED); } void Led7Taille3(int x, int y, int iColor) { tft.fillRect(x + 8, y - 104, 44, 4, iColor); // A tft.fillRect(x + 4, y - 100, 52, 4, iColor); tft.fillRect(x + 8, y - 96, 44, 4, iColor); tft.fillRect(x + 48, y - 88, 4, 28, iColor); // B tft.fillRect(x + 52, y - 92, 4, 36, iColor); tft.fillRect(x + 56, y - 96, 4, 44, iColor); tft.fillRect(x + 48, y - 40, 4, 28, iColor); // C tft.fillRect(x + 52, y - 44, 4, 36, iColor); tft.fillRect(x + 56, y - 48, 4, 44, iColor); tft.fillRect(x + 8, y - 0, 44, 4, FONDLED); // D tft.fillRect(x + 4, y - 4, 52, 4, FONDLED); tft.fillRect(x + 8, y - 8, 44, 4, FONDLED); tft.fillRect(x + 0, y - 48, 4, 44, FONDLED); // E tft.fillRect(x + 4, y - 44, 4, 36, FONDLED); tft.fillRect(x + 8, y - 40, 4, 28, FONDLED); tft.fillRect(x + 0, y - 96, 4, 44, FONDLED); // F tft.fillRect(x + 4, y - 92, 4, 36, FONDLED); tft.fillRect(x + 8, y - 88, 4, 28, FONDLED); tft.fillRect(x + 8, y - 56, 44, 4, FONDLED); // G tft.fillRect(x + 4, y - 52, 52, 4, FONDLED); tft.fillRect(x + 8, y - 48, 44, 4, FONDLED); } // // : --- : // : 8 : // : --- : // void Led8Taille2(int x, int y, int iColor) { tft.fillRect(x + 4, y - 52, 22, 2, iColor); // A tft.fillRect(x + 2, y - 50, 26, 2, iColor); tft.fillRect(x + 4, y - 48, 21, 2, iColor); tft.fillRect(x + 24, y - 44, 2, 14, iColor); // B tft.fillRect(x + 26, y - 46, 2, 18, iColor); tft.fillRect(x + 28, y - 48, 2, 22, iColor); tft.fillRect(x + 24, y - 20, 2, 14, iColor); // C tft.fillRect(x + 26, y - 22, 2, 18, iColor); tft.fillRect(x + 28, y - 24, 2, 22, iColor); tft.fillRect(x + 4, y - 0, 22, 2, iColor); // D tft.fillRect(x + 2, y - 2, 26, 2, iColor); tft.fillRect(x + 4, y - 4, 22, 2, iColor); tft.fillRect(x + 0, y - 24, 2, 22, iColor); // E tft.fillRect(x + 2, y - 22, 2, 18, iColor); tft.fillRect(x + 4, y - 20, 2, 14, iColor); tft.fillRect(x + 0, y - 48, 2, 22, iColor); // F tft.fillRect(x + 2, y - 46, 2, 18, iColor); tft.fillRect(x + 4, y - 44, 2, 14, iColor); tft.fillRect(x + 4, y - 28, 22, 2, iColor); // G tft.fillRect(x + 2, y - 26, 26, 2, iColor); tft.fillRect(x + 4, y - 24, 22, 2, iColor); } void Led8Taille3(int x, int y, int iColor) { tft.fillRect(x + 8, y - 104, 44, 4, iColor); // A tft.fillRect(x + 4, y - 100, 52, 4, iColor); tft.fillRect(x + 8, y - 96, 44, 4, iColor); tft.fillRect(x + 48, y - 88, 4, 28, iColor); // B tft.fillRect(x + 52, y - 92, 4, 36, iColor); tft.fillRect(x + 56, y - 96, 4, 44, iColor); tft.fillRect(x + 48, y - 40, 4, 28, iColor); // C tft.fillRect(x + 52, y - 44, 4, 36, iColor); tft.fillRect(x + 56, y - 48, 4, 44, iColor); tft.fillRect(x + 8, y - 0, 44, 4, iColor); // D tft.fillRect(x + 4, y - 4, 52, 4, iColor); tft.fillRect(x + 8, y - 8, 44, 4, iColor); tft.fillRect(x + 0, y - 48, 4, 44, iColor); // E tft.fillRect(x + 4, y - 44, 4, 36, iColor); tft.fillRect(x + 8, y - 40, 4, 28, iColor); tft.fillRect(x + 0, y - 96, 4, 44, iColor); // F tft.fillRect(x + 4, y - 92, 4, 36, iColor); tft.fillRect(x + 8, y - 88, 4, 28, iColor); tft.fillRect(x + 8, y - 56, 44, 4, iColor); // G tft.fillRect(x + 4, y - 52, 52, 4, iColor); tft.fillRect(x + 8, y - 48, 44, 4, iColor); } // // : --- : // : 9 : // : --- : // void Led9Taille2(int x, int y, int iColor) { tft.fillRect(x + 4, y - 52, 22, 2, iColor); // A tft.fillRect(x + 2, y - 50, 26, 2, iColor); tft.fillRect(x + 4, y - 48, 22, 2, iColor); tft.fillRect(x + 24, y - 44, 2, 14, iColor); // B tft.fillRect(x + 26, y - 46, 2, 18, iColor); tft.fillRect(x + 28, y - 48, 2, 22, iColor); tft.fillRect(x + 24, y - 20, 2, 14, iColor); // C tft.fillRect(x + 26, y - 22, 2, 18, iColor); tft.fillRect(x + 28, y - 24, 2, 22, iColor); tft.fillRect(x + 4, y - 0, 22, 2, iColor); // D tft.fillRect(x + 2, y - 2, 26, 2, iColor); tft.fillRect(x + 4, y - 4, 22, 2, iColor); tft.fillRect(x + 0, y - 24, 2, 22, FONDLED); // E tft.fillRect(x + 2, y - 22, 2, 18, FONDLED); tft.fillRect(x + 4, y - 20, 2, 14, FONDLED); tft.fillRect(x + 0, y - 48, 2, 22, iColor); // F tft.fillRect(x + 2, y - 46, 2, 18, iColor); tft.fillRect(x + 4, y - 44, 2, 14, iColor); tft.fillRect(x + 4, y - 28, 22, 2, iColor); // G tft.fillRect(x + 2, y - 26, 26, 2, iColor); tft.fillRect(x + 4, y - 24, 22, 2, iColor); } void Led9Taille3(int x, int y, int iColor) { tft.fillRect(x + 8, y - 104, 44, 4, iColor); // A tft.fillRect(x + 4, y - 100, 52, 4, iColor); tft.fillRect(x + 8, y - 96, 44, 4, iColor); tft.fillRect(x + 48, y - 88, 4, 28, iColor); // B tft.fillRect(x + 52, y - 92, 4, 36, iColor); tft.fillRect(x + 56, y - 96, 4, 44, iColor); tft.fillRect(x + 48, y - 40, 4, 28, iColor); // C tft.fillRect(x + 52, y - 44, 4, 36, iColor); tft.fillRect(x + 56, y - 48, 4, 44, iColor); tft.fillRect(x + 8, y - 0, 44, 4, iColor); // D tft.fillRect(x + 4, y - 4, 52, 4, iColor); tft.fillRect(x + 8, y - 8, 44, 4, iColor); tft.fillRect(x + 0, y - 48, 4, 44, FONDLED); // E tft.fillRect(x + 4, y - 44, 4, 36, FONDLED); tft.fillRect(x + 8, y - 40, 4, 28, FONDLED); tft.fillRect(x + 0, y - 96, 4, 44, iColor); // F tft.fillRect(x + 4, y - 92, 4, 36, iColor); tft.fillRect(x + 8, y - 88, 4, 28, iColor); tft.fillRect(x + 8, y - 56, 44, 4, iColor); // G tft.fillRect(x + 4, y - 52, 52, 4, iColor); tft.fillRect(x + 8, y - 48, 44, 4, iColor); } // // : --- : // : 0 : // : --- : // void Led0Taille2(int x, int y, int iColor) { tft.fillRect(x + 4, y - 52, 22, 2, iColor); // A tft.fillRect(x + 0, y - 50, 26, 2, iColor); tft.fillRect(x + 4, y - 48, 22, 2, iColor); tft.fillRect(x + 24, y - 44, 2, 14, iColor); // B tft.fillRect(x + 26, y - 46, 2, 18, iColor); tft.fillRect(x + 28, y - 48, 2, 22, iColor); tft.fillRect(x + 24, y - 20, 2, 14, iColor); // C tft.fillRect(x + 26, y - 22, 2, 18, iColor); tft.fillRect(x + 28, y - 24, 2, 22, iColor); tft.fillRect(x + 4, y - 0, 22, 2, iColor); // D tft.fillRect(x + 2, y - 2, 26, 2, iColor); tft.fillRect(x + 4, y - 4, 22, 2, iColor); tft.fillRect(x + 0, y - 24, 2, 22, iColor); // E tft.fillRect(x + 2, y - 22, 2, 18, iColor); tft.fillRect(x + 4, y - 20, 2, 14, iColor); tft.fillRect(x + 0, y - 48, 2, 22, iColor); // F tft.fillRect(x + 2, y - 46, 2, 18, iColor); tft.fillRect(x + 4, y - 44, 2, 14, iColor); tft.fillRect(x + 4, y - 28, 22, 2, FONDLED); // G tft.fillRect(x + 2, y - 26, 26, 2, FONDLED); tft.fillRect(x + 4, y - 24, 22, 2, FONDLED); } void Led0Taille3(int x, int y, int iColor) { tft.fillRect(x + 8, y - 104, 44, 4, iColor); // A tft.fillRect(x + 4, y - 100, 52, 4, iColor); tft.fillRect(x + 8, y - 96, 44, 4, iColor); tft.fillRect(x + 48, y - 88, 4, 28, iColor); // B tft.fillRect(x + 52, y - 92, 4, 36, iColor); tft.fillRect(x + 56, y - 96, 4, 44, iColor); tft.fillRect(x + 48, y - 40, 4, 28, iColor); // C tft.fillRect(x + 52, y - 44, 4, 36, iColor); tft.fillRect(x + 56, y - 48, 4, 44, iColor); tft.fillRect(x + 8, y - 0, 44, 4, iColor); // D tft.fillRect(x + 4, y - 4, 52, 4, iColor); tft.fillRect(x + 8, y - 8, 44, 4, iColor); tft.fillRect(x + 0, y - 48, 4, 44, iColor); // E tft.fillRect(x + 4, y - 44, 4, 36, iColor); tft.fillRect(x + 8, y - 40, 4, 28, iColor); tft.fillRect(x + 0, y - 96, 4, 44, iColor); // F tft.fillRect(x + 4, y - 92, 4, 36, iColor); tft.fillRect(x + 8, y - 88, 4, 28, iColor); tft.fillRect(x + 8, y - 56, 44, 4, FONDLED); // G tft.fillRect(x + 4, y - 52, 52, 4, FONDLED); tft.fillRect(x + 8, y - 48, 44, 4, FONDLED); } // // : ------------- : // : Deux points : // : ------------- : // void LedDeuxPointsTaille2(int x, int y, int iColor) { tft.fillRect(x + 12, y - 20, 6, 4, iColor); tft.fillRect(x + 12, y - 34, 6, 4, iColor); } void LedDeuxPointsTaille3(int x, int y, int iColor) { tft.fillRect(x + 24, y - 40, 12, 8, iColor); tft.fillRect(x + 24, y - 68, 12, 8, iColor); } // // : ------------------------------ : // : Affiche l'heure et les minutes : // : ------------------------------ : // // __HH__ __MN__ // void afficheHeureLEDS() { litLaDateEtLHeure(); // Cherche les dizaines et les unites pour les heures if (iHeures >= 10) { iDizainesHeures = (int)iHeures / 10; iUnitesHeures = iHeures - (iDizainesHeures * 10); } else { iDizainesHeures = 0; iUnitesHeures = iHeures; } // Affiche les dizaines et les unites des heures sur les digits idoines __HH__ __MN__ digitalWrite(strobe, LOW); shiftOut(data, clock, LSBFIRST, 0xc2); shiftOut(data, clock, LSBFIRST, cChiffres[iDizainesHeures]); digitalWrite(strobe, HIGH); digitalWrite(strobe, LOW); shiftOut(data, clock, LSBFIRST, 0xc4); shiftOut(data, clock, LSBFIRST, cChiffres[iUnitesHeures]); digitalWrite(strobe, HIGH); // Cherche les dizaines et les unites pour les minutes if (iMinutes >= 10) { iDizainesMinutes = (int)iMinutes / 10; iUnitesMinutes = iMinutes - (iDizainesMinutes * 10); } else { iDizainesMinutes = 0; iUnitesMinutes = iMinutes; } // Affiche les dizaines et les unites des minutes sur les digits idoines __HH__ __MN__ digitalWrite(strobe, LOW); shiftOut(data, clock, LSBFIRST, 0xca); shiftOut(data, clock, LSBFIRST, cChiffres[iDizainesMinutes]); digitalWrite(strobe, HIGH); digitalWrite(strobe, LOW); shiftOut(data, clock, LSBFIRST, 0xcc); shiftOut(data, clock, LSBFIRST, cChiffres[iUnitesMinutes]); digitalWrite(strobe, HIGH); }