メニュー English Ukrainian ロシア語 ホーム

愛好家や専門家向けの無料テクニカル ライブラリ 無料のテクニカルライブラリ


無線電子工学および電気工学の百科事典
無料のライブラリ / 無線電子および電気機器のスキーム

グラフィック LCD 用のビットマップ フォント エディター。 無線エレクトロニクスと電気工学の百科事典

無料のテクニカルライブラリ

無線電子工学と電気工学の百科事典 / アマチュア無線デザイナー

記事へのコメント 記事へのコメント

著者は、今日一般的なグラフィック LCD 用のフォントを作成および編集するために設計された、独自に設計したコンピューター プログラムを提案します。

近年、アマチュア無線家は、情報を表示するためにグラフィック LCD を開発に使用することが増えています。 これらのデバイスのほとんどの特徴は、外部制御デバイスによって部分的または完全にロードされるキャラクタ ジェネレータが存在するか、まったく存在しないことです。 最初のケースでは、インジケーターを初期化するときに、フォント (シンボル イメージのセット) をキャラクター ジェネレーター メモリにロードする必要があります。 画面上にシンボルを表示するには、プログラムはそのコード (キャラクタ ジェネレータ内のアドレス) のみを LCD コントローラに送信し、画面上のシンボルの表示は LCD コントローラによって提供されます。 XNUMX 番目のケースでは、画面上にシンボルを表示するために必要なすべての操作が制御装置のプログラムによって実行されます。 多くの場合、ソフトウェア開発システムのライブラリには既製のプロシージャが用意されています。

ただし、どちらの場合も、外部フォントが必要です。 一方で、これは、特定の問題を解決するのに最適な文字セットを使用できるようになるため、良いことです。 ただし、必要なフォントを探すか、自分で作成する必要があります。 これは、グラフィック LCD 用のフォント ファイルが珍しいということではありません。 インターネット上で簡単に見つけることができますが、見つかったフォントが必ずしも使用できるとは限りません。

実際のところ、LCD コントローラーが異なれば、親密度マトリックス内のキャラクター イメージが異なる方法で展開されます。 たとえば、WG0107 インジケーターの KS0108 (KS12864) コントローラーは、図に示すように、画像バイトを垂直方向に反転します。 1、およびコントローラ RA6963 インジケータ WG240128 - 水平(図 2)。 最初のケースでは、文字 R はバイト シーケンス 00H、00H、00H、7FH、09H、19H、29H、49H で記述され、1 番目のケースでは 11EH、11H、1H、14EH、12H、11H、00H、XNUMXH で記述される必要があります。 。 その結果、文字イメージの水平バイト スキャンを備えた LCD 用に用意されたフォントは、垂直スキャン インジケーターでは正しく表示されず、またその逆も同様です。

グラフィックLCD用のビットマップフォントエディタ
米。 1. 親密度マトリックスにおけるキャラクターのイメージ

グラフィックLCD用のビットマップフォントエディタ
米。 2. 親密度マトリックスにおけるキャラクターのイメージ

プログラミングの観点から見ると、フォントは定数の配列です。 LCD に情報を表示するプログラムを開発する場合、配列を記述するためのさまざまなルールでさまざまなプログラミング言語が使用されます。 たとえば、アセンブリ言語では、定数は db (バイト定義) ディレクティブによって指定され、BASIC 言語ではデータ演算子によって指定されます。 C では、定数の配列はその値のセットによって簡単に指定できます。 0 進数の表現も異なります。 さまざまなプログラミング言語では、たとえば、XNUMXxNN、&hNN、$NN、NNH の形式が使用されます。NN は XNUMX 進数です。

上記を考慮すると、適切な既製フォントを含むファイルを見つけるのは簡単な作業ではなく、特定の文字をファイル内に含める必要がある可能性を考慮すると、タスクは完全に解決不可能になることがよくあると結論付けることができます。 このような場合は、どこかにあるフォントを修正するか、新しいフォントを一から開発する必要があります。 これを行うには、特殊なプログラム、いわゆるフォントエディターを使用すると便利です。

このようなエディタはインターネット上で見つけることができます。 彼らの主な欠点(少なくとも著者が扱った欠点)は、焦点が狭いことです。 このプログラムは、ある愛好家が特定の問題を解決するために開発したもののようです。 たとえば、あるプログラムは単一のプログラミング言語コンパイラで理解できる形式で出力ファイルを生成しますが、別のプログラムは特定のタイプの LCD にのみ適した文字イメージを生成します。 したがって、彼らの助けを借りて目的のフォントを作成することができないか、たとえばテキストエディタを使用して出力ファイルを修正する必要がありますが、これには多くの時間がかかり、エラーなしで完了することはほとんどありません。 他のエディタで作成されたフォントを編集するこれらのプログラムの機能は、多くの場合非常に制限されています。

提案された CG-Edit プログラムは、より汎用性の高いツールとして著者によって開発されました。 これを使用すると、アマチュア無線の練習で最も一般的に使用される形式で、以前に作成した (「外国語」を含む) フォントを修正して新規開発することができます。

次の親密度の次元が許可されます (最初の要素は水平方向のピクセル数、6 番目の要素は垂直方向): 8x8、8x12、16x16、16x16、24x24、16x24、24xXNUMX。 ポジイメージとネガイメージの両方でフォントをデザインおよび編集できるほか、おなじみのバイトスキャンの方向を垂直から水平、またはその逆に変更できます。 出力情報は、BASIC および C のさまざまなバージョンのアセンブリ言語プログラムで使用できるように最適化できます。

このプログラムは、32 ビットおよび 64 ビット バージョンの Windows を実行するパーソナル コンピュータ用に設計されています。 単一の実行可能ファイル CG-Edit.exe で構成されており、インストールの必要がなく、使いやすく、直感的なユーザー インターフェイスを備えています。

プログラムを開始すると、図に示すウィンドウがコンピュータ画面に開きます。 3. 左上部分には表形式の編集文字の選択領域があり、そのセルには Windows-1251 コード ページの文字が配置されます。 コード 20H ~ 0FFH の文字のみが表示されます。制御コード領域 0H ~ 1FH は、同等のグラフィックがないため欠落しています。 ラテン文字、キリル文字、および数字のすべての主要文字は 7FH-0BFH コード領域の外にあるため、この領域は、Windows-1251 コード ページに従ってそこで利用可能な文字の代わりに、解決するタスクに必要な文字を作成するために使用すると便利です。

グラフィックLCD用のビットマップフォントエディタ
米。 3. コンピュータ画面上のプログラム ウィンドウ

ウィンドウの右側には編集領域があり、必要なキャラクターの習熟度が表示されますが、この領域は空です。 画面左下に「キャラクタージェネレーターの作成」と「キャラクタージェネレーターのインポート」ボタンがあります。 そのうちの XNUMX つ目は、プログラムを新しいキャラクタ ジェネレータを作成するモードにします。 これにより、作成したフォントのパラメータを入力するためのウィンドウが開きます。そこで、親密度のサイズとフォント内のバイト スキャンの方向をリストから選択する必要があります。

すべてのサイズのファミリリティで両方向のバイト スキャンが許可されるわけではないことに注意してください。 実際のところ、このプログラムは情報を最大限に詰め込むことに重点を置いています。 結局のところ、その助けを借りて作成されたフォントの主な「消費者」は、比較的少量のメモリを備えたマイクロコントローラデバイスです。

図上。 図 4 から、6x8 ピクセルのよく知られた空間でのバイトの水平スキャンでは、有効に使用されるのは 5 桁だけで、XNUMX 桁は余分なままであることがわかります。 文字画像は合計 XNUMX バイトを占めます。 垂直走査 (図 XNUMX) では、各文字スペース列が XNUMX バイトを占めるため、文字イメージに必要なのは XNUMX バイトだけです。 フォント文字あたり XNUMX バイトの違いは非常に大きいため、列数が XNUMX の倍数ではないすべての文字スペースでは、垂直スキャンのみが許可されます。

グラフィックLCD用のビットマップフォントエディタ
米。 4. 6x8 px のサイズの慣れ親しんだ空間でのバイトの水平スキャン

グラフィックLCD用のビットマップフォントエディタ
米。 5. 6x8 px のサイズの慣れ親しんだ空間でのバイトの垂直スキャン

フォントオプションを選択した後、「作成」画面ボタンをクリックします。 これによりパラメータ入力ウィンドウが閉じられ、メインウィンドウは図の形式になります。 6.

グラフィックLCD用のビットマップフォントエディタ
米。 6. コンピュータ プログラム ウィンドウのビュー

プログラムは、コンピュータの RAM に空のキャラクタ ジェネレータ イメージを作成します。 [キャラクタ ジェネレータのインポート] 画面ボタンを押して既存のファイルからフォントが読み込まれるまで、または [キャラクタ ジェネレータの作成] 画面ボタンを押して独自の文字を作成するまでは、空のままです。 「文字選択」フィールドの文字は、実際のキャラクタ ジェネレータ イメージの内容を反映しません。 これらは常に変更されず、オリエンテーションのみに使用されます。 編集領域では、プログラムは選択されたサイズの親近性の画像を表示します。

「シンボル選択」テーブルでセルが選択されている、作成または編集したキャラクタジェネレータのシンボル(背景が赤で強調表示されています)が「編集可能な親密度」フィールドに表示されます。 最初は、これはコード 20H のシンボルです。 別のシンボルに移動するには、対応する表のセルをマウスの左ボタンでクリックする必要があります。 親密度の上の碑文は、作成されたフォントのパラメータを特徴付けます。

マウスの左ボタンでピクセルをクリックして、ファミリリティのコンテンツを編集します。 このようなクリックごとに、ピクセルの状態が反転します。 編集フィールドの下部には、グループ ピクセル コントロール用の XNUMX つの画面上のボタンがあります。 そのうちの XNUMX つをクリックすると、親近感の内容がその中で上下左右に XNUMX ピクセルずつ移動します。 画面上の「消去」ボタンを押すと馴染みが完全に消去され、「元に戻す」ボタンを押すと編集中の文字のスタイルが元に戻ります。 削除およびロールバック操作ではシンボルの編集結果が永久に削除されるため、プログラムは実行前に適切な警告メッセージを発行します。

親密度の下の行と右の列は、黄色の背景で強調表示されます。 これは、これらの領域が LCD 画面上の隣接する文字の区切りとして機能するため、ピクセルが含まれることは望ましくないことを思い出させます。 ただし、「望ましくない」という用語は禁止を意味するものではありません。 ピクセルをオンにするには、「D」や「W」などの記号を作成する必要があります。 大きな見慣れたスペースを扱う場合、大きな文字を見やすくするためには、下の XNUMX 行と右端の XNUMX 列が黄色の背景で強調表示されます。これは、それらの間の隙間を増やすことが推奨されるためです。

編集領域の下には XNUMX つの画面ボタンがあり、これを使用すると、キャラクタ ジェネレータを完全にクリアすることも、おなじみのバイトのスキャン方向を変更してキャラクタ ジェネレータを再コード化することもできます。 変更が保存されていないフォントを削除しようとすると、プログラムは警告メッセージを表示します。

シンボル選択の任意の順序と複数の再編集が許可されます。 ピクセルの状態が最初に変化すると、対応する選択セル内の文字が太字で強調表示され、拡大されます。 これは編集されたことを示しています。 編集中にプログラム ウィンドウに表示されるすべてを図に示します。 7. シンボル「3」と「Щ」はすでに編集されており、現在シンボル「Щ」が編集中で、その「尾部」が不要なゾーンにあることがわかります。

グラフィックLCD用のビットマップフォントエディタ
米。 7. 編集中のプログラムウィンドウ

必要に応じていつでも、ファミリアリティのバイトのスキャンを垂直方向から水平方向、またはその逆に変更できます。 これを行うには、画面の「フラット パターン ビューの変更」ボタンをクリックします。 この操作は、キャラクタ ジェネレータのすべての文字に同時に作用します。 実行後、対応するメッセージが画面に表示され、親密度の上に表示されるフォントパラメータが変更されます。 フォント イメージのサイズが大きくなる場合、スイープ方向を変更することはできません。

ネガティブ フォントの使用について少し説明します。 最新の LCD コントローラーの多くは画像を自動的に反転できるため、ネガティブ フォントという概念自体がすでに隔世の感があります。 それにもかかわらず、このプログラムにはネガティブ フォントを作成および編集する機能があります。 ポジフォントを使用する場合と違いはありません。 いずれの場合でも、シンボルはコンピューター画面上ではポジティブに見えます。 画像のネガ画像への変換は、作成されたフォントをコンピュータのディスクに書き込む過程で発生します。 今後、編集のためにネガ フォントを含むファイルをロードすると、情報はコンピュータ メモリ内のキャラクタ ジェネレータ イメージに反転 (ポジ) 形式で入力され、ディスクに書き込まれるときに再び反転されることに注意してください。

フォントパラメータを設定すると、「出力ファイル」というタイトルの別のパネルがプログラムウィンドウに表示されます。 これには、キャラクタ ジェネレータ ファイルを必要な形式でディスクに書き込むことができるコントロールが含まれています。

ドロップダウン リスト「行形式」(図 8) で、出力テキスト ファイル内の行の構造を選択します。 コンマで区切られた XNUMX 進数シーケンスの前にキーワード「Data」または「.Db」を付けることも、省略することもできます。

グラフィックLCD用のビットマップフォントエディタ
米。 8. ドロップダウンリスト「文字列形式」

ドロップダウンリスト「数値形式」(図9)でXNUMX進数の表現方法を選択します。 XNUMX つの XNUMX 進数 NN には、リスト内の接頭辞の XNUMX つまたは接尾辞「h」を追加できます。

グラフィックLCD用のビットマップフォントエディタ
米。 9. ドロップダウンリスト「数値形式」

「ネガフォント」の項目にチェックを入れることで、そのようなフォントでファイルを作成することができます。

ファイルをコンピュータのディスクに書き込むには、[キャラクター ジェネレータの保存] 画面のボタンをクリックします。 そのパスは、Windows の標準ダイアログに表示されます。 ファイルのデフォルト名は FontXXxYYmn.fnt です。ここで、XXxYY はおなじみの形式です。 m - 文字「v」または「h」。それぞれ、バイトの垂直走査または水平走査を意味します。 n は文字「p」または「n」で、それぞれ文字のポジティブまたはネガティブなイメージを示します。 fnt は名前拡張子です。

ファイル名は、先頭または末尾に有効な文字を追加することで変更できます。 ただし、「FontXXxYYmn」構造を破棄することはお勧めできません。 それによると、プログラムはロード時に「その」フォントのパラメータを認識します。 それ以外の場合、プログラムはファイルを「エイリアン」とみなし、パラメータの手動入力を必要とします。

必要に応じて、完成したキャラクタジェネレータファイルを図のウィンドウで編集します。 3、「キャラジェネのインポート」画面ボタンをクリックします。 標準の Windows ファイル アップロード ダイアログが開き、編集するファイルを選択する必要があります。 このファイルのダウンロード プロセスは、その形式によって異なります。

問題のエディタで作成されたファイルは、ユーザーの介入なしでエディタにロードされます。 もちろん、上記の構造がファイル名に保存されていれば、フォント パラメータに関する必要な情報はすべてファイル名で入手できます。

ファイル名に識別に必要な情報が含まれていない場合、プログラムはファイル名を手動で入力するように求め、ウィンドウを開き、親密度のサイズ、スキャンバイトの方向、ポジフォントまたはネガフォントを指定する必要があります。ファイル。 したがって、「外部」ファイルを編集する前に、これらのパラメータについて理解しておく必要があります。

パラメータが正しい場合、「外国の」フォントは高い確率で正常にロードされます。 ファイルに含まれる情報を読み取るアルゴリズムは、さまざまな表現の XNUMX 進数と XNUMX 進数の両方を「理解」し、Data ステートメントと .Db ステートメントから有用な情報を抽出し、コメントを無視します。 おそらく、適切な読み込みの障害となる唯一のことは、コメントされていない形式でファイル内に追加情報が存在することです。

ダウンロードしたフォントを編集するプロセスは、新しいフォントを作成するプロセスと変わりません。 最後のステップは、プログラムにとって「独自の」ファイルとなる作業内容を保存することです。

エディター プログラム ファイル: ftp://ftp.radio.ru/pub/2016/03/CG-Edit.zip。

著者: A. サフチェンコ

他の記事も見る セクション アマチュア無線デザイナー.

読み書き 有用な この記事へのコメント.

<<戻る

科学技術の最新ニュース、新しい電子機器:

タッチエミュレーション用人工皮革 15.04.2024

距離を置くことがますます一般的になっている現代のテクノロジーの世界では、つながりと親近感を維持することが重要です。ドイツのザールランド大学の科学者らによる人工皮膚の最近の開発は、仮想インタラクションの新時代を象徴しています。ドイツのザールラント大学の研究者は、触覚を遠くまで伝えることができる超薄膜を開発した。この最先端のテクノロジーは、特に愛する人から遠く離れている人たちに、仮想コミュニケーションの新たな機会を提供します。研究者らが開発した厚さわずか50マイクロメートルの極薄フィルムは、繊維に組み込んで第二の皮膚のように着用することができる。これらのフィルムは、ママやパパからの触覚信号を認識するセンサーとして、またその動きを赤ちゃんに伝えるアクチュエーターとして機能します。保護者が布地に触れるとセンサーが作動し、圧力に反応して超薄膜を変形させます。これ ... >>

Petgugu グローバル猫砂 15.04.2024

ペットの世話は、特に家を清潔に保つことに関しては、しばしば困難になることがあります。 Petgugu Global のスタートアップ企業から、猫の飼い主の生活を楽にし、家を完璧に清潔で整頓された状態に保つのに役立つ、新しい興味深いソリューションが発表されました。スタートアップの Petgugu Global は、糞便を自動的に流し、家を清潔で新鮮に保つことができるユニークな猫用トイレを発表しました。この革新的なデバイスには、ペットのトイレ活動を監視し、使用後に自動的に掃除するように作動するさまざまなスマートセンサーが装備されています。この装置は下水道システムに接続されており、所有者の介入を必要とせずに効率的な廃棄物の除去を保証します。また、トイレには大容量の水洗トイレがあり、多頭飼いのご家庭にも最適です。 Petgugu 猫砂ボウルは、水溶性猫砂用に設計されており、さまざまな追加機能を提供します。 ... >>

思いやりのある男性の魅力 14.04.2024

女性は「悪い男」を好むという固定観念は長い間広まっていました。しかし、モナシュ大学の英国の科学者によって行われた最近の研究は、この問題について新たな視点を提供しています。彼らは、男性の感情的責任と他人を助けようとする意欲に女性がどのように反応するかを調べました。この研究結果は、男性が女性にとって魅力的な理由についての私たちの理解を変える可能性がある。モナシュ大学の科学者が行った研究により、女性に対する男性の魅力に関する新たな発見がもたらされました。実験では、女性たちに男性の写真と、ホームレスと遭遇したときの反応など、さまざまな状況での行動についての簡単なストーリーを見せた。ホームレス男性を無視する人もいたが、食べ物をおごるなど手助けする人もいた。ある研究によると、共感と優しさを示す男性は、共感と優しさを示す男性に比べて、女性にとってより魅力的であることがわかりました。 ... >>

アーカイブからのランダムなニュース

樹木菌 - プラスチックの生態学的代替品 25.02.2023

科学者たちは、木に生える火口菌 (Fomes fomentarius) がいくつかの驚くべき特性を持っていることを発見しました。 研究者は、将来的に特定のプラスチックやその他の材料に代わる天然の生分解性になる可能性があると考えています.

この木を食べるキノコは、歴史的に火を起こすために使用されてきましたが、衣服や薬にも使用されてきました. 今では、プラスチックの生分解性の代替品として、まったく新しいレベルの有用性を持つことができます.

菌糸として知られる細いフィラメントで構成される菌糸体は、根のようなネットワークを形成し、土壌や腐った物質に広がります。 フィンランド、オランダ、ドイツの研究機関の科学者チームは、このネットワークは XNUMX つの層に分けられると述べています。

菌糸体はすべての層の主成分です。 ただし、各層では、菌糸体は、独自の優先方向、アスペクト比、密度、および枝の長さを持つ非常に明確な微細構造を示します。

研究者は、フィンランドで収集されたサンプルを使用して、F. fomentarius の子実体の構造的および化学的組成を研究しました。 機械的強度試験と真菌の詳細なスキャンを組み合わせて、その特性を詳細に調べたところ、XNUMX つの層が明らかになりました。下にある泡状の層を覆う硬く薄い外皮と、コア内の中空の管状構造の山です。

科学者たちはまた、キノコの部分は合板、松、または革と同じくらい強いが、それらの材料よりも軽いことにも注目しました. この組み合わせは、通常、そのようなキノコの肉質の部分には関連付けられていません。

研究者らは、F. fomentarius の子実体の大部分を構成する中空管が、泡層よりも強い力に耐えることができ、大きな変位や変形を経験しないことを発見しました。

これはそれほど驚くべきことではありません。このきのこは、季節の厳しい変化や、上から落ちてくる木の枝に耐えられるように作られている必要があります。 新しい合成素材を刺激するのは、この強さです。

その他の興味深いニュース:

▪ 作物と太陽光パネルの最適な組み合わせ

▪ 我が家の太陽と風

▪ 感覚補償メカニズム

▪ 1/4 インチ 8 MP OmniVision OV8856 および OV88565 イメージ センサー

▪ マンゴーと藻類からの可溶性プラスチック

科学技術、新しいエレクトロニクスのニュースフィード

 

無料の技術ライブラリの興味深い資料:

▪ サイトセクション 色彩と音楽のインスタレーション。 記事の選択

▪ 記事 長距離にわたる電気の伝送。 発明と生産の歴史

▪ 記事 クリコヴォの戦いでドミトリー・ドンスコイ率いるロシア軍に反対したのは誰ですか? 詳細な回答

▪ モクリツァの記事。 伝説、栽培、応用方法

▪ 記事 超音波深さ計。 無線エレクトロニクスと電気工学の百科事典

▪ 記事 COM ポートの入力における信号のロジック アナライザーのプログラム。 無線エレクトロニクスと電気工学の百科事典

この記事にコメントを残してください:

Имя:


Eメール(オプション):


コメント:





このページのすべての言語

ホームページ | 図書館 | 物品 | サイトマップ | サイトレビュー

www.diagram.com.ua

www.diagram.com.ua
2000-2024