1.
Compléter avec des 1 pour noircir les cases
pictogramme0 pictogramme1 pictogramme2 pictogramme3
1 1 1 1 1 1 1
1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1
1 1 1 1 1 1
1 1 1
1 1
1 1 1 1
pictogramme4 pictogramme5 pictogramme6 pictogramme7
2. Magique : Copier et coller TOUT le codes ci-dessous fonction CGRAM()
void CGRAM(void){
byte pictogramme0[8] = { // Création d’un tableau de 8 octets nommé pictogramme0
0, 0, 0, 0, 4, 6, 7, 7
};
byte pictogramme1[8] = { // Création d’un tableau de 8 octets nommé pictogramme1
0, 0, 0, 0, 0, 0, 0, 17
};
byte pictogramme2[8] = { // Création d’un tableau de 8 octets nommé pictogramme2
7, 13, 15, 15, 15, 15, 31, 31
};
byte pictogramme3[8] = { // Création d’un tableau de 8 octets nommé pictogramme3
30, 31, 31, 31, 16, 30, 0, 0
};
byte pictogramme4[8] = { // Création d’un tableau de 8 octets nommé pictogramme4
3, 1, 0, 0, 0, 0, 0, 0
};
byte pictogramme5[8] = { // Création d’un tableau de 8 octets nommé pictogramme5
31, 31, 31, 31, 15, 6, 2, 3
};
byte pictogramme6[8] = { // Création d’un tableau de 8 octets nommé pictogramme6
31, 30, 30, 28, 24, 16, 16, 24
};
byte pictogramme7[8] = { // Création d’un tableau de 8 octets nommé pictogramme7
24, 8, 0, 0, 0, 0, 0, 0
};
[Link](0, pictogramme0); // Écriture en CGRAM du pictogramme 0
[Link](1, pictogramme1); // Écriture en CGRAM du pictogramme 1
[Link](2, pictogramme2); // Écriture en CGRAM du pictogramme 2
[Link](3, pictogramme3); // Écriture en CGRAM du pictogramme 3
[Link](4, pictogramme4); // Écriture en CGRAM du pictogramme 4
[Link](5, pictogramme5); // Écriture en CGRAM du pictogramme 5
[Link](6, pictogramme6); // Écriture en CGRAM du pictogramme 6
[Link](7, pictogramme7); // Écriture en CGRAM du pictogramme 7
}
Exemple de Jeu : Le dinosaure de Google Chrome
1
1
1
Objectif : Sur un Arduino avec un LCD
3. Ajoutez la fonction CGRAM à cette fonction principale
/* Base de code pour le TP Jouons un peu */
// Bibliothèque de fonctions prédéfinies pour l'écran LCD (non I2C)
#include <LiquidCrystal.h>
// Instancie un objet nommé lcd de classe LiquidCrystal avec son câblage
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
void setup(){
// Câblage carte
pinMode(13,INPUT_PULLUP); // résistance de tirage au niveau haut
[Link](16, 2); // Initialisation du type d'écran 2 lignes par 16 caractères
// Message d'accueil
[Link](16, 0);
[Link]("Jouons un peu !");
[Link](16, 1);
[Link]("Mais pas trop...");
// Défilement du message pour le fun
for (int positionCounter = 0; positionCounter < 32; positionCounter++) {
[Link]();
delay(150);
}
CGRAM(); // Appel de la fonction qui génére les caractères
[Link]();
}
void loop(){
[Link](0, 0); // Curseur en haut à gauche
[Link]((unsigned char)0);// Affichage du pictogramme 0 : la queue
[Link](1); // Affichage du pictogramme 1 : queue et cou
[Link](2); // Affichage du pictogramme 2 : l'œil
[Link](3); // Affichage du pictogramme 3 : la bouche
[Link](0, 1); // Curseur en bas à gauche
[Link](4); // Affichage du pictogramme 4 : la queue
[Link](5); // Affichage du pictogramme 5 : patte guauche
[Link](6); // Affichage du pictogramme 6 : patte droite
[Link](7); // Affichage du pictogramme 7 : le bras
[Link](9, 1);
[Link](243); // Affichage du caractère prédéfini le cactus (Tinkercad)
}
// Coller ci-dessous la fonction CGRAM
4. Caractères déjà éxistants dans le (véritable) composant LCD
fonction principale
CD (non I2C)
avec son câblage
u niveau haut
nes par 16 caractères 3. Deux caractères existants dans Tinkercad pour les cactu
[Link](221); // Affichage du caractère prédéfini cactus n°1 (Tinkercad)
itionCounter++) {
[Link](243); // Affichage du caractère prédéfini cactus n°2 (Tinkercad)
me 0 : la queue
ueue et cou
patte guauche
actus (Tinkercad)
composant LCD
kercad pour les cactus
tus n°1 (Tinkercad)
ctus n°2 (Tinkercad)
0 1 2 3 4 5 6
7 8 9 10 11 12 13 14
15 16 17 18 19 20 21 22
0 1 2 3 4 5 6
23 24 25 26 27 28 29 30
7 8 9 10 11 12 13 14
0 1 2 3 4 5 6
31 0 1 2 3 4 5 6
15 16 17 18
0 1 2 3 4 5 6
7 8 9 10 11 12 13 14
7 8 9 10 11 12 13 14
7 8 9 10 11 12 13 14
15 16 17 18 19 20 21 22
15 16 17 18 19 20 21 22
15 16 17 18 19 20 21 22
23 24 25 26
23 24 25 26 27 28 29 30
23 24 25 26
31 0 1 2 3 4 5 6
7 8 9 10 11 12 13 14
15 16 17 18 19 20 21 22
23 24 25 26 27 28 29 30
31