■KS0108 ライブラリでできること
サンプルのスケッチにあるように、次の使用例のような関数が使えます。座標は左上が (0, 0) で右下が (127, 63) です。WHITE または BLACK で、点を消す/点を描くことを指定します。残念ながら、そのままで扱えるフォントは英数字のみです。
■フォントを作る
詳細は省きますが、フォントを作るには GLCDFontCreator2 (KS0108 Graphics Library)のページからダウンロードできる)を使います。PC のフォントをベースにしてフォントを作成できるので、割と簡単にできるでしょう。フォントを作成したら Export でヘッダ・ファイル(たとえば myfont.h)に保存し、中身を自分のスケッチにコピーすると簡単に使えます。


■カウントダウン
古い映画の最初にあるようなカウントダウンを作ってみました。9→8→...→2→1とカウントダウンしていき、0秒になると画面が消えます。しばらくすると、また9からカウントダウンします。
スケッチでは、GLCDFontCreator2 を使って作った 0 から 9 のフォントを使って文字を表示しています。円を書くように線を引く位置は、あらかじめ計算しておいて配列にしています。
作ってみたスケッチ:GLCD_cdn.pde
サンプルのスケッチにあるように、次の使用例のような関数が使えます。座標は左上が (0, 0) で右下が (127, 63) です。WHITE または BLACK で、点を消す/点を描くことを指定します。残念ながら、そのままで扱えるフォントは英数字のみです。
- GLCD.ClearScreen(); //画面を消す
- GLCD.DrawCircle(x, y, r, BLACK); //中心(x, y), 半径 r の円を描く
- GLCD.DrawLine(x1, y1, x2, y2) //(x1, y1) と (x2, y2) を結ぶ直線を描く
- GLCD.DrawRect(x1, y1, x2, y2, BLACK) //左上が(x1, y1) 右下が (x2, y2) の四角を描く
- GLCD.DrawRoundRect(x1, y1, x2, y2, r, BLACK) //左上が(x1, y1) 右下が (x2, y2)で角の丸みがrの、角が丸い四角を描く
- GLCD.FillRect(x1, y1, x2, y2, WHITE); //左上が(x1, y1) 右下が (x2, y2) の四角を描き、中を塗りつぶす
- GLCD.GotoXY(x, y) //次に書く文字の左上の位置を (x, y) に変える
- GLCD.Init(NON_INVERTED); //初期化する。setup() で呼び出す
- GLCD.Puts("Hello"); //文字列を書く
- GLCD.PutChar(c); //文字cを書く
- GLCD.PrintNumber(n); //数字nを10進数で書く
- GLCD.SelectFont(フォントの変数名); //フォントを選ぶ
■フォントを作る
詳細は省きますが、フォントを作るには GLCDFontCreator2 (KS0108 Graphics Library)のページからダウンロードできる)を使います。PC のフォントをベースにしてフォントを作成できるので、割と簡単にできるでしょう。フォントを作成したら Export でヘッダ・ファイル(たとえば myfont.h)に保存し、中身を自分のスケッチにコピーすると簡単に使えます。

File→NewFont で新しいフォントを作る

できあがったら export する。保存(Save)したファイルは GLCDFontCreator2 の形式なので Arduino では扱えないことに注意する。
■カウントダウン
古い映画の最初にあるようなカウントダウンを作ってみました。9→8→...→2→1とカウントダウンしていき、0秒になると画面が消えます。しばらくすると、また9からカウントダウンします。
スケッチでは、GLCDFontCreator2 を使って作った 0 から 9 のフォントを使って文字を表示しています。円を書くように線を引く位置は、あらかじめ計算しておいて配列にしています。
作ってみたスケッチ:GLCD_cdn.pde
<光永法明>


コメントする