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 ---
Forum général sur l'Assembleur !

Modérateur : mazertoc

Écran OLED 128x64(Ssd1306) et Écran OLED 132x64(Ssd1106)
satinas
Confirmé
Confirmé
Messages : 912
Enregistré en : novembre 2015

#61 Message par satinas » dim. 22 mai 2022 07:41

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 :

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)
paulfjujo
Avatar de l’utilisateur
Expert
Expert
Messages : 2133
Âge : 71
Enregistré en : juillet 2015
Localisation : 01800
Contact :

#62 Message par paulfjujo » dim. 22 mai 2022 12:24

bonjour à tous ,

satinas a écrit :Des caractères de hauteur 13 dans une font 9x7, étonnant, j'ai peut être pas tout compris, mais bon, c'est dimanche..


ce ne serait pas une histoire de "jambage" pour les caracteres en minuscule ?
Aides toi, le ciel ou FantasPic t'aideras

Écran OLED 128x64(Ssd1306) et Écran OLED 132x64(Ssd1106)
satinas
Confirmé
Confirmé
Messages : 912
Enregistré en : novembre 2015

#63 Message par satinas » dim. 22 mai 2022 13:15

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.

Écran OLED 128x64(Ssd1306) et Écran OLED 132x64(Ssd1106)
Temps-x
Avatar de l’utilisateur
Expert
Expert
Messages : 2120
Enregistré en : juillet 2016
Localisation : Terre

#64 Message par Temps-x » dim. 22 mai 2022 16:55

Bonsoir satinas, paulfjujo, francois77, et tout le forum,

:+1: 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... :lol:

Soit j'utilise ses fonts, soit je fais un programme PC pour remettre le format GFXfont->bitmap en format ASM... :roll: Hum... que croyez vous que je vais faire :-D

A+
:roll: Les requins, c'est comme le langage ASM, c'est le sommet de la chaîne alimentaire. :wink:

Écran OLED 128x64(Ssd1306) et Écran OLED 132x64(Ssd1106)
francois77
Débutant
Débutant
Messages : 37
Enregistré en : avril 2022

#65 Message par francois77 » dim. 22 mai 2022 18:05

Bonjour,

La police utilisé fesait partie du ZIP de Temps-X

Bravo à tous pour l'explication de texte

Pour Temps X, si tu fait un programme je suis preneur (excel ou autre)

Cela permettrait d'utiliser un nombre important de police

Cdt,

Francois

Écran OLED 128x64(Ssd1306) et Écran OLED 132x64(Ssd1106)
satinas
Confirmé
Confirmé
Messages : 912
Enregistré en : novembre 2015

#66 Message par satinas » dim. 22 mai 2022 18:14

Trop tard, Temps-x est passé à l'ASMR, ça rapporte beaucoup plus :-)
Autre avantage de ce stockage, il permet des polices à espacement fixe comme celle ci-dessus, et des polices proportionnelles beaucoup plus esthétiques.

Écran OLED 128x64(Ssd1306) et Écran OLED 132x64(Ssd1106)
Temps-x
Avatar de l’utilisateur
Expert
Expert
Messages : 2120
Enregistré en : juillet 2016
Localisation : Terre

#67 Message par Temps-x » lun. 23 mai 2022 02:45

Bonjour satinas, paulfjujo, francois77, et tout le forum,

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.... :-D

==> A+
:roll: Les requins, c'est comme le langage ASM, c'est le sommet de la chaîne alimentaire. :wink:

Écran OLED 128x64(Ssd1306) et Écran OLED 132x64(Ssd1106)
francois77
Débutant
Débutant
Messages : 37
Enregistré en : avril 2022

#68 Message par francois77 » lun. 23 mai 2022 08:32

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

Écran OLED 128x64(Ssd1306) et Écran OLED 132x64(Ssd1106)
paulfjujo
Avatar de l’utilisateur
Expert
Expert
Messages : 2133
Âge : 71
Enregistré en : juillet 2015
Localisation : 01800
Contact :

#69 Message par paulfjujo » mer. 25 mai 2022 08:33

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 .
exit


* lien recupéré sur un post de Microchip forum
Aides toi, le ciel ou FantasPic t'aideras

Écran OLED 128x64(Ssd1306) et Écran OLED 132x64(Ssd1106)
pspic
Passioné
Passioné
Messages : 344
Âge : 75
Enregistré en : septembre 2017
Localisation : 68

#70 Message par pspic » mer. 25 mai 2022 18:35

Bonjour à tous,
Merci Paul pour ce lien, avec tout cela, je suis fournis pour l'hiver ?


Retourner vers « Langage ASM »

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 6 invités