グラフィックLCDモジュールに表示を行う (2/2)

〔前のページに戻る〕


 前のページで、128x64ドットグラフィックLCDのTG12864E−02Aを使って文字や図形を表示させました。
GLCD10  このページでは、LCD画面にドットパターンデータを表示させる方法と
 データを作成するツールについて記載しておきます。
 例えば、左の様なドットパターン絵を描く事が出来ます。
 ってぇ、おいおい、RPGゲームでも作る気かい!みたいなぁ

《ドットパターン作成ツールについて》

ビジュアルベーシック(VB2010)で作成しました。
高級な機能は無く、簡単な機能しか有りませんので、使っていて不満が出てくるかもです。
需要が有るようなら少しは変更しても良いかな〜っと..........

インストール方法
VBで作成したプログラムの配布はこれで良いのか不明ですが、
他のPCに持って行き取り合えずインストールが出来たのでその方法を書いておきます。

@まず、こちらからダウンロードして下さい。
 (2014/5/10現在 128x64の大きさまで編集できなかった不具合を変更しています) *1)

Aダウンロードファイルを解凍して、\発行\setup.exeを実行します。
 .NET Framework4がインストールしてない場合はBの操作に進み、 インストールしてある場合はDからの操作に進みます。

Bこの画面が表示されたら[同意する(A)]をクリックして下さい。

Transfer10

C次の画面が表示され、.NET Framework4のダウンロードとインストールが行われます。
 (インターネットに接続されていないとエラーで終了します)

Transfer11

D終了すると、次の画面が表示されるので[インストール(I)]ボタンをクリックして下さい。
 画像の「名前:」が異なっていますが気にしないでね、GLCDdotPtnToolが正解です。

Transfer12

 インストールが終了すると、「グラフィックLCDのドットパターン作成ツール」の画面が表示されます。
 もし、ここでエラー表示画面が出た場合は、再度setup.exeを実行すればOKと思います。

使い方

GLCD11  左がツールの初期画面です。
 ドットパターンのサイズは、8x8が初期値です。
 
 網線(グリッド)内の四角枠をマウスの左ボタン
 クリックする事によりドットをON/OFFさせます。
 
 「表示(V)」メニュー
 
 GLCD123
 [パターン表示画面(B)]をクリックする度に下記画面を
 表示したり消したりします。
 GLCD123-1
 この画面でドット絵の出来ぐわいを確認できます。


「設定(S)」メニュー

GLCD122
ドットパターンのサイズを変更する場合に使用します。
[グリッド(G)]をクリックすると下記画面が表示されます。
GLCD122-1
 横(X)と縦(Y)の項目にサイズを入力します、横は0〜128、
 縦は0〜64です。ただし、縦は8ドット単位での入力とします。
 入力後[決定]ボタンをクリックします。

 現在作成中のドット絵を残してサイズを変更したい場合は、
 ”□作成中のデータを残してサイズを変更する”
 をチェックします。


「ファイル(F)」メニュー

GLCD121
作成したドットパターンデータの保存[保存(S)]や読込み[開く(S)]を行います。
また、データの保存・読込みはグラフィックLCDのTG12864E-02A(S6B0107相当)の画面構成に
合わせています、なので、他のLCDでは使えないと思われます。
(他のLCD持っていないのでぇ、にゃんとも言えないのですがぁ.......)

前のページで書いている、イメージデータの読込みと保存も可能です、なので、編集も可能ですね。

xxxx.hのファイルタイプで保存した場合は下記の様になります。(下例でのパタンサイズは16x16)
(前のページではPatternData.hと言う名前で作成しています。)
const char PatternData[34] = {
 16,16,
 0xE0,0x06,0x6F,0x17,0x7B,0x9C,0x3E,0x8E,0x8E,0x3E,0x9C,0x7B,0x17,0x6F,0x06,0xE0,
 0x05,0x02,0x05,0x05,0x73,0x8D,0x79,0x42,0x42,0x79,0xAD,0x4B,0x35,0x05,0x02,0x05,
 } ;
xxxx.txtのファイルタイプで保存した場合は下記の様になります。(下例でのパタンサイズは16x16)
 0xE0,0x06,0x6F,0x17,0x7B,0x9C,0x3E,0x8E,0x8E,0x3E,0x9C,0x7B,0x17,0x6F,0x06,0xE0,
 0x05,0x02,0x05,0x05,0x73,0x8D,0x79,0x42,0x42,0x79,0xAD,0x4B,0x35,0x05,0x02,0x05,
尚、このxxxx.txtタイプを読込む場合はサイズが不明ですので、読込む際にサイズを入力します。

GLCD13-1 ボタン

網線(グリッド)内でマウスの左ボタンを押したまま移動させると、 ドットが連続的に塗る様に表示(ドットON)されます。
そこで、このボタンをクリックしてから同様の操作を行うと、今度はドットが連続的に消えます(ドットOFF)。
また、このボタンはマウスをドラッグ操作する場合のみで、ワンクリックでのドットON/OFFは関係ありません。

GLCD13-2 ボタン

範囲を指定して、その範囲内の[移動][複写][塗り潰し][消す][反転]を操作します。
GLCD13-21
 網線(グリッド)内でマウスの右ボタンを押したまま左上から右下へ斜めに移動させて範囲
 を指定します、左図の様に赤線枠で範囲が表示(指定)されます。
 と同時に操作ボタンもONします。


GLCD13-3 ボタン

@移動させる範囲を指定します。
A[移動]ボタンをクリックします。
B網線(グリッド)内の移動したい場所でマウスの右ボタンを押します。
 または、右ボタンを押たまま移動したい場所にマウスを移動(ドラッグ&ドロップ)させます。
 (移動範囲の目安で青線枠が表示されます、移動させましょう)
C移動の[確認ウインドウ画面]が表示されます[はい]ボタンをクリックして、完了です。

GLCD13-4 ボタン

@コピーする範囲を指定します。
A[複写]ボタンをクリックします。
B網線(グリッド)内の移動したい場所でマウスの右ボタンを押します。
 または、右ボタンを押たまま移動したい場所にマウスを移動(ドラッグ&ドロップ)させます。
 (移動範囲の目安で青線枠が表示されます、移動させましょう)
C複写の[確認ウインドウ画面]が表示されます[はい]ボタンをクリックします。
 また、B〜Cを繰り返せば何回もコピー出来ます。
D[複写]ボタンをクリックして、コピーモードからぬけます。

GLCD13-5 ボタン

@範囲を指定します。
A[塗り]ボタンをクリックします。
B選択範囲内がドットで塗りつぶされます。(ドットON)

GLCD13-6 ボタン

@範囲を指定します。
A[消す]ボタンをクリックします。
B選択範囲内のドットは消去されます。(ドットOFF)

GLCD13-7 ボタン

@範囲を指定します。
A[反転]ボタンをクリックします。
B選択範囲内のドットが白(ON)黒(OFF)反転します。

GLCD13-8 ボタン

円を描画する関数を作成したのですが、楕円になったりでぇので上手くいかなくて諦めてその代案で このおまけ的な機能を付けた次第です。

操作方法1
GLCD13-81  @[円]ボタンをクリックします。(選択ボタンは押されていないとする)
 A円は四角形に接する様に作成されます、四角形の左上角の座標を入力します。
 B円の直径を入力します。(データ入力画面は描かれる円の線にかからない様に
                 入力画面を移動させた方が良いです)
 C緑の枠線で円が表示されます。
 D左図の様に、緑の線を目安に、線に近い枠にドットを打って行き円を作成します。

操作方法2
@選択範囲を指定します。
A[円]ボタンをクリックします。
B範囲の赤線四角枠内に円が表示されます。(楕円なども表示可能です)
C緑の線を目安に、線に近い枠にドットを打って行き円を作成します。

注意)[選択]ボタンをクリックして、範囲を指定しないまま[円]ボタンをクリックした場合は、
適当な位置に適当な円が描かれるでしょう。

フォントデータの読込みについて

GLCD14  前のページに記載した、フォントデータ"font.h","KanjiFont12.h"を
 読込む事が出来ます。

 "font.h"を読込む時はキャラクタコードを入力します、
 コードは0x20〜0xDFまでです。
 例えばキャラクタ"A"ならコードは0x41となります。
 キャラクタコード表はこちらを参照下さい。
 コードデータの入力チェックは行っていません間違うと誤作動起こすかもです。


"KanjiFont12.h"を読込む時は、読込みたい漢字1文字を入力します。
漢字は第1水準〜第2水準までOKです。

[フォントデータを保存]
この機能を使用すると変更したフォントデータがファイルに保存されます。

"font.h"データを保存すると
{0x01,0x71,0x09,0x05,0x03},
といった感じに保存されます。

"KanjiFont12.h"データを保存すると
{0xF4,0x52,0xFA,0x56,0xF0,0x44,0xD4,0x54,0x7F,0x54,0xD4,0x0,0xD,0x1,0xD,0x1,0xD,0x0,0xF,0x5,0x5,0x5,0xF,0x0},
といった感じに保存されます。

なのでぇ、元の"font.h"や"KanjiFont12.h"ファイル内容と入れ替える事は行っていません。
自分で手動でテキストエディターを使って書き換える必要が有ります。

ドットパターンデータを表示させる方法

前のページを見て参照してもらいたいのですが、
GLCD_PutPattern(col,pg,p) の関数を使って表示する事になります。
  col : 描画する位置で画面の横アドレス(0-127)のカラム位置を指定する
  pg : 描画する位置で画面の縦アドレス(0-7)のページ位置を指定する
  *p : 描画するドットパターンデータを格納した場所を指定する

また、描画位置の縦指定はピクセル(0-64)でなく、ページ(0-7)位置です注意
これはプログラムサイズも少なくできるしぃ、早く表示もできるのでこの仕様です、
縦を0-64ピクセル指定にする様に作っても良いのですがぁ、とりあえずぅこのままです。
(必要な人は、GLCD_PutcK関数を参考に自分でトライしてみて下さい。)



バグ修正(*1) 2014/05/10


【きむ茶工房ガレージハウス】
Copyright (C) 2006-2014 Shigehiro Kimura All Rights Reserved.