ATTENTION :
la bibliothèque présentée ci-avant suppose que la table pour générer les caractères se trouve gravée dans la partie haute de l'EEPROM.
Dans ce but il faut au préalable invoquer le programme :
/* Petit programme pour stocker la police de caractères dans l'EEPROM de l'ATmega328.
Créer le tableau complet fonctionne car la taille reste inférieure à 512 octets.
La table sera placée en haut de l'EEPROM pour laisser tout le bas disponible soit
pour un LOGO, soit pour des textes etc. 1023 - 480 = 543. */
#include <Adafruit_ssd1306syp.h>
#include <EEPROM.h>
// Variables du programme.
byte OCTET, Ligne, Colonne;
int PTR;
byte TABLE_ASCII[480] = {B00000000, B00000000, B00000000, B00000000, B00000000, // ESPACE
B00000000, B00000000, B01001111, B00000000, B00000000, // !
B00000000, B00000011, B00000000, B00000011, B00000000, // "
B00010100, B00111110, B00010100, B00111110, B00010100, // #
B00100100, B00101010, B01111111, B00101010, B00010010, // $
B00100011, B00010011, B00001000, B01100100, B01100010, // %
B00110110, B01001001, B01010101, B00100010, B01010000, // &
B00000000, B00000101, B00000011, B00000000, B00000000, // '
B00000000, B00011100, B00100010, B01000001, B00000000, // (
B00000000, B01000001, B00100010, B00011100, B00000000, // )
B00010100, B00001000, B00111110, B00001000, B00010100, // *
B00001000, B00001000, B00111110, B00001000, B00001000, // +
B00000000, B01010000, B00110000, B00000000, B00000000, // ,
B00001000, B00001000, B00001000, B00001000, B00001000, // -
B00000000, B01100000, B01100000, B00000000, B00000000, // .
B00100000, B00010000, B00001000, B00000100, B00000010, // /
B00111110, B01010001, B01001001, B01000101, B00111110, // 0
B00000000, B01000010, B01111111, B01000000, B00000000, // 1
B01000010, B01100001, B01010001, B01001001, B01000110, // 2
B00100001, B01000001, B01000101, B01001011, B00110001, // 3
B00011000, B00010100, B00010010, B01111111, B00010000, // 4
B00100111, B01000101, B01000101, B01000101, B00111001, // 5
B00111100, B01001010, B01001001, B01001001, B00110000, // 6
B00000001, B01110001, B00001001, B00000101, B00000011, // 7
B00110110, B01001001, B01001001, B01001001, B00110110, // 8
B00000110, B01001001, B01001001, B00101001, B00011110, // 9
B00000000, B00110110, B00110110, B00000000, B00000000, // :
B00000000, B01010110, B00110110, B00000000, B00000000, // ;
B00001000, B00010100, B00100010, B01000001, B00000000, // <
B00010100, B00010100, B00010100, B00010100, B00010100, // =
B00000000, B01000001, B00100010, B00010100, B00001000, // >
B00000010, B00000001, B01010001, B00001001, B00000110, // ?
B00110010, B01001001, B01111001, B01000001, B00111110, // @
B01111100, B00010010, B00010001, B00010010, B01111100, // A
B01111111, B01001001, B01001001, B01001001, B00110110, // B
B00111110, B01000001, B01000001, B01000001, B00100010, // C
B01111111, B01000001, B01000001, B01000001, B00111100, // D
B01111111, B01001001, B01001001, B01001001, B01000001, // E
B01111111, B00001001, B00001001, B00001001, B00000001, // F
B00111110, B01000001, B01001001, B01001001, B01111010, // G
B01111111, B00001000, B00001000, B00001000, B01111111, // H
B00000000, B01000001, B01111111, B01000001, B00000000, // I
B00100000, B01000000, B01000001, B00111111, B00000001, // J
B01111111, B00001000, B00010100, B00100010, B01000001, // K
B01111111, B01000000, B01000000, B01000000, B01000000, // L
B01111111, B00000010, B00001100, B00000010, B01111111, // M
B01111111, B00000100, B00001000, B00010000, B01111111, // N
B00111110, B01000001, B01000001, B01000001, B00111110, // O
B01111111, B00001001, B00001001, B00001001, B00000110, // P
B00111110, B01000001, B01010001, B00100001, B01011110, // Q
B01111111, B00001001, B00011001, B00101001, B01000110, // R
B01000110, B01001001, B01001001, B01001001, B00110001, // S
B00000001, B00000001, B01111111, B00000001, B00000001, // T
B00111111, B01000000, B01000000, B01000000, B00111111, // U
B00011111, B00100000, B01000000, B00100000, B00011111, // V
B00111111, B01000000, B00111000, B01000000, B00111111, // W
B01100011, B00010100, B00001000, B00010100, B01100011, // X
B00000111, B00001000, B01110000, B00001000, B00000111, // Y
B01100001, B01010001, B01001001, B01000101, B01000011, // Z
B00000000, B01111111, B01000001, B01000001, B00000000, // [
B00111000, B01010100, B01010110, B01010101, B00011000, // é >>>>>> Non standard.
B00000000, B01000001, B01000001, B01111111, B00000000, // ]
B00100000, B01010101, B01010110, B01010100, B01111000, // à >>>>>> Non standard.
B10000000, B10000000, B10000000, B10000000, B10000000, // _
B00111000, B01010101, B01010110, B01010100, B00011000, // è >>>>>> Non standard.
B00100000, B01010100, B01010100, B01010100, B01111000, // a
B01111111, B01000100, B01000100, B01000100, B00111000, // b
B00111000, B01000100, B01000100, B01000100, B00101000, // c
B00111000, B01000100, B01000100, B01000100, B01111111, // d
B00111000, B01010100, B01010100, B01010100, B00011000, // e
B00001000, B01111110, B00001001, B00000001, B00000010, // f
B00011000, B10100100, B10100100, B10100100, B01111100, // g
B01111111, B00001000, B00000100, B00000100, B01111000, // h
B00000000, B01000100, B01111101, B01000000, B00000000, // i
B01000000, B10000000, B10000100, B01111101, B00000100, // j
B01111111, B00010000, B00101000, B01000100, B00000000, // k
B00000000, B01000001, B01111111, B01000000, B00000000, // l
B01111100, B00000100, B00011000, B00000100, B01111000, // m
B01111100, B00001000, B00000100, B00000100, B01111000, // n
B00111000, B01000100, B01000100, B01000100, B00111000, // o
B11111100, B00100100, B00100100, B00100100, B00011000, // p
B00011000, B00100100, B00100100, B00100100, B11111100, // q
B01111100, B00001000, B00000100, B00000100, B00001000, // r
B01001000, B01010100, B01010100, B01010100, B00100100, // s
B00000100, B00111111, B01000100, B01000100, B00100000, // t
B00111100, B01000000, B01000000, B00100000, B01111100, // u
B00011100, B00100000, B01000000, B00100000, B00011100, // v
B00111100, B01000000, B00110000, B01000000, B00111100, // w
B01000100, B00101000, B00010000, B00101000, B01000100, // x
B00011100, B10100000, B10100000, B10100000, B01111100, // y
B01000100, B01100100, B01010100, B01001100, B01000100, // z
B00000000, B00001000, B00110110, B01000001, B00000000, // {
B00000000, B00000000, B01111111, B00000000, B00000000, // |
B00000000, B01000001, B00110110, B00001000, B00000000, // }
B11111111, B00010000, B00010000, B00001000, B00011111, // µ >>>>>> Non standard.
B00011100, B10100010, B01100010, B00100010, B00010100 }; // ç >>>> Non standard.
void setup() { }
void loop() {
// ==================== Ecriture des octets dans l'EEPROM. ====================
PTR = 0; // Début de la table en EEPROM : 543 d'où le + à cette valeur ci-dessous;
while (PTR < 480) {EEPROM.write(PTR + 543,TABLE_ASCII[PTR]); PTR++;}
// ==================== Confirmation de la fin du traitement. =================
INFINI: goto INFINI; }