1.8 インチ TFT LCD シールド (2)
Arduino 用の S6D0151 ライブラリは、Adafruit 製の「Adafruit_ST7735」を元に手を加えて、比較的簡単に実現でき、「tft_S6D0151」と名づけました。
Yahoo! ボックス上 (→こちら) に公開しました。
(2017 年 5 月 27 日追記: 画面の回転角が 90°および 270°の場合にビットマップ表示が崩れるバグを修正しました)
上記リンクをクリックすると Yahoo! ボックスが開きます。
Adafruit 1.8" TFT LCD シールドでのグラフィックスの利用には
Adafruit_GFX
Adafruit_ST7735
のふたつの Arduino ライブラリが必要になりますが、「Adafruit_GFX」ライブラリはそのままで利用し、「Arduino_ST7735」ライブラリの方は「tft_S6D0151」ライブラリに入れ替えて利用する形になります。
ライブラリのインストール方法は通常の他のライブラリと変わりありません。 Arduino IDE メニューから
スケッチ / ライブラリをインクルード / .ZIP 形式のライブラリをインストール...
と進んで、上のリンクからダウンロードしておいた .zip ファイルを読み込ませるか、あるいは、手動で
<スケッチブックフォルダ>/libraries/
の下に .zip ファイルを展開します。
「Adafruit_ST7735」ライブラリに付属しているサンプル・プログラム
graphictest - 各種グラフィックのテスト
rotationtest - 画面回転 (0°、90°、180°、270°) のテスト
shieldtest - ジョイスティック操作の読み取りと表示、「parrot.bmp」の表示
spiftfbitmap - SD カードのルート・ディレクトリにある「parrot.bmp」の表示
で動作を確認しています。
「soft_spitftbitmap」プログラムについては、「SD」ライブラリの初期化の部分でコンパイル・エラーとなり、実行できませんでした
上記のプログラム中の
#include <Adafruit_ST7735.h> // Hardware-specific library Adafruit_ST7735 tft = Adafruit_ST7735(TFT_CS, TFT_DC, TFT_RST);
の 3 箇所の「Adafruit_ST7735」を「tft_S6D0151」に置き換え、
#include <tft_S6D0151.h> // Hardware-specific library tft_S6D0151 tft = tft_S6D0151(TFT_CS, TFT_DC, TFT_RST);