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 : Jérémy
Fonctionnement des "FONT" sur écran OLED
Fonctionnement des "FONT" sur écran OLED
Fonctionnement des "FONT" sur écran OLED
-
Jérémy
Administrateur du site- Messages : 2722
- Âge : 44
- Enregistré en : juillet 2015
- Localisation : Dans le sud
- Contact :
Hello Maï,
Je travaillais dessus justement . Le tableau de kerning doit servir a quelques choses , mais je n'arrive pas a comprendre son intérêt et la façon dont il à été créer !
Je vais essayer de me dépatouiller avec le tableau "descriptions"
Je travaillais dessus justement . Le tableau de kerning doit servir a quelques choses , mais je n'arrive pas a comprendre son intérêt et la façon dont il à été créer !
Je vais essayer de me dépatouiller avec le tableau "descriptions"
Fonctionnement des "FONT" sur écran OLED
Fonctionnement des "FONT" sur écran OLED
-
Jérémy
Administrateur du site- Messages : 2722
- Âge : 44
- Enregistré en : juillet 2015
- Localisation : Dans le sud
- Contact :
Oui ma aussi !!
Mais je viens encore de me rendre compte d'un autre problème !
C'est qu'il y a des caractères plus large que les autres ! donc au lieu de devoir transformer 2 X 8octets ; il faut transformer 4 X 8 Octets !! je cherche donc maintenant a faire la fonction pour les grosses lettres , avant d'utiliser les infos a notre disposition pour les aligner comme il faut ! Ca fait travailler les neurones
Mais je viens encore de me rendre compte d'un autre problème !
C'est qu'il y a des caractères plus large que les autres ! donc au lieu de devoir transformer 2 X 8octets ; il faut transformer 4 X 8 Octets !! je cherche donc maintenant a faire la fonction pour les grosses lettres , avant d'utiliser les infos a notre disposition pour les aligner comme il faut ! Ca fait travailler les neurones
Fonctionnement des "FONT" sur écran OLED
Oui c'est pas du 8x16 mais en 8x32 la matrice, commence a faire grand plus que 2 lignes d’écriture sur 128x64 ,
Pour la conversion, cela va, poser un problème, comment déterminer, matrice 8x16 convertie en - > 8x16 et les 16x16 convertie en -> 8x32.
Une Solution ,sortie de la matrice, tout les caractères > 8 et les mettre dans un autre tableau et le traiter avec la conversion 8x16 et la pousser jusqu' a 32
le problème, va ce retrouver aussi cote affichage
Pour la conversion, cela va, poser un problème, comment déterminer, matrice 8x16 convertie en - > 8x16 et les 16x16 convertie en -> 8x32.
Une Solution ,sortie de la matrice, tout les caractères > 8 et les mettre dans un autre tableau et le traiter avec la conversion 8x16 et la pousser jusqu' a 32
le problème, va ce retrouver aussi cote affichage
Modifié en dernier par Anonymous le sam. 21 mai 2016 09:11, modifié 1 fois.
Fonctionnement des "FONT" sur écran OLED
-
Jérémy
Administrateur du site- Messages : 2722
- Âge : 44
- Enregistré en : juillet 2015
- Localisation : Dans le sud
- Contact :
Lol un truc de fou !
Je pense passer par deux fonctions différentes après détection si le caractères a afficher est grand ou petit . ce sera plus simple pour moi !
En gardant la même base de code, et en prenant un chiffre sur deux je n'arrive pas à obtenir l'effet voulus pour le moment .
Un bon casse tête
Je pense passer par deux fonctions différentes après détection si le caractères a afficher est grand ou petit . ce sera plus simple pour moi !
En gardant la même base de code, et en prenant un chiffre sur deux je n'arrive pas à obtenir l'effet voulus pour le moment .
Un bon casse tête
Fonctionnement des "FONT" sur écran OLED
Fonctionnement des "FONT" sur écran OLED
Jérémy a écrit :Lol un truc de fou !
Je pense passer par deux fonctions différentes après détection si le caractères a afficher est grand ou petit . ce sera plus simple pour moi !
En gardant la même base de code, et en prenant un chiffre sur deux je n'arrive pas à obtenir l'effet voulus pour le moment .
Un bon casse tête
Dit moi comment tu fais ce test il y a un petit problème la c'est des données sur 8 bits ?????
Explication ,comment ce fait un appel a des données en ROM EPROM et RAM
On prend notre chiffre 4 lorsque tu dis a ton contrôleur va me chercher les données du chiffre 4 , celui ci (le chiffre4) fait référence a 1 point D'ADRESSE (par exemple le 380) on met ce point dans un pointeur, puis 0n incrémente le pointeur de X positions en récupérant les données
Dans notre cas comment tu vas faire pour lui dire les petits, c'est 16 positions les grands c'est 32
il y a une solution, je te laisse chercher, allez une soustraction, tu sais sur ce que tu aimes pas trop
Fonctionnement des "FONT" sur écran OLED
-
Jérémy
Administrateur du site- Messages : 2722
- Âge : 44
- Enregistré en : juillet 2015
- Localisation : Dans le sud
- Contact :
Dit moi comment tu fais ce test il y a un petit problème la c'est des données sur 8 bits ?????
En utilisant le tableau "description" qui justement dit la largeur de chaque lettre ! ceci afin de les espacées correctement je suppose !
J'ai finis par trouver !!
L'astuce consiste à faire comme ceci .
Je prends pour exemple la lettre "E" sur 9 caractéres de large:
Code : Tout sélectionner
// @704 'E' (9 pixels wide)
0x00, 0x00, //
0xFF, 0x80, // OOOOOOOOO
0x80, 0x00, // O
0x80, 0x00, // O
0x80, 0x00, // O
0x80, 0x00, // O
0xFF, 0x00, // OOOOOOOO
0x80, 0x00, // O
0x80, 0x00, // O
0x80, 0x00, // O
0x80, 0x00, // O
0x80, 0x00, // O
0xFF, 0x80, // OOOOOOOOO
0x00, 0x00, //
0x00, 0x00, //
0x00, 0x00, //
Je fais une première boucle en récupérant les 8 premières données paires(0-2-4-6-8-10-12-14) pour former les 8 premiers segments verticaux.
Puis à la suite de cela,je recupére les 8 données impaires (1.3.5.7.9.11.13.15) pour faire les 8 segments verticaux suivants qui seront collés au 8 premiers.
dans cette première boucle je travaille sur les données du tableau de 704 à 718
Ensuite je pas sur la deuxième ligne et fais la même chose , mais en partant de la 8iéme données jusqu’à la 16iéme données ( du tableau 720 à 736).
Ce qui donne :
Code : Tout sélectionner
//---------------------------------------------------------------------------------
void affichage_Lettre2(){
unsigned int valeur,i,j,k,m,lettre ;
unsigned char tableau[255];
zone_ecran(50,65,1,3);
lettre = 672 ;
k=0;
for (k=0;k<=1;k++){
for (m=0;m<=1;m++){
lettre += m;
for (i=0;i<=7;i++){
for (j=0;j<=7;j++){
valeur += ( (((font16x8[(lettre+(k*15)+(j*2))])>>(7-i)) & (0x01)) << j ) ;
}
OLED_M_data(valeur);
valeur = 0 ;
}
}
}
}
Voila je peux maintenant affiché des lettres/chiffres de 16 données ou 32 données
Qui est en ligne
Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 47 invités