Menu English Ukrainian Russo Casa

Libreria tecnica gratuita per hobbisti e professionisti Libreria tecnica gratuita


ENCICLOPEDIA DELLA RADIOELETTRONICA ED ELETTRICA
Libreria gratuita / Schemi di dispositivi radioelettronici ed elettrici

Editor di caratteri bitmap per LCD grafici. Enciclopedia dell'elettronica radio e dell'ingegneria elettrica

Libreria tecnica gratuita

Enciclopedia della radioelettronica e dell'elettrotecnica / Progettista radioamatore

Commenti sull'articolo Commenti sull'articolo

L'autore propone un programma per computer di sua progettazione, progettato per creare e modificare i caratteri per LCD grafici che sono comuni oggi.

Negli ultimi anni, i radioamatori utilizzano sempre più LCD grafici nei loro sviluppi per visualizzare le informazioni. Una caratteristica della maggior parte di questi dispositivi è la presenza di un generatore di caratteri parzialmente o completamente caricato da un dispositivo di controllo esterno, o la sua completa assenza. Nel primo caso, durante l'inizializzazione dell'indicatore, è necessario caricare un font (un insieme di immagini di simboli) nella memoria del generatore di caratteri. Per visualizzare un simbolo sullo schermo, il programma invia solo il suo codice (indirizzo nel generatore di caratteri) al controller LCD e la visualizzazione del simbolo sullo schermo è fornita dal controller LCD. Nel secondo caso, tutte le operazioni necessarie alla visualizzazione del simbolo sullo schermo vengono eseguite dal programma del dispositivo di comando. Spesso nelle librerie dei sistemi di sviluppo software sono disponibili procedure già pronte.

Ma in entrambi i casi sono richiesti caratteri esterni. Da un lato, questo è un bene, in quanto consente di utilizzare i set di caratteri più adatti alla risoluzione di problemi specifici. Tuttavia, devi cercare i caratteri necessari o crearli tu stesso. Questo non vuol dire che i file di font per LCD grafici siano rari. Sono facili da trovare su Internet, ma non sempre è possibile utilizzare il carattere trovato.

Il fatto è che diversi controller LCD dispiegano l'immagine del personaggio nella matrice di familiarità in modi diversi. Ad esempio, il controller KS0107 (KS0108) dell'indicatore WG12864 capovolge verticalmente i byte dell'immagine, come mostrato in fig. 1 e l'indicatore del controller RA6963 WG240128 - orizzontalmente (Fig. 2). Nel primo caso, il carattere R deve essere descritto dalla sequenza di byte 00H, 00H, 00H, 7FH, 09H, 19H, 29H, 49H, nel secondo - 1EH, 11H, 11H, 1EH, 14H, 12H, 11H, 00H . Di conseguenza, un font preparato per un LCD con scansione orizzontale dei byte delle immagini dei caratteri verrà visualizzato in modo errato sugli indicatori di scansione verticale e viceversa.

Editor di font bitmap per LCD grafici
Riso. 1. L'immagine del personaggio nella matrice della familiarità

Editor di font bitmap per LCD grafici
Riso. 2. L'immagine del personaggio nella matrice della familiarità

Dal punto di vista della programmazione, un font è un array di costanti. Quando si sviluppano programmi che visualizzano informazioni sugli LCD, vengono utilizzati diversi linguaggi di programmazione con regole diverse per descrivere tali array. Ad esempio, in linguaggio assembly, le costanti sono specificate da direttive db (define byte) e in linguaggio BASIC, da operatori di dati. In C, un array di costanti può essere specificato semplicemente da un insieme dei loro valori. Anche la rappresentazione dei numeri esadecimali è diversa. Diversi linguaggi di programmazione utilizzano, ad esempio, i formati 0xNN, &hNN, $NN, NNH, dove NN sono cifre esadecimali.

Considerato quanto sopra, possiamo concludere che trovare un file con un font già pronto adatto non è un compito facile e, data l'eventuale necessità di contenere alcuni caratteri specifici, il compito diventa spesso del tutto irrisolvibile. In questi casi, devi correggere il carattere trovato da qualche parte o svilupparne uno nuovo da zero. È conveniente farlo con l'aiuto di programmi specializzati, i cosiddetti editor di caratteri.

Tali editor possono essere trovati su Internet. Il loro principale svantaggio (almeno quelli di cui si è occupato l'autore) è la loro focalizzazione ristretta. Sembra che il programma sia stato sviluppato da un appassionato per risolvere un suo specifico problema. Ad esempio, un programma produce un file di output in un formato compreso da un singolo compilatore di linguaggio di programmazione, mentre un altro produce immagini di caratteri adatte solo a un determinato tipo di LCD. Pertanto, o non è possibile creare il carattere desiderato con il loro aiuto, oppure il file di output deve essere corretto, ad esempio, utilizzando un editor di testo, che richiede molto tempo e raramente funziona senza errori. La capacità di questi programmi di modificare i caratteri creati da altri editor è spesso piuttosto limitata.

Il programma CG-Edit proposto è stato sviluppato dall'autore come uno strumento più versatile. Consente di sviluppare font nuovi e corretti precedentemente creati (inclusi "stranieri") nei formati più comunemente utilizzati nella pratica radioamatoriale.

Sono consentite le seguenti dimensioni di familiarità (il primo moltiplicatore è il numero di pixel in orizzontale, il secondo in verticale): 6x8, 8x8, 12x16, 16x16, 16x24, 24x16, 24x24. È possibile progettare e modificare i caratteri in immagini sia positive che negative, nonché modificare la direzione della scansione dei byte in familiarità da verticale a orizzontale e viceversa. Le informazioni di output possono essere ottimizzate per l'uso in programmi in linguaggio assembly in varie versioni di BASIC e C.

Il programma è progettato per personal computer che eseguono versioni di Windows a 32 e 64 bit. Consiste in un unico file eseguibile CG-Edit.exe e non richiede installazione, è facile da usare e ha un'interfaccia utente intuitiva.

Dopo aver avviato il programma, sullo schermo del computer si aprirà una finestra, mostrata in Fig. 3. Nella sua parte in alto a sinistra è presente un'area di selezione per il carattere modificato sotto forma di tabella, nelle cui celle sono posizionati i caratteri della tabella codici Windows-1251. Vengono visualizzati solo i caratteri con i codici 20H-0FFH, manca l'area del codice di controllo 0H-1FH perché non hanno equivalenti grafici. Tutti i caratteri principali di latino, cirillico e numeri sono al di fuori dell'area del codice 7FH-0BFH, quindi quest'area è comoda da usare per creare tutti i caratteri necessari per l'attività da risolvere invece di quelli disponibili lì secondo la code page di Windows-1251.

Editor di font bitmap per LCD grafici
Riso. 3. Finestra del programma sullo schermo del computer

Nella parte destra della finestra è presente un'area di modifica, nella quale verrà visualizzata la familiarità con il carattere richiesto, mentre quest'area è vuota. In basso a sinistra ci sono i pulsanti sullo schermo "Crea generatore di caratteri" e "Importa generatore di caratteri". Il primo mette il programma nella modalità di creazione di un nuovo generatore di caratteri. Questo apre una finestra per l'inserimento dei parametri del carattere creato, in cui è necessario selezionare dall'elenco la dimensione della familiarità e la direzione della scansione dei byte in esso.

Va notato che non tutte le dimensioni di familiarità consentono entrambe le direzioni della scansione dei byte. Il fatto è che il programma si concentra sulla massima densità di impaccamento delle informazioni. Dopotutto, i principali "consumatori" dei caratteri creati con il suo aiuto sono dispositivi a microcontrollore con una quantità di memoria relativamente ridotta.

Sulla fig. 4 si può vedere che con una scansione orizzontale di un byte in uno spazio familiare di 6x8 px, vengono utilizzate utilmente solo sei cifre e due cifre rimangono superflue. In totale, l'immagine del carattere occupa otto byte. Con una scansione verticale (Fig. 5), ciascuna colonna dello spazio carattere occupa un byte intero, quindi sono necessari solo sei byte per l'immagine del carattere. La differenza di due byte per carattere del carattere è piuttosto significativa, quindi in tutti gli spazi carattere in cui il numero di colonne non è un multiplo di otto, è consentita solo la scansione verticale.

Editor di font bitmap per LCD grafici
Riso. 4. Scansione orizzontale di un byte in uno spazio familiare con dimensioni di 6x8 px

Editor di font bitmap per LCD grafici
Riso. 5. Scansione verticale di un byte in uno spazio familiare con dimensioni di 6x8 px

Dopo aver selezionato le opzioni del carattere, fare clic sul pulsante dello schermo "Crea". Questo chiude la finestra di immissione dei parametri e la finestra principale assume la forma mostrata in Fig. 6.

Editor di font bitmap per LCD grafici
Riso. 6. Visualizzazione della finestra del programma per computer

Il programma crea un'immagine del generatore di caratteri vuota nella RAM del computer. Rimarrà vuoto fino a quando non viene caricato un font da un file esistente premendo il pulsante dello schermo "Importa generatore di caratteri" o fino a quando non si creano i propri caratteri premendo il pulsante dello schermo "Crea generatore di caratteri". I caratteri nel campo "Selezione carattere" non riflettono i contenuti effettivi dell'immagine del generatore di caratteri. Rimangono sempre invariati e servono solo per l'orientamento. Nell'area di modifica, il programma visualizza un'immagine della familiarità della dimensione selezionata.

Il simbolo del generatore di caratteri creato o modificato, la cui cella è selezionata nella tabella "Selezione simbolo" (è evidenziata in essa con uno sfondo rosso), viene visualizzato nel campo "Famigliarità modificabile". Inizialmente, questo è un simbolo con il codice 20H. Per passare a un altro simbolo, è necessario fare clic sulla cella della tabella corrispondente con il tasto sinistro del mouse. La scritta sopra la familiarità caratterizza i parametri del font creato.

Modifica il contenuto della familiarità cliccando sui suoi pixel con il tasto sinistro del mouse. Ognuno di questi clic inverte lo stato del pixel. Nella parte inferiore del campo di modifica sono presenti quattro pulsanti sullo schermo per il controllo dei pixel di gruppo. Facendo clic su uno di essi si sposta il contenuto della familiarità di un pixel in alto, in basso, a sinistra oa destra al suo interno. Premendo il pulsante sullo schermo "Cancella" si cancella completamente la familiarità e premendo il pulsante "Ripristina" si ripristina lo stile originale del personaggio che si sta modificando. A causa del fatto che le operazioni di cancellazione e rollback cancellano in modo permanente i risultati della modifica di un simbolo, il programma invia messaggi di avviso appropriati prima che vengano eseguiti.

La riga inferiore e la colonna di destra della familiarità sono evidenziate con uno sfondo giallo. Questo è un promemoria che i pixel inclusi in essi non sono desiderabili, poiché queste aree fungono da separatori per i caratteri adiacenti sullo schermo LCD. Tuttavia, il termine "indesiderabile" non significa divieto. Puoi attivare un pixel, cosa che devi fare creando simboli come "D" o "W". Quando si lavora con ampi spazi di familiarità, le due righe inferiori e le due colonne all'estrema destra sono evidenziate con uno sfondo giallo, poiché per una buona percezione di caratteri grandi è consigliabile avere spazi maggiori tra loro.

Sotto l'area di modifica ci sono due pulsanti sullo schermo, con i quali è possibile cancellare completamente il generatore di caratteri o ricodificarlo cambiando la direzione dei byte di scansione nella familiarità. Se si tenta di eliminare un carattere con modifiche non salvate, il programma visualizzerà un messaggio di avviso.

Sono consentiti l'ordine arbitrario della selezione dei simboli e la loro modifica multipla. Dopo la prima modifica dello stato di qualsiasi pixel, il carattere nella cella di selezione corrispondente verrà evidenziato in grassetto e ingrandito. Questo dimostra che è stato modificato. Tutto ciò che viene visualizzato nella finestra del programma durante l'editing è mostrato in Fig. 7. Si può vedere che i simboli "3" e "Щ" sono già stati modificati, ora il simbolo "Щ" è in fase di modifica e la sua "coda" si trova nella zona indesiderata.

Editor di font bitmap per LCD grafici
Riso. 7. Finestra del programma in fase di modifica

Se necessario, puoi in qualsiasi momento modificare la scansione dei byte in familiarità da verticale a orizzontale e viceversa. Per fare ciò, fare clic sul pulsante dello schermo "Cambia vista modello piatto". L'operazione agisce contemporaneamente su tutti i caratteri del generatore di caratteri. Dopo la sua esecuzione, sullo schermo verrà visualizzato un messaggio corrispondente e verranno modificati i parametri del carattere visualizzati sopra la familiarità. Non è possibile modificare la direzione dello sweep se ciò comporta un aumento delle dimensioni dell'immagine del carattere.

Qualche parola su come lavorare con caratteri negativi. Il concetto stesso di carattere negativo è già diventato un atavismo, dal momento che molti moderni controller LCD possono invertire l'immagine da soli. Tuttavia, il programma ha la capacità di creare e modificare caratteri negativi. Non ci sono differenze dal lavorare con un carattere positivo. I simboli in ogni caso sembrano positivi sullo schermo del computer. La trasformazione delle loro immagini in negative avviene nel processo di scrittura del carattere creato sul disco del computer. Guardando al futuro, notiamo che quando si carica un file contenente un font negativo per la modifica, le informazioni vengono inserite nell'immagine del generatore di caratteri nella memoria del computer in forma invertita (positiva) e vengono nuovamente invertite quando vengono scritte su disco.

Dopo aver impostato i parametri del carattere, nella finestra del programma viene visualizzato un altro pannello, intitolato "File di output". Contiene controlli che consentono di scrivere un file generatore di caratteri su disco nel formato richiesto.

Nell'elenco a discesa "Formato riga" (Fig. 8) selezionare la struttura della riga nel file di testo di output. La sequenza esadecimale separata da virgole può essere preceduta dalla parola chiave "Data" o ".Db" oppure può essere omessa.

Editor di font bitmap per LCD grafici
Riso. 8. Elenco a discesa "Formato stringa"

Nell'elenco a discesa "Formato numero" (Fig. 9) selezionare la modalità di rappresentazione del numero esadecimale. Le due cifre esadecimali NN possono essere aggiunte con uno dei prefissi nell'elenco o con il suffisso "h".

Editor di font bitmap per LCD grafici
Riso. 9. Elenco a discesa "Formato numero"

Selezionando la voce "Carattere negativo", puoi creare un file con un tale carattere.

Per scrivere un file su un disco del computer, fare clic sul pulsante dello schermo "Salva generatore di caratteri". Il percorso è indicato nella finestra di dialogo standard di Windows. Il nome predefinito per il file è FontXXxYYmn.fnt, dove XXxYY è il formato di familiarità; m - il carattere "v" o "h", che significa, rispettivamente, la scansione verticale o orizzontale del byte; n è il carattere "p" o "n", che denota rispettivamente l'immagine positiva o negativa dei caratteri; fnt è un'estensione del nome.

Il nome del file può essere modificato aggiungendo caratteri validi all'inizio o alla fine. Tuttavia, non è consigliabile distruggere il costrutto "FontXXxYYmn". Secondo esso, il programma riconosce i parametri del "suo" carattere quando viene caricato. In caso contrario, il programma considererà il file "alieno" e richiederà l'inserimento manuale dei parametri.

Se necessario, modificare il file del generatore di caratteri finito nella finestra mostrata in Fig. 3, fare clic sul pulsante dello schermo "Importa generatore di caratteri". Si aprirà la finestra di dialogo standard per il caricamento dei file di Windows, in cui è necessario selezionare il file da modificare. Il processo di download di questo file varia a seconda del suo formato.

Il file creato con l'editor in questione viene caricato al suo interno senza l'intervento dell'utente. Tutte le informazioni necessarie sui parametri del carattere sono disponibili nel nome del file, ovviamente, se la struttura sopra descritta è salvata al suo interno.

Se il nome del file non contiene le informazioni necessarie per l'identificazione, il programma chiederà di inserirlo manualmente e aprirà una finestra in cui è necessario specificare la dimensione della familiarità, la direzione dei byte di scansione, il carattere positivo o negativo è in il file. Pertanto, prima di modificare un file "straniero", dovresti farti un'idea di questi parametri.

Se i parametri sono corretti, il carattere "straniero" verrà caricato correttamente con un'alta probabilità. L'algoritmo di lettura delle informazioni contenute nel file "capisce" sia i numeri decimali che esadecimali nelle varie rappresentazioni, estrae informazioni utili dalle istruzioni Data e .Db e ignora i commenti. Forse l'unica cosa che può diventare un ostacolo al corretto caricamento è la presenza di eventuali informazioni aggiuntive nel file in forma non commentata.

Il processo di modifica di un font scaricato non è diverso dal processo di creazione di uno nuovo. L'ultimo passo sarà salvare il lavoro svolto in un file che diventerà "proprio" per il programma.

File di programma dell'editor: ftp://ftp.radio.ru/pub/2016/03/CG-Edit.zip.

Autore: A. Savchenko

Vedi altri articoli sezione Progettista radioamatore.

Leggere e scrivere utile commenti su questo articolo.

<< Indietro

Ultime notizie di scienza e tecnologia, nuova elettronica:

Macchina per diradare i fiori nei giardini 02.05.2024

Nell'agricoltura moderna si sta sviluppando il progresso tecnologico volto ad aumentare l'efficienza dei processi di cura delle piante. Presentata in Italia l'innovativa macchina per il diradamento dei fiori Florix, progettata per ottimizzare la fase di raccolta. Questo attrezzo è dotato di bracci mobili, che permettono di adattarlo facilmente alle esigenze del giardino. L'operatore può regolare la velocità dei fili sottili controllandoli dalla cabina del trattore tramite joystick. Questo approccio aumenta significativamente l'efficienza del processo di diradamento dei fiori, offrendo la possibilità di adattamento individuale alle condizioni specifiche del giardino, nonché alla varietà e al tipo di frutto in esso coltivato. Dopo due anni di test della macchina Florix su diverse tipologie di frutta, i risultati sono stati molto incoraggianti. Agricoltori come Filiberto Montanari, che utilizza una macchina Florix da diversi anni, hanno riscontrato una significativa riduzione del tempo e della manodopera necessari per diluire i fiori. ... >>

Microscopio infrarosso avanzato 02.05.2024

I microscopi svolgono un ruolo importante nella ricerca scientifica, consentendo agli scienziati di approfondire strutture e processi invisibili all'occhio. Tuttavia, vari metodi di microscopia hanno i loro limiti e tra questi c'è la limitazione della risoluzione quando si utilizza la gamma degli infrarossi. Ma gli ultimi risultati dei ricercatori giapponesi dell'Università di Tokyo aprono nuove prospettive per lo studio del micromondo. Gli scienziati dell'Università di Tokyo hanno presentato un nuovo microscopio che rivoluzionerà le capacità della microscopia a infrarossi. Questo strumento avanzato consente di vedere le strutture interne dei batteri viventi con sorprendente chiarezza su scala nanometrica. In genere, i microscopi nel medio infrarosso sono limitati dalla bassa risoluzione, ma l’ultimo sviluppo dei ricercatori giapponesi supera queste limitazioni. Secondo gli scienziati, il microscopio sviluppato consente di creare immagini con una risoluzione fino a 120 nanometri, ovvero 30 volte superiore alla risoluzione dei microscopi tradizionali. ... >>

Trappola d'aria per insetti 01.05.2024

L’agricoltura è uno dei settori chiave dell’economia e il controllo dei parassiti è parte integrante di questo processo. Un team di scienziati dell’Indian Council of Agricultural Research-Central Potato Research Institute (ICAR-CPRI), Shimla, ha trovato una soluzione innovativa a questo problema: una trappola per insetti alimentata dal vento. Questo dispositivo risolve le carenze dei metodi tradizionali di controllo dei parassiti fornendo dati sulla popolazione di insetti in tempo reale. La trappola è alimentata interamente dall'energia eolica, il che la rende una soluzione ecologica che non richiede energia. Il suo design unico consente il monitoraggio sia degli insetti dannosi che utili, fornendo una panoramica completa della popolazione in qualsiasi area agricola. “Valutando i parassiti target al momento giusto, possiamo adottare le misure necessarie per controllare sia i parassiti che le malattie”, afferma Kapil ... >>

Notizie casuali dall'Archivio

Protezioni meccaniche per la protezione dagli attacchi di animali selvatici 04.10.2023

Il Giappone ha introdotto misure insolite per garantire la sicurezza degli anziani dagli attacchi degli orsi: sono entrati in azione i lupi meccanici, noti come Monster Wolf.

Creati originariamente per terrorizzare gli animali selvatici nei terreni agricoli, questi terrificanti lupi robotici vengono ora utilizzati per impedire agli orsi di attaccare le persone.

Secondo il produttore Monster Wolf, il primo utilizzo di questi lupi meccanici è stato registrato in Giappone nell’autunno del 2020, dopo una serie di attacchi di orsi contro i residenti anziani. Nell’ultima fase, le autorità locali di tutto il paese stanno acquistando attivamente questi robot a causa della crescente minaccia di attacchi di orsi.

Questa insolita iniziativa è dovuta a un massiccio esodo di giovani dalle zone rurali, che lascia i cittadini più anziani senza un’adeguata protezione e porta alla devastazione delle città.

Il professore Shinsuke Koike dell’Università di Agricoltura e Tecnologia di Tokyo sottolinea che le aree che in precedenza fungevano da cuscinetto tra gli orsi e le persone stanno scomparendo, consentendo agli orsi di avvicinarsi alle aree popolate e rendendoli meno timidi nei confronti delle persone.

Nella regione di Hokkaido, dove vivono gli orsi bruni, negli ultimi 150 anni sono stati registrati più di 60 attacchi di orsi. Ci sono stati quattro attacchi mortali e più di 2021 feriti solo nel 10, rendendolo uno degli anni più mortali della regione.

Nonostante la stranezza dell’utilizzo di buoi robotici, questi si sono rivelati piuttosto efficaci.

Altre notizie interessanti:

▪ Creato una forma elastica di carbonio

▪ I pipistrelli sono i principali vettori di malattie virali

▪ Le forti emozioni uniscono le persone

▪ La grotta si è ammalata

▪ Il laser super stabile rende il GPS più preciso

News feed di scienza e tecnologia, nuova elettronica

 

Materiali interessanti della Biblioteca Tecnica Libera:

▪ sezione del sito web Istruzioni standard per la sicurezza sul lavoro (TOI). Selezione dell'articolo

▪ articolo La seconda parte del balletto Merleson. Espressione popolare

▪ articolo Per quanto tempo una persona può stare senza cibo? Risposta dettagliata

▪ articolo Sicurezza sul lavoro dei lavoratori forestali

▪ articolo brunitura di ferro e acciaio. Ricette e consigli semplici

▪ articolo Adattatori telefonici per l'autoregistrazione delle informazioni. Enciclopedia dell'elettronica radio e dell'ingegneria elettrica

Lascia il tuo commento su questo articolo:

Nome:


E-mail (opzionale):


commento:





Tutte le lingue di questa pagina

Homepage | Biblioteca | Articoli | Mappa del sito | Recensioni del sito

www.diagram.com.ua

www.diagram.com.ua
2000-2024