« SH-TINY その3 リアルタイム OS | Main | SH-TINY その5 漢字ターミナルを作る »

July 08, 2007

SH-TINY その4 秋月のグラフィック液晶で漢字を表示

E0951今回は、秋月のグラフィック液晶(122x32 ドット)を使い、さらにリアルタイム OS の HOS-V4 を使って漢字を表示する方法を示す。

左の写真は、16x16 の東雲フォントを使って表示した例だ。
(クリックすると画像が拡大する)

難しい漢字も表示できているが、半角で15文字x2行、全角で7文字x2行と少ししか表示できないのが難点だ。

E0952左の写真は、12x12 の東雲フォントを使って表示した例だ。

(クリックすると画像が拡大する)

少し字が小さくなっている。

文字数は、半角で20文字x2行、全角で10文字x2行だ。

E0953左の写真は、8x8 の美咲フォントを使って表示した例だ。

(クリックすると画像が拡大する)

かなり、字が小さく、複雑な文字は判別が困難だ。

文字数は、半角で30文字x4行、全角で15文字x4行だ。

E0954左の写真は、8x8 の恵梨沙フォントを使って表示している。ただし、半角文字は、美咲フォントを使っている。

(クリックすると画像が拡大する)

かなり、字が小さく、複雑な文字は判別が困難だ。

文字数は、半角で30文字x4行、全角で15文字x4行だ。

回路図は、下記の通りである。
このグラフィック液晶は、2kHz のクロックが必要なのだが、このクロックは、SH-TINY のタイマー機能を使って作っている。

E0955(クリックすると画像が拡大する)

フォントのダウンロード
フォントは、X Window 用のビットマップフォントで、フリーでダウンロードできるものを使用している。
フリーと言っても、ライセンスの問題もあり、フォントの転載は難しいので、直接下記のリンクからダウンロードしてもらいたい。
東雲 ビットマップフォントファミリー から shinonome-0.9.11p1.tar.bz2 をダウンロード

美咲フォント から mskbdb10.tar.gz をダウンロード

恵梨沙フォントファミリー から elisau10.tgz をダウンロード

$ cd ~/hos-v4
$ mkdir fonts
$ cd fonts
$ tar jxvf shinonome-0.9.11p1.tar.bz2
$ mkdir misaki
$ cd misaki
$ tar zxvf mskbdb10.tar.gz
$ cd ..
$ mkdir elisau10
$ cd elisau10
$ tar zxvf elisau10.tgz

プログラム
sh7125glcd.tgzをダウンロード

$ cd ~/hos-v4/sample/
$ tar zxvf sh7125glcd.tgz
$ cd sh7125glcd/
$ make -f make -f gcc.mak

プログラムを見たら判ると思うが、ruby で、出力する文字列から、必要な漢字フォントのデータを配列化して ROM に書き込むようにしている。このため、ruby のインストールが必須である。

できた sampleRom.mot を SH-TINY ボードに書き込むと、グラフィック液晶に漢字文字列を表示しつつ、「いわゆる哲学者の食事の問題」を実行する。

今回の方法では、漢字フォントの内、必要なデータだけを切り出して、SH-TINY の ROM に書き込んでいる。プログラムが予め表示すべき文字列を用意している場合は、この方法で十分だろう。

SH-TINY の ROM は、128K バイトなので、16x16 や 12x12 ドットの漢字のデータを全て書き込む事はできない。しかし、8x8 ドットの漢字フォントなら、JIS 第2水準まで全て含めても 53Kバイトで収まる。あらゆる漢字を表示する必要がある場合、漢字フォントを ROM に書き込む方法もあり得る。

|

« SH-TINY その3 リアルタイム OS | Main | SH-TINY その5 漢字ターミナルを作る »

Comments

The comments to this entry are closed.

TrackBack


Listed below are links to weblogs that reference SH-TINY その4 秋月のグラフィック液晶で漢字を表示:

« SH-TINY その3 リアルタイム OS | Main | SH-TINY その5 漢字ターミナルを作る »