Menu English Ukrainian Russe Accueil

Bibliothèque technique gratuite pour les amateurs et les professionnels Bibliothèque technique gratuite


ENCYCLOPÉDIE DE LA RADIOÉLECTRONIQUE ET DU GÉNIE ÉLECTRIQUE
Bibliothèque gratuite / Schémas des appareils radio-électroniques et électriques

Éditeur de polices bitmap pour écrans LCD graphiques. Encyclopédie de l'électronique radio et de l'électrotechnique

Bibliothèque technique gratuite

Encyclopédie de l'électronique radio et de l'électrotechnique / Concepteur radioamateur

Commentaires sur l'article Commentaires sur l'article

L'auteur propose un programme informatique de sa propre conception, conçu pour créer et éditer des polices pour les LCD graphiques qui sont courantes aujourd'hui.

Depuis quelques années, les radioamateurs utilisent de plus en plus des écrans LCD graphiques dans leurs développements pour afficher des informations. Une caractéristique de la plupart de ces dispositifs est la présence d'un générateur de caractères partiellement ou totalement chargé par un dispositif de commande externe, ou l'absence totale de celui-ci. Dans le premier cas, lors de l'initialisation de l'indicateur, il est nécessaire de charger une police (un ensemble d'images de symboles) dans la mémoire du générateur de caractères. Pour afficher un symbole à l'écran, le programme n'envoie que son code (adresse dans le générateur de caractères) au contrôleur LCD, et l'affichage du symbole à l'écran est assuré par le contrôleur LCD. Dans le second cas, toutes les opérations nécessaires à l'affichage du symbole sur l'écran sont effectuées par le programme du dispositif de commande. Souvent, des procédures prêtes à l'emploi sont disponibles dans les bibliothèques des systèmes de développement de logiciels.

Mais dans les deux cas, des polices externes sont nécessaires. D'une part, c'est bien, car cela permet d'utiliser des jeux de caractères les plus adaptés à la résolution de problèmes spécifiques. Cependant, vous devez soit rechercher les polices nécessaires, soit les créer vous-même. Cela ne veut pas dire que les fichiers de polices pour les écrans LCD graphiques sont rares. Ils sont faciles à trouver sur Internet, mais la police trouvée ne peut pas toujours être utilisée.

Le fait est que différents contrôleurs LCD déploient l'image du personnage dans la matrice de familiarité de différentes manières. Par exemple, le contrôleur KS0107 (KS0108) de l'indicateur WG12864 retourne les octets de l'image verticalement, comme illustré à la fig. 1, et le contrôleur RA6963 indicateur WG240128 - horizontalement (Fig. 2). Dans le premier cas, le caractère R doit être décrit par la séquence d'octets 00H, 00H, 00H, 7FH, 09H, 19H, 29H, 49H, dans le second - 1EH, 11H, 11H, 1EH, 14H, 12H, 11H, 00H . Par conséquent, une police préparée pour un écran LCD avec un balayage horizontal d'octets d'images de caractères s'affichera de manière incorrecte sur les indicateurs de balayage vertical, et vice versa.

Éditeur de polices bitmap pour écrans LCD graphiques
Riz. 1. L'image du personnage dans la matrice de familiarité

Éditeur de polices bitmap pour écrans LCD graphiques
Riz. 2. L'image du personnage dans la matrice de familiarité

Du point de vue de la programmation, une police est un tableau de constantes. Lors du développement de programmes qui affichent des informations sur des écrans LCD, différents langages de programmation sont utilisés avec différentes règles pour décrire ces tableaux. Par exemple, en langage assembleur, les constantes sont spécifiées par les directives db (define byte), et en langage BASIC, par les opérateurs Data. En C, un tableau de constantes peut être spécifié simplement par un ensemble de leurs valeurs. La représentation des nombres hexadécimaux est également différente. Différents langages de programmation utilisent, par exemple, les formats 0xNN, &hNN, $NN, NNH, où NN sont des chiffres hexadécimaux.

Compte tenu de ce qui précède, nous pouvons conclure que trouver un fichier avec une police prête à l'emploi appropriée n'est pas une tâche facile, et étant donné la nécessité éventuelle d'avoir des caractères spécifiques, la tâche devient souvent complètement insoluble. Dans de tels cas, vous devez corriger la police trouvée quelque part ou en développer une nouvelle à partir de zéro. Il est pratique de le faire à l'aide de programmes spécialisés - les soi-disant éditeurs de polices.

Ces éditeurs peuvent être trouvés sur Internet. Leur principal inconvénient (du moins ceux dont traite l'auteur) est leur focalisation étroite. Il semble que le programme ait été développé par un passionné pour résoudre son problème spécifique. Par exemple, un programme produit un fichier de sortie dans un format compris par un seul compilateur de langage de programmation, tandis qu'un autre produit des images de caractères qui ne conviennent qu'à un certain type d'écran LCD. Par conséquent, soit il n'est pas possible de créer la police souhaitée avec leur aide, soit le fichier de sortie doit être corrigé, par exemple à l'aide d'un éditeur de texte, ce qui prend beaucoup de temps et se passe rarement sans erreurs. La capacité de ces programmes à modifier les polices créées par d'autres éditeurs est souvent assez limitée.

Le programme CG-Edit proposé a été développé par l'auteur comme un outil plus polyvalent. Il vous permet de développer des polices nouvelles et correctes créées précédemment (y compris "étrangères") dans les formats les plus couramment utilisés dans la pratique de la radio amateur.

Les tailles de familiarité suivantes sont autorisées (le premier multiplicateur est le nombre de pixels horizontalement, le second - verticalement): 6x8, 8x8, 12x16, 16x16, 16x24, 24x16, 24x24. Vous pouvez concevoir et modifier des polices dans les images positives et négatives, ainsi que changer la direction de l'analyse des octets de manière familière de vertical à horizontal, et vice versa. Les informations de sortie peuvent être optimisées pour être utilisées dans des programmes en langage assembleur dans différentes versions de BASIC et C.

Le programme est conçu pour les ordinateurs personnels exécutant les versions 32 bits et 64 bits de Windows. Il se compose d'un seul fichier exécutable CG-Edit.exe et ne nécessite pas d'installation, est facile à utiliser et possède une interface utilisateur intuitive.

Après le démarrage du programme, une fenêtre s'ouvrira sur l'écran de l'ordinateur, illustrée à la Fig. 3. Dans sa partie supérieure gauche se trouve une zone de sélection du caractère édité sous la forme d'un tableau, dans les cellules desquelles sont placés les caractères de la page de codes Windows-1251. Seuls les caractères avec les codes 20H-0FFH sont affichés, la zone de code de contrôle 0H-1FH est manquante car ils n'ont pas d'équivalent graphique. Tous les caractères principaux du latin, du cyrillique et des chiffres se trouvent en dehors de la zone de code 7FH-0BFH. Cette zone est donc pratique à utiliser pour créer tous les caractères nécessaires à la tâche en cours de résolution au lieu de ceux qui y sont disponibles selon la page de code Windows-1251.

Éditeur de polices bitmap pour écrans LCD graphiques
Riz. 3. Fenêtre du programme sur l'écran de l'ordinateur

Dans la partie droite de la fenêtre, il y a une zone d'édition, dans laquelle la familiarité avec le caractère requis sera affichée, alors que cette zone est vide. En bas à gauche, il y a des boutons à l'écran "Créer un générateur de caractères" et "Importer un générateur de caractères". Le premier d'entre eux met le programme en mode de création d'un nouveau générateur de caractères. Cela ouvre une fenêtre pour entrer les paramètres de la police créée, dans laquelle vous devez sélectionner dans la liste la taille de la familiarité et la direction du balayage des octets dans celle-ci.

Il convient de noter que toutes les tailles de familiarité ne permettent pas les deux sens de balayage des octets. Le fait est que le programme est axé sur la densité maximale de l'emballage de l'information. Après tout, les principaux "consommateurs" des polices créées avec son aide sont des dispositifs à microcontrôleur avec une quantité de mémoire relativement faible.

Sur la fig. 4 on voit qu'avec un balayage horizontal d'un octet dans un espace familier de 6x8 px, seuls six chiffres sont utilement utilisés, et deux chiffres restent superflus. Au total, l'image du personnage occupe huit octets. Avec un balayage vertical (Fig. 5), chaque colonne d'espace de caractère occupe un octet complet, de sorte que seuls six octets sont nécessaires pour l'image du caractère. La différence de deux octets par caractère de police est assez importante, donc dans tous les espaces de caractères où le nombre de colonnes n'est pas un multiple de huit, seul le balayage vertical est autorisé.

Éditeur de polices bitmap pour écrans LCD graphiques
Riz. 4. Balayage horizontal d'un octet dans un espace familier aux dimensions de 6x8 px

Éditeur de polices bitmap pour écrans LCD graphiques
Riz. 5. Balayage vertical d'un octet dans un espace familier aux dimensions de 6x8 px

Après avoir sélectionné les options de police, cliquez sur le bouton d'écran "Créer". Cela ferme la fenêtre de saisie des paramètres et la fenêtre principale prend la forme illustrée à la Fig. 6.

Éditeur de polices bitmap pour écrans LCD graphiques
Riz. 6. Vue de la fenêtre du programme informatique

Le programme crée une image de générateur de caractères vide dans la RAM de l'ordinateur. Il restera vide jusqu'à ce qu'une police y soit chargée à partir d'un fichier existant en appuyant sur le bouton d'écran "Importer un générateur de caractères", ou jusqu'à ce que vous créiez vos propres caractères en appuyant sur le bouton d'écran "Créer un générateur de caractères". Les caractères du champ "Sélection de caractères" ne reflètent pas le contenu réel de l'image du générateur de caractères. Ils restent toujours inchangés et ne servent qu'à l'orientation. Dans la zone d'édition, le programme affiche une image de la familiarité de la taille sélectionnée.

Le symbole du générateur de caractères créé ou modifié, dont la cellule est sélectionnée dans le tableau "Sélection de symboles" (elle y est mise en surbrillance avec un fond rouge), s'affiche dans le champ "Famillité modifiable". Initialement, il s'agit d'un symbole avec le code 20H. Pour passer à un autre symbole, vous devez cliquer sur la cellule de tableau correspondante avec le bouton gauche de la souris. L'inscription au-dessus de la familiarité caractérise les paramètres de la police créée.

Modifiez le contenu de la familiarité en cliquant sur ses pixels avec le bouton gauche de la souris. Chacun de ces clics inverse l'état du pixel. Au bas du champ d'édition se trouvent quatre boutons à l'écran pour le contrôle des pixels de groupe. Cliquer sur l'un d'eux déplace le contenu de la familiarité d'un pixel vers le haut, le bas, la gauche ou la droite à l'intérieur. Appuyer sur le bouton à l'écran "Effacer" efface complètement la familiarité, et appuyer sur le bouton "Retour" restaure le style d'origine du caractère en cours d'édition. Étant donné que les opérations de suppression et de restauration suppriment définitivement les résultats de l'édition d'un symbole, le programme émet des messages d'avertissement appropriés avant leur exécution.

La ligne du bas et la colonne de droite de la familiarité sont mises en évidence avec un fond jaune. Ceci est un rappel que les pixels inclus ne sont pas souhaitables, car ces zones servent de séparateurs pour les caractères adjacents sur l'écran LCD. Cependant, le terme "indésirable" ne signifie pas interdiction. Vous pouvez activer un pixel, ce que vous devez faire en créant des symboles tels que "D" ou "W". Lorsque vous travaillez avec de grands espaces de familiarité, les deux lignes inférieures et les deux colonnes d'extrême droite sont surlignées avec un fond jaune, car pour une bonne perception des grands caractères, il est conseillé d'avoir des écarts accrus entre eux.

Sous la zone d'édition, il y a deux boutons d'écran, avec lesquels vous pouvez soit effacer complètement le générateur de caractères, soit le recoder en changeant la direction des octets de numérisation dans la familiarité. Si vous essayez de supprimer une police dont les modifications n'ont pas été enregistrées, le programme affichera un message d'avertissement.

L'ordre arbitraire de sélection des symboles et leur réédition multiple sont autorisés. Après le premier changement d'état d'un pixel, le caractère de la cellule de sélection correspondante sera mis en surbrillance en gras et agrandi. Cela montre qu'il a été modifié. Tout ce qui est affiché dans la fenêtre du programme pendant l'édition est illustré à la Fig. 7. On peut voir que les symboles "3" et "Щ" ont déjà été édités, maintenant le symbole "Щ" est en cours d'édition et sa "queue" se trouve dans la zone indésirable.

Éditeur de polices bitmap pour écrans LCD graphiques
Riz. 7. Fenêtre du programme en cours d'édition

Si nécessaire, vous pouvez à tout moment modifier le balayage des octets en familiarité de vertical à horizontal, et inversement. Pour ce faire, cliquez sur le bouton d'écran "Modifier l'affichage de la mise à plat". L'opération agit simultanément sur tous les caractères du générateur de caractères. Après son exécution, un message correspondant s'affichera à l'écran et les paramètres de police affichés au-dessus de la familiarité seront modifiés. Il n'est pas possible de modifier la direction de balayage si cela entraîne une augmentation de la taille de l'image de la police.

Quelques mots sur le travail avec des polices négatives. Le concept même d'une police négative est déjà devenu un atavisme, car de nombreux contrôleurs LCD modernes peuvent inverser l'image par eux-mêmes. Néanmoins, le programme a la capacité de créer et de modifier des polices négatives. Il n'y a aucune différence avec l'utilisation d'une police positive. Dans tous les cas, les symboles semblent positifs sur l'écran de l'ordinateur. La transformation de leurs images en images négatives se produit lors du processus d'écriture de la police créée sur le disque de l'ordinateur. Pour l'avenir, nous notons que lors du chargement d'un fichier contenant une police négative pour l'édition, les informations sont entrées dans l'image du générateur de caractères dans la mémoire de l'ordinateur sous une forme inversée (positive) et sont à nouveau inversées lorsqu'elles sont écrites sur le disque.

Après avoir défini les paramètres de police, un autre panneau apparaît dans la fenêtre du programme, intitulé "Fichier de sortie". Il contient des commandes qui vous permettent d'écrire un fichier de générateur de caractères sur le disque au format requis.

Dans la liste déroulante "Format de ligne" (Fig. 8) sélectionnez la structure de la ligne dans le fichier texte de sortie. La séquence hexadécimale séparée par des virgules peut être précédée du mot clé "Data" ou ".Db" ou peut être omise.

Éditeur de polices bitmap pour écrans LCD graphiques
Riz. 8. Liste déroulante "Format de chaîne"

Dans la liste déroulante "Format des nombres" (Fig. 9), sélectionnez la manière de représenter le nombre hexadécimal. Les deux chiffres hexadécimaux NN peuvent être suivis d'un des préfixes de la liste ou du suffixe "h".

Éditeur de polices bitmap pour écrans LCD graphiques
Riz. 9. Liste déroulante "Format des nombres"

En cochant la case "Police négative", vous pouvez créer un fichier avec une telle police.

Pour écrire un fichier sur un disque d'ordinateur, cliquez sur le bouton d'écran "Enregistrer le générateur de caractères". Le chemin d'accès est indiqué dans la boîte de dialogue standard de Windows. Le nom par défaut du fichier est FontXXxYYmn.fnt, où XXxYY est le format de familiarité ; m - le caractère "v" ou "h", signifiant respectivement le balayage vertical ou horizontal de l'octet ; n est le caractère "p" ou "n", désignant respectivement l'image positive ou négative des caractères ; fnt est une extension de nom.

Le nom du fichier peut être modifié en ajoutant des caractères valides au début ou à la fin. Cependant, il n'est pas recommandé de détruire la construction "FontXXxYYmn". Selon lui, le programme reconnaît les paramètres de "sa" police lors de son chargement. Sinon, le programme considérera le fichier "étranger" et nécessitera une saisie manuelle des paramètres.

Si nécessaire, modifiez le fichier du générateur de caractères fini dans la fenêtre illustrée à la Fig. 3, cliquez sur le bouton d'écran "Importer le générateur de caractères". La boîte de dialogue standard de téléchargement de fichiers Windows s'ouvre, dans laquelle vous devez sélectionner le fichier à modifier. Le processus de téléchargement de ce fichier varie en fonction de son format.

Le fichier créé avec l'éditeur en question y est chargé sans intervention de l'utilisateur. Toutes les informations nécessaires sur les paramètres de police sont disponibles dans le nom du fichier, bien sûr, si la structure décrite ci-dessus y est enregistrée.

Si le nom du fichier ne contient pas les informations nécessaires à l'identification, le programme vous demandera de le saisir manuellement et ouvrira une fenêtre dans laquelle vous devrez spécifier la taille de la familiarité, le sens de numérisation des octets, la police positive ou négative est en le fichier. Par conséquent, avant d'éditer un fichier "étranger", vous devriez vous faire une idée de ces paramètres.

Si les paramètres sont corrects, la police "étrangère" sera chargée avec succès avec une forte probabilité. L'algorithme de lecture des informations contenues dans le fichier "comprend" les nombres décimaux et hexadécimaux dans diverses représentations, extrait des informations utiles des instructions Data et .Db et ignore les commentaires. Peut-être que la seule chose qui peut devenir un obstacle au bon chargement est la présence d'informations supplémentaires dans le fichier sous une forme non commentée.

Le processus d'édition d'une police téléchargée n'est pas différent du processus de création d'une nouvelle. La dernière étape consistera à enregistrer le travail effectué dans un fichier qui deviendra "propre" au programme.

Fichier du programme de l'éditeur : ftp://ftp.radio.ru/pub/2016/03/CG-Edit.zip.

Auteur : A. Savchenko

Voir d'autres articles section Concepteur radioamateur.

Lire et écrire utile commentaires sur cet article.

<< Retour

Dernières nouvelles de la science et de la technologie, nouvelle électronique :

Cuir artificiel pour émulation tactile 15.04.2024

Dans un monde technologique moderne où la distance devient de plus en plus courante, il est important de maintenir la connexion et un sentiment de proximité. Les récents développements de la peau artificielle réalisés par des scientifiques allemands de l'Université de la Sarre représentent une nouvelle ère dans les interactions virtuelles. Des chercheurs allemands de l'Université de la Sarre ont développé des films ultra-fins capables de transmettre la sensation du toucher à distance. Cette technologie de pointe offre de nouvelles opportunités de communication virtuelle, notamment pour ceux qui se trouvent loin de leurs proches. Les films ultra-fins développés par les chercheurs, d'à peine 50 micromètres d'épaisseur, peuvent être intégrés aux textiles et portés comme une seconde peau. Ces films agissent comme des capteurs qui reconnaissent les signaux tactiles de maman ou papa, et comme des actionneurs qui transmettent ces mouvements au bébé. Les parents touchant le tissu activent des capteurs qui réagissent à la pression et déforment le film ultra-fin. Ce ...>>

Litière pour chat Petgugu Global 15.04.2024

Prendre soin de vos animaux de compagnie peut souvent être un défi, surtout lorsqu'il s'agit de garder votre maison propre. Une nouvelle solution intéressante de la startup Petgugu Global a été présentée, qui facilitera la vie des propriétaires de chats et les aidera à garder leur maison parfaitement propre et bien rangée. La startup Petgugu Global a dévoilé des toilettes pour chats uniques qui peuvent automatiquement chasser les excréments, gardant votre maison propre et fraîche. Cet appareil innovant est équipé de divers capteurs intelligents qui surveillent l'activité des toilettes de votre animal et s'activent pour nettoyer automatiquement après utilisation. L'appareil se connecte au réseau d'égouts et assure une élimination efficace des déchets sans intervention du propriétaire. De plus, les toilettes ont une grande capacité de stockage jetable, ce qui les rend idéales pour les ménages comptant plusieurs chats. La litière pour chat Petgugu est conçue pour être utilisée avec des litières solubles dans l'eau et offre une gamme de ...>>

L’attractivité des hommes attentionnés 14.04.2024

Le stéréotype selon lequel les femmes préfèrent les « mauvais garçons » est répandu depuis longtemps. Cependant, des recherches récentes menées par des scientifiques britanniques de l’Université Monash offrent une nouvelle perspective sur cette question. Ils ont examiné comment les femmes réagissaient à la responsabilité émotionnelle des hommes et à leur volonté d'aider les autres. Les résultats de l’étude pourraient changer notre compréhension de ce qui rend les hommes attrayants aux yeux des femmes. Une étude menée par des scientifiques de l'Université Monash aboutit à de nouvelles découvertes sur l'attractivité des hommes auprès des femmes. Dans le cadre de l'expérience, des femmes ont vu des photographies d'hommes avec de brèves histoires sur leur comportement dans diverses situations, y compris leur réaction face à une rencontre avec une personne sans abri. Certains hommes ont ignoré le sans-abri, tandis que d’autres l’ont aidé, par exemple en lui achetant de la nourriture. Une étude a révélé que les hommes qui faisaient preuve d’empathie et de gentillesse étaient plus attirants pour les femmes que les hommes qui faisaient preuve d’empathie et de gentillesse. ...>>

Nouvelles aléatoires de l'Archive

Notre galaxie sera cousue par un nuage avec un bouclier magnétique 08.11.2013

Fermé par des champs magnétiques protecteurs, un nuage de gaz à grande vitesse s'approche de la Voie lactée. Les scientifiques pensent que de nombreuses nouvelles étoiles vont éclater le long de la trajectoire de ce nuage, ce qui changera l'apparence de notre galaxie.

Les scientifiques ont pu comprendre comment des formations spéciales, les soi-disant nuages ​​​​de gaz à grande vitesse (HVC), parviennent à «percer» les puissants champs gravitationnels et magnétiques des grandes galaxies presque sans perte, et en même temps leur fournissent carburant pour la formation de nouvelles étoiles. La découverte a été faite sur l'exemple du Smith Cloud, qui s'approche de la Voie lactée à une vitesse de plus de 241 km/s.

Des centaines de nuages ​​de gaz à grande vitesse tournent autour de notre galaxie. Ce sont les restes du matériau de construction à partir duquel les galaxies se sont formées. Les HVC peuvent entrer en collision avec des galaxies, mais ne se brisent néanmoins généralement pas, ce qui les fait exister pendant des milliards d'années. Les scientifiques ont longtemps été incapables de comprendre la nature de la "persistance" des nuages ​​de gaz : les simulations informatiques montrent qu'ils ne sont pas assez massifs pour survivre après être entrés dans le disque de la Voie lactée.

Au cours de l'observation du Smith Cloud, des scientifiques de l'organisation scientifique CSIRO ont découvert que de puissants champs magnétiques sauvent le nuage de la destruction, qui, comme un bouclier, ferment le nuage et l'empêchent de se dissiper à l'intérieur de la galaxie. Cependant, malgré les preuves évidentes de l'existence d'un champ magnétique, son origine reste un mystère : le champ est trop fort et s'intensifie probablement en traversant le halo entourant la galaxie. Ce qui peut servir de source à un champ magnétique aussi puissant à l'intérieur d'un nuage de gaz n'est toujours pas clair.

Les recherches montrent que le Smith Cloud est déjà entré en collision avec notre galaxie et qu'il le heurtera à nouveau. Le Smith Cloud est actuellement à 8000 30 années-lumière du disque de la galaxie. Lorsque le Smith Cloud entre en collision avec la Voie lactée, un anneau brillant de jeunes étoiles se forme. Un anneau similaire existe à proximité de notre Soleil et est connu sous le nom de ceinture de Gould. Si un nuage passe près du système solaire, "allumant" de nouvelles étoiles, cela pourrait avoir un impact important sur notre système stellaire. Heureusement, le possible « feu d'artifice » stellaire ne se produira pas de sitôt : le Smith Cloud entrera dans notre galaxie dans environ XNUMX millions d'années.

Autres nouvelles intéressantes :

▪ apple TV

▪ Une touche à distance

▪ Nouvelles passerelles câblées de Netgear

▪ L'armée américaine veut travailler avec des tablettes avec des gants

▪ L'Antarctique est ensemencé

Fil d'actualité de la science et de la technologie, nouvelle électronique

 

Matériaux intéressants de la bibliothèque technique gratuite :

▪ rubrique du site Biographies de grands scientifiques. Sélection d'articles

▪ article L'enquête est menée par des experts. Expression populaire

▪ Qu'est-ce qu'une crise cardiaque ? Réponse détaillée

▪ article Entretien des chaudières à vapeur au mazout. Instruction standard sur la protection du travail

▪ article Utilisation des produits d'application de la technologie du biogaz. Encyclopédie de l'électronique radio et de l'électrotechnique

▪ article de nettoyage à sec. Expérience chimique

Laissez votre commentaire sur cet article :

Nom:


E-mail (facultatif) :


commenter:





Toutes les langues de cette page

Page principale | bibliothèque | Articles | Plan du site | Avis sur le site

www.diagramme.com.ua

www.diagramme.com.ua
2000-2024