これはTFT液晶コントローラーです。Arduino Due とのセットで購入しました。
Arduino Due のシールドとして使えるようなピン配置になっています。なお、3.3V で動くので Mega のような 5V 系 Arduino では使えません。元々は mbed 互換ボード用に設計されたようで、Arduino とピンコンパチの STM32 Nucleo F401RE でも使えると思われます。
基本的には挿したら動く
ハードウェアとしては、Arduino のピン配列に対応したシールドとなっているため、液晶モジュールのフィルムケーブルを接続し、基板をArduino Due に挿せば使えます。但し、液晶によってはディップスイッチでバックライトの電流を抑制する必要があります。私が購入したセットについていた液晶では、2~4のスイッチのうち2つをオフにする必要があるものでした。
ソフトウェアとしては、エプソンから Arduino Due 用や mbed 用のライブラリが用意されています。Arduino IDE では、「ZIP形式のライブラリをインストール」からインストールできます。インストール後、s1d13781_GraphicsLibraryDemo というスケッチを Arduino Due にアップロードすると、ライブラリのデモンストレーションが始まります。
PSP サイズまで対応
解像度は 480×272 (PlayStation Portable のサイズ) まで対応していて、小型の TFT 液晶なら充分使用できるでしょう。7 型液晶などは無理ですが、普通の電子工作で必要になることは稀でしょう。
ライブラリでは裏画面が使えますが、PSP サイズ液晶でフルカラーにすると表画面だけで VRAM が満杯になるので実質的に使用できません。
なお、画面回転に対応していて、長さが不十分なフィルムケーブルでもある程度の自由が利きます。画面の回転はスケッチで設定します。
基板がはみ出る
Arduino Due にスタックして使うと基板の一部がはみ出ますが、裏面にもコネクタが付いていることを考えれば已むを得ません。
通信速度
マイコンとは SPI で通信します。ボード周囲の GPIO ソケットではなく、ボードの真ん中・USB ポートと反対側にある SPI 通信用ピンを使います。通信速度はどうかというと、私の環境では、間にシールド1枚挟んだ状態で SPI クロック 2 分周までは動作しましたが、等速(1 分周)にすると画面が乱れます。
なお、ライブラリのソースコードを読む限り、デフォルトでは 3 分周で動作するようです。
BitBltできる
BitBlt 機能に対応しており、ビットマップ画像表示やフォントを用意した上での文字表示ができます。また、塗りつぶし矩形は高速に表示できます。
フォントを用意できるといっても、日本語フォントを搭載するには Arduino Due のメモリは小さすぎます。日本語を表示するには漢字 ROM が必要です。
また、ちらつきをなくそうとして画面全体をバッファすることもできません。これも Arduino Due のメモリが少なすぎることが原因ですが、マイコンではそれだけのメモリがないのが普通です。
文字表示機能を使うには英字ビットマップフォントが必要ですが、エプソンから用意されているフォントがライブラリに付属します。もちろん自作することもできます。実際にはバイナリファイルのままでは使えず、C 言語のソースコード(実際には const unsigned char[] 型)に変換する必要がありますが、これが意外と面倒です。要は16進数の羅列なのですがコンマ区切りなどいろいろ大変です。私は説明書を読んで Ruby で変換スクリプトを書きました。
なお、等幅フォントだけではなく、プロポーショナルフォントにも対応しています。但し、カーニングのような高度なことはできません。
自作の小型フォントを表示させたところ。これは大文字のみのフォントだが、ライブラリには小文字も使えるフォントが用意されている
-
購入金額
1,620円
-
購入日
2016年06月09日
-
購入場所
シリコンハウス共立
ZIGSOWにログインするとコメントやこのアイテムを持っているユーザー全員に質問できます。