以前トライしたAdafruit 1.8" TFT Shield、Arduino1.0.5や1.5.6-r2では標準のライブラリとしてあらかじめ入っている。
前回の実験はこれ:Adafruit 1.8インチTFTシールド
Adafruit 1.8インチTFTシールド(スイッチサイエンス)
Adafruit 1.8" 18-bit Color TFT Shield w/microSD and Joystick
サンプルスケッチを開くと今後はTFT.hだけをincludeすれば良いらしい。arduino.ccでTFTライブラリの解説を見ると5個の引数もOKなのだが、やってみるとエラーとなった。
TFTLibrary > TFT
これは TFT.h が
を追加すればエラーはなくなる。
さて、標準のライブラリで何か表示させようにもチュートリアルはTFTモジュールのブレイクアウト基板とシールドの説明が一緒になっているのでややわかりにくい。
1.8" TFT Display Breakout and Shield
シールドでの端子は以下の様になっている。
#define sclk 13
#define mosi 11
#define cs 10
#define dc 8
#define rst 0
#define sd_cs 4
ジョイスティックはアナログポートA3。
サンプルスケッチもシールド用にはそのまま使えないので何かデモはないかと探したら、互換シールドを作っている所にあった。
Arduino Colour TFT Shield
が、なぜかジョイスティックがアナログポートA0でポジションの設定も全然互換でないので、ちょっといじった。スイッチのポジションは面倒なので正しく合わせてありません。
https://gist.github.com/houmei/621481ad3260b088a7eb

Arduino UNO / Crowduino(5V/3.3V)で動作確認。
いきなりArduino Dueや86Duino(これにも互換ライブラリがある)でやろうとしてうまく行かなかったのでArduino UNOで実験。リファレンス用の板大事。
追記:
Arduino Dueではダメだった。ハードSPIがUNOと違う&任意端子で指定しても動かず。arduinoのフォーラムでも動作例なし。
Intel Galileoではどうかとやってみたが、TFT.hが呼び出すAVR固有のヘッダがないのでコンパイルエラー。
前回の実験はこれ:Adafruit 1.8インチTFTシールド
Adafruit 1.8インチTFTシールド(スイッチサイエンス)
Adafruit 1.8" 18-bit Color TFT Shield w/microSD and Joystick
サンプルスケッチを開くと今後はTFT.hだけをincludeすれば良いらしい。arduino.ccでTFTライブラリの解説を見ると5個の引数もOKなのだが、やってみるとエラーとなった。
TFTLibrary > TFT
これは TFT.h が
#include "utility/Adafruit_GFX.h"#include "utility/Adafruit_ST7735.h"
とラップしているのだが、その下で
class TFT : public Adafruit_ST7735 {public:TFT(uint8_t CS, uint8_t RS, uint8_t RST);void begin();};
と3引数だけを宣言しているのが原因と思われる。この中に
TFT(uint8_t CS, uint8_t RS, uint8_t SID, uint8_t SCLK, uint8_t RST);
を追加すればエラーはなくなる。
さて、標準のライブラリで何か表示させようにもチュートリアルはTFTモジュールのブレイクアウト基板とシールドの説明が一緒になっているのでややわかりにくい。
1.8" TFT Display Breakout and Shield
シールドでの端子は以下の様になっている。
#define sclk 13
#define mosi 11
#define cs 10
#define dc 8
#define rst 0
#define sd_cs 4
ジョイスティックはアナログポートA3。
サンプルスケッチもシールド用にはそのまま使えないので何かデモはないかと探したら、互換シールドを作っている所にあった。
Arduino Colour TFT Shield
が、なぜかジョイスティックがアナログポートA0でポジションの設定も全然互換でないので、ちょっといじった。スイッチのポジションは面倒なので正しく合わせてありません。
https://gist.github.com/houmei/621481ad3260b088a7eb

Arduino UNO / Crowduino(5V/3.3V)で動作確認。
いきなりArduino Dueや86Duino(これにも互換ライブラリがある)でやろうとしてうまく行かなかったのでArduino UNOで実験。リファレンス用の板大事。
追記:
Arduino Dueではダメだった。ハードSPIがUNOと違う&任意端子で指定しても動かず。arduinoのフォーラムでも動作例なし。
Intel Galileoではどうかとやってみたが、TFT.hが呼び出すAVR固有のヘッダがないのでコンパイルエラー。