マイコンで使用するフォントデータ作成用のアプリを作成しました。またLCDへ数字を1文字表示しました。
フォントデータ作成ツール
概要と使い方
WindowsのTrueTypeのフォントデータから、マイコンで使用するビットマップデータをつくるアプリです。
フォント(TestFont0123-Regular.ttf)をパソコンにインストールします。
アプリ起動後、ピクセルサイズを指定します。(8x16または48x96)
作成画面が表示されます。(48x96選択時には、画面表示まで時間がかかります。)
Inputの欄に、文字を入力します。(1文字、使用しているフォントにある数字)
「Set」ボタンで、文字がビットデータに変換されます。
各ピクセル毎のON/OFF編集がマウスのクリックで行えます。
編集後のデータは、「Save Bit」ボタンで保存します。また読み込みは「Load Bit」ボタンで行います。マイコンで使用するデータは、「Save Pack Bit」ボタンで保存します。
注:「Set」ボタンの直後に限り、「Up]、「Down」、「Left」、「Right」ボタンで画像を移動できます。一度、ピクセルのON/OFF編集すると、「Up]、「Down」、「Left」、「Right」ボタンは無効となります。
フォント
TrueTypeフォントは、BitFontMaker2で作成しました。
フォント名は、ファイル(MainWindow.xaml.cs)の変数 ft_font_name で設定しています。
(他のフォントに変更も可能ですがフォントのライセンスに注意が必要です。)
フロー
マイコン側の処理
フォントデータの展開
フォントデータ(パソコンで作成したPack Bit情報)を、ILI9488へ送信するためには、2ピクセル毎のOn/Off情報から色の情報を含めたデータを作成します。
文字色=緑、背景色=黒 とした場合の送信データの例です。
col=0,row=0から、col方向に2ビットの情報を得て、
2つのピクセルがOFF,OFFの場合、「黒」「黒」
OFF,ONの場合、「黒」「緑」
ON,OFFの場合、「緑」「黒」
ON,ONの場合、「緑」「緑」となるデータを作成します。
row(page) 0~15の範囲でくりかえします。
フローと表示例
インターフェイスはDBI Type-C Option3(8 bit転送 )を使用しています。
ファイル一覧
パソコン側
下記のファイルがGitHubにあります。
MainWindow.xaml,
MainWindow.xaml.cs
SetPixelSize.xaml
SetPixelSize.xaml.cs
TestFont0123-Regular.ttf
プロジェクトを作成するためには、Visusal Studio 2022を起動後、「新しいプロジェクトの作成」で、「C# WPFアプリ(.NET Framework) (Windows Presentation Foundation クライアント アプリケーション)(C#, XAML, Windows, デスクトップ) 」を指定します。プロジェクト名に「MakeBitMap」を入力します。空のMainWIndow.xamlとMainWIndow.xaml.csが作成されます。
SetPixelSize.xaml は別 Windowになっています。追加する方法は、(https://vabc.hatenadiary.jp/entry/2021/11/21/085446)と同様です。ウィンドウ(WPF)名を、「SetPixelSize」として「空」のファイルを作成します。
開発環境: Windows 11 Pro , 22H2 .NET Framework 4.8
Microsoft Visual Studio Community 2022 (64 ビット) – Current Version 17.3.5
GitHub登録場所: https://github.com/vABCWork/MakeBitMap
マイコン側
(ルネサス提供ファイルとは、CS+の新規プロジェクトで作成されるファイルです。)
使用する割り込み処理:
ルネサス提供ファイルの修正(割り込み処理のコメント化)
本プログラムで使用する割り込み処理は、spi.cで記述するようにしました。
ルネサス提供ファイルの intprg.cとvect.hで記載されている、同名の割り込みルーチンをコメント化します。