How to use the UTFT Library the TFT LCD in ESP8266
ESP8266 と TFT LCD 240×320 SPI で UTFT Library を使用する方法。 2016.04.18
前置き:
TFT LCD を動かすには Rinky-Dink Electronics の UTFT Library が便利です。
UTFT Library は Arduino, chipKt, TI LaunchPad に対応した多彩なライブラリーです。
ESP8266 が出始めた頃は TFT LCD を動かすライブラリーはありませんでした。
約1年位でしょうか ESP8266 対応のTFT LCD Library が整ってきました。
開発者に大変感謝致します。
ここにはドネーションボタンがあり援助できる方はよろしくお願い致します。
_ 課題:サンプルのデモは速いが「3D Cube」は 非常に速度が遅いです。
_
_ これは ESP8266 への最適化が行われていない為かとも思われます。
:
TFT LCD の重要な機能としてタッチセンスがあります。
使用している TFT LCD は TOUCH SENS と SD CARD が装備されています。
これはLCDの表面にタッチセンスが張られており専用ICがコントロールしています。
タッチセンスがあればスイッチ等のハードが不要で多彩な入力が実現できます。
ただし、まだタッチセンス(UTouch Library)が動く事を確認していません。
理由は 動くライブラリがまだ見つからない為です。
準備:
1. D1 mini with TELEC + TFT LCD 240×320 SPI Module:計1600円。
_
2. Library:gnulabis/UTFT-ESP8266:gnulabis に感謝
_ DLしUTFT-ESP8266-master.zip を解凍する。
_ UTFT-ESP8266-masterフォルダーができます。
_ UTFT-ESP8266-masterの中にある UTFT フォルダーを Library フォルダーへ移動します。
方法:
1. Library>UTFT_ESP8266>ESP8266>UTFT_Demo_320x240_Serial_SW をロード。
2. SPIの配線とスケッチを合わせます。
_ スケッチ設定値:27行目:UTFT myGLCD ( ILI9341_S5P, 13, 14, 15, 5, 4 );
_ 私の配線は以下で、27行目を変更します。
_
_ D1 mini :UTFT myGLCD ( ILI9341_S5P, D7, D5, D1, D8, D4 );
_ ESP8266:UTFT myGLCD ( ILI9341_S5P, 13, 14, 5, 15, 2 );
_ この1行の変更でサンプルデモはエラーも無く動きました。
画像を表示する方法:examples に UTFT_Bitmap サンプルがあります。
_ スケッチ:UTFT フォルダ>examples>Arduino (AVR)>UTFT_Bitmap。
_ 画像変換:Windows 用アプリで変換。例:xx.jpg を x.c に変換します。
_ UTFT フォルダー>Tools>ImageConverter565.exe、ImgConv.exe
_ UTFT Image Converters.pdf を参照の事。
_ この方法は 240×320 の画像を2枚しか表示できません。コンパイルエラーがでます。
_ 240×320で150KByte程度です。このエラーの件は調べていません。
例:Fuji の画像。320×240 pixels 153.6 KBytes。Generated by: ImageConverter 565 v2.3
#include <UTFT.h> extern uint8_t SmallFont[]; UTFT myGLCD ( ILI9341_S5P, D7, D5, D1, D8, D4 ); extern unsigned int fuji[0x12C00]; void setup(){ myGLCD.InitLCD(); myGLCD.setFont(SmallFont); myGLCD.fillScr(255, 255, 255); myGLCD.setColor(255, 255, 255); myGLCD.drawBitmap (0, 0, 320, 240, fuji); } void loop(){ }
参考:
UTFT フォルダのDocumentationの中に重要なマニュアルがあります。
UTFT フォルダ>Documentation>
_ UTFT_Requirements.pdf:Pin Assign。
_ UTFT_Supported_display_modules_&_controllers.pdf:TFT Conrtroller。
_ UTFT.pdf:UTFT Multi-Platform Universal TFT display library Manual:命令表。
感想:
前回、初めてTFT LCDがESP8266で動いて驚きましたが、さらに驚いたのは費用です。
1600円 です。国内のあらゆるESPボードより安く 表示器付きでも遥かに安いのです。
さらに低価格にするにはWeMosへESP-WROOM-02 with TELECを搭載したバージョンを
お願いして出荷してもらう事です。実現すれば 表示器付きで 1049円 が可能になります。
:
Arduinoの時にはUTFTのおかげでTFT LCDを有効に使う事ができました。ESP8266のチップが
出た時はライブラリが無くなにも出来ない状態でしたが このLibraryで動きほっとしました。
サンプルデモの表示は速いですが、3D Cubeが遅い理由は解りません。
他のライブラリーも試してますが理解力に乏しくあいまいながら進めています。
:
上は、Arduinio で 320×480 TFT LCD を使用した時のオシロスコープとFFTです。
下は、32bit Arinc 429 Signal を表示。タッチキーで数値入力や機能の選択をします。
ESP8266は このパラレル方式のLCD 320×480 は GPIOポートが少なく使えません。
Arduinoの5倍の速度を持ちながら GPIOポートが少なく能力を発揮できない訳です。
コメントを残す