Bienvenue aux nouveaux arrivants sur FantasPic !
- Pensez à lire les règles durant votre visite, il n'y en a pas beaucoup, mais encore faut-il les respecter .
- N’hésitez pas à faire des remarques et/ou suggestions sur le Forum, dans le but de l'améliorer et de rendre vos prochaines visites plus agréables.
- Vous pouvez regarder votre "panneau de l'utilisateur" afin de configurer vos préférences.
- Un passage par "l'utilisation du forum" est recommandé pour connaître les fonctionnalités du forum.
--- L’équipe FantasPic ---
- Pensez à lire les règles durant votre visite, il n'y en a pas beaucoup, mais encore faut-il les respecter .
- N’hésitez pas à faire des remarques et/ou suggestions sur le Forum, dans le but de l'améliorer et de rendre vos prochaines visites plus agréables.
- Vous pouvez regarder votre "panneau de l'utilisateur" afin de configurer vos préférences.
- Un passage par "l'utilisation du forum" est recommandé pour connaître les fonctionnalités du forum.
--- L’équipe FantasPic ---
Modérateur : mazertoc
Écran OLED 128x64(Ssd1306) et Écran OLED 132x64(Ssd1106)
Bonjour Francois et bonjour à tous moins un
Le caractère "trait vertical" est défini comme suit : { 834, 1, 13, 11, 5, -10}, // 0x7C '|'
834 -> index pixels du bitmap
1,13 -> largeur et hauteur enveloppe caractère (pour le caractère espace 0,0 car vide, pas de data)
11 -> déplacement en x avant écriture du prochain caractère (pour le y sans doute soit 0, soit interligne 18)
5 -> offset en x d'écriture des pixels data
-10 -> offset en y d'écriture des pixels data, à partir du bas (sert au centrage vertical selon caractère)
Les index commencent à partir de 0. Les débuts de ligne sont 0, 12, 24, ..., 828, 840.
Donc les données en 834,835 sont 0xFF,0xF8
Cela donne ces pixels :
Autre exemple :
{ 51, 2, 13, 11, 5, -10 }, // 0x28 '('
data 0x5A,0xAA,0xA9,0x40
Des caractères de hauteur 13 dans une font 9x7, étonnant, j'ai peut être pas tout compris, mais bon, c'est dimanche, et je vous le souhaite bon :)
https://learn-adafruit-com.translate.go ... x_tr_hl=fr
Le caractère "trait vertical" est défini comme suit : { 834, 1, 13, 11, 5, -10}, // 0x7C '|'
834 -> index pixels du bitmap
1,13 -> largeur et hauteur enveloppe caractère (pour le caractère espace 0,0 car vide, pas de data)
11 -> déplacement en x avant écriture du prochain caractère (pour le y sans doute soit 0, soit interligne 18)
5 -> offset en x d'écriture des pixels data
-10 -> offset en y d'écriture des pixels data, à partir du bas (sert au centrage vertical selon caractère)
Les index commencent à partir de 0. Les débuts de ligne sont 0, 12, 24, ..., 828, 840.
Donc les données en 834,835 sont 0xFF,0xF8
Cela donne ces pixels :
Code : Tout sélectionner
0xFF * (bit 7)
* (bit 6)
* (bit 5)
* (bit 4)
* (bit 3)
* (bit 2)
* (bit 1)
* (bit 0)
0xF8 * (bit 7)
* (bit 6)
* (bit 5)
* (bit 4)
* (bit 3)
. (bit 2) bits non significatifs car hauteur = 13
. (bit 1)
. (bit 0)
Autre exemple :
{ 51, 2, 13, 11, 5, -10 }, // 0x28 '('
data 0x5A,0xAA,0xA9,0x40
Code : Tout sélectionner
0x5A .*
.*
*.
*.
0xAA *.
*.
*.
*.
0xA9 *.
*.
*.
.*
0x40 .*
Des caractères de hauteur 13 dans une font 9x7, étonnant, j'ai peut être pas tout compris, mais bon, c'est dimanche, et je vous le souhaite bon :)
https://learn-adafruit-com.translate.go ... x_tr_hl=fr
Écran OLED 128x64(Ssd1306) et Écran OLED 132x64(Ssd1106)
Écran OLED 128x64(Ssd1306) et Écran OLED 132x64(Ssd1106)
C'était une blague, tu as raison c'est à peu près la taille des lettres sans jambage, le 'e' c'est 8x8, le 'm' 8x9, donc plus large que haut.
En fait, ce système permet une certaine souplesse et il stocke le moins possible. Le '(' fait 13 de haut, le 'M' fait 11 de large. On stocke le bitmap minimal contenant le caractère et on le place où on veut avec 2 offsets en x et y.
Les noms de ces polices doivent avoir une signification précise pour les décrire succinctement, à voir.
En fait, ce système permet une certaine souplesse et il stocke le moins possible. Le '(' fait 13 de haut, le 'M' fait 11 de large. On stocke le bitmap minimal contenant le caractère et on le place où on veut avec 2 offsets en x et y.
Les noms de ces polices doivent avoir une signification précise pour les décrire succinctement, à voir.
Écran OLED 128x64(Ssd1306) et Écran OLED 132x64(Ssd1106)
Bonsoir satinas, paulfjujo, francois77, et tout le forum,
satinas, effectivement tu as raison, voici la définition exacte.
1) Index du caractère dans le tableau
2) Largeur du caractère (pixels)
3) Hauteur du caractère (pixels)
4) Espace à mettre horizontalement entre chaque caractère (pixels)
5) Distance X du curseur vers le coin supérieur gauche (pixel)
6) Distance Y du curseur vers le coin supérieur gauche (pixel)
Ça veut dire que beaucoup de monde utilise les fonts Arduino(MicoC, C, C++) et savent même pas comment ça fonctionne...
Soit j'utilise ses fonts, soit je fais un programme PC pour remettre le format GFXfont->bitmap en format ASM... Hum... que croyez vous que je vais faire
A+
satinas, effectivement tu as raison, voici la définition exacte.
1) Index du caractère dans le tableau
2) Largeur du caractère (pixels)
3) Hauteur du caractère (pixels)
4) Espace à mettre horizontalement entre chaque caractère (pixels)
5) Distance X du curseur vers le coin supérieur gauche (pixel)
6) Distance Y du curseur vers le coin supérieur gauche (pixel)
Ça veut dire que beaucoup de monde utilise les fonts Arduino(MicoC, C, C++) et savent même pas comment ça fonctionne...
Soit j'utilise ses fonts, soit je fais un programme PC pour remettre le format GFXfont->bitmap en format ASM... Hum... que croyez vous que je vais faire
A+
Écran OLED 128x64(Ssd1306) et Écran OLED 132x64(Ssd1106)
-
francois77
Passionné- Messages : 307
- Enregistré en : avril 2022
Écran OLED 128x64(Ssd1306) et Écran OLED 132x64(Ssd1106)
Écran OLED 128x64(Ssd1306) et Écran OLED 132x64(Ssd1106)
Bonjour satinas, paulfjujo, francois77, et tout le forum,
Si je fais quelque chose, peut être fini en fin de semaine, car écrire un programme prend un certain Temps-x ...
Je vais essayer de le faire pour mode 1 et mode 2, avec un exemple, de plus on pourras inclure par la suite seulement les fonts quand à besoin, ça éviteras de prendre trop de ressource pour les petit microcontrôleur 8 bits.
Pssf.... Ah non seulement ASM.... c'est de la provocation....
A+
francois77 a écrit :Source du message Pour Temps X, si tu fait un programme je suis preneur (excel ou autre)
Si je fais quelque chose, peut être fini en fin de semaine, car écrire un programme prend un certain Temps-x ...
Je vais essayer de le faire pour mode 1 et mode 2, avec un exemple, de plus on pourras inclure par la suite seulement les fonts quand à besoin, ça éviteras de prendre trop de ressource pour les petit microcontrôleur 8 bits.
satinas a écrit :Source du message Trop tard, Temps-x est passé à l'ASMR
Pssf.... Ah non seulement ASM.... c'est de la provocation....
A+
Écran OLED 128x64(Ssd1306) et Écran OLED 132x64(Ssd1106)
-
francois77
Passionné- Messages : 307
- Enregistré en : avril 2022
Bonjour,
un lien interessant
https://jared.geek.nz/2014/jan/custom-f ... lers#files
J'ai enfin compris ce matin le fonctionnement de ce fichier..
Bonne journée a tous
Francois
un lien interessant
https://jared.geek.nz/2014/jan/custom-f ... lers#files
J'ai enfin compris ce matin le fonctionnement de ce fichier..
Bonne journée a tous
Francois
Écran OLED 128x64(Ssd1306) et Écran OLED 132x64(Ssd1106)
- paulfjujo
Expert- Messages : 2597
- Âge : 73
- Enregistré en : juillet 2015
- Localisation : 01800
- Contact :
bonjour ,
un *lien super interessantpour les ASMblistes ... les pro ASM... les Rassembleurs
ou les (ou le) Anti-C qui se reconnaitront...
on y retrouve le petit PIC12F1840 qui demontre toutes ses possibiltés .
* lien recupéré sur un post de Microchip forum
un *lien super interessantpour les ASMblistes ... les pro ASM... les Rassembleurs
ou les (ou le) Anti-C qui se reconnaitront...
on y retrouve le petit PIC12F1840 qui demontre toutes ses possibiltés .
* lien recupéré sur un post de Microchip forum
Retourner vers « Langage ASM »
Qui est en ligne
Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 59 invités