ویژگیهای ماژول نمایشگر 1.44 اینچ TFT
نمایشگر TFT از انواع السیدیهای کریستال مایع میباشد که با یک ترانزیستور به هر پیکسل وصل شده است و همچنین علاوه بر مصرف جریان نسبتاً کم، دارای بک لایت (Backlight) نیز میباشد. این ماژول در اندازه 1.44 اینچ و به صورت تمام رنگ، دارای یک صفحه باریک PCB میباشد. رزولوشن این ماژول 128X128 پیکسل و دارای رابط کاربری SPI چهار سیمه و بکلایت سفید است.
جهت دریافت دیتاشیت ماژول نمایشگر 1.44 اینچ TFT اینجا کلیک کنید.
1.44 INCH Display Module Datasheet
معرفی پایه ها (Pinout) ماژول نمایشگر 1.44 اینچ TFT
ماژول نمایشگر 1.44 اینچ TFT دارای 8 پایه به شرح زیر است:
- 3V: تغذیه ماژول
- GND: زمین
- MOSI: خط ارسالی اطلاعات برای پروتکل SPI
- SCK: همزمان سازی برای پروتکل SPI
- CS: انتخاب ماژول برای پروتکل SPI
- RESET: ریست ماژول
- DC: خط دیتا/ دستور ماژول
- LED: کنترل نور پس زمینه ماژول
لوازمی که به آن احتیاج دارید
قطعات مورد نیاز
نرم افزارهای مورد نیاز
راه اندازی ماژول نمایشگر 1.44 اینچ TFT با استفاده از ESP32
گام اول: سیم بندی
مطابق مدار زیر، ماژول را به ESP32 وصل کنید.
گام دوم: نصب کتابخانه
کتابخانه زیر را بر روی آردوینوی خود نصب کنید.
توجه
اگر نیاز به راهنمایی بیشتر برای نصب کتابخانه بر روی آردوینو دارید، می توانید به آموزش نصب کتابخانه بر آردوینو مراجعه کنید.
وارد کتابخانه شده و به دنبال فایل TFT_ILI9163C بگردید.
سپس وارد پوشه settings_ شوید و فایل TFT_ILI9163C_settings.h را باز کنید.
در ابتدای فایل تنظیمات را به شکل زیر تغییر دهید.
//DID YOU HAVE A RED PCB, BLACk PCB or WHAT DISPLAY TYPE?
// ---> SELECT HERE <----
//#define __144_RED_PCB__//128x128
#define __144_BLACK_PCB__//128x128
//#define __22_RED_PCB__//240x320
گام سوم: کد
کد زیر را بر روی ESP32 خود آپلود کنید.
/*
Modify on March 17, 2021
Modify by MohammedDamirchi base of https://github.com/sumotoy/TFT_ILI9163C
Home
*/
#include <SPI.h>
#include <Adafruit_GFX.h>
#include <TFT_ILI9163C.h>
// Color definitions
#define BLACK 0x0000
#define BLUE 0x001F
#define RED 0xF800
#define GREEN 0x07E0
#define CYAN 0x07FF
#define MAGENTA 0xF81F
#define YELLOW 0xFFE0
#define WHITE 0xFFFF
/*
Teensy3.x and Arduino's
You are using 4 wire SPI here, so:
MOSI: 11//Teensy3.x/Arduino UNO (for MEGA/DUE refere to arduino site)
MISO: 12//Teensy3.x/Arduino UNO (for MEGA/DUE refere to arduino site)
SCK: 13//Teensy3.x/Arduino UNO (for MEGA/DUE refere to arduino site)
the rest of pin below:
*/
#define __CS 2
#define __DC 4
/*
Teensy 3.x can use: 2,6,9,10,15,20,21,22,23
Arduino's 8 bit: any
DUE: check arduino site
If you do not use reset, tie it to +3V3
*/
TFT_ILI9163C tft = TFT_ILI9163C(__CS, __DC);
void setup() {
tft.begin();
}
void loop(){
testLines(random(0x00ff,0xffff));
delay(100);
testText();
delay(500);
}
unsigned long testText() {
tft.fillScreen();
unsigned long start = micros();
tft.setCursor(0, 0);
tft.setTextColor(WHITE);
tft.setTextSize(1);
tft.println("Hello World!");
tft.setTextColor(YELLOW);
tft.setTextSize(2);
tft.println(1234.56);
tft.setTextColor(RED);
tft.setTextSize(3);
tft.println(0xDEAD, HEX);
tft.println();
tft.setTextColor(GREEN);
tft.setTextSize(4);
tft.println("Hello");
return micros() - start;
}
unsigned long testLines(uint16_t color) {
tft.fillScreen();
unsigned long start, t;
int x1, y1, x2, y2,
w = tft.width(),
h = tft.height();
tft.fillScreen();
x1 = y1 = 0;
y2 = h - 1;
start = micros();
for(x2=0; x2<w; x2+=6) tft.drawLine(x1, y1, x2, y2, color);
x2 = w - 1;
for(y2=0; y2<h; y2+=6) tft.drawLine(x1, y1, x2, y2, color);
t = micros() - start; // fillScreen doesn't count against timing
tft.fillScreen();
x1 = w - 1;
y1 = 0;
y2 = h - 1;
start = micros();
for(x2=0; x2<w; x2+=6) tft.drawLine(x1, y1, x2, y2, color);
x2 = 0;
for(y2=0; y2<h; y2+=6) tft.drawLine(x1, y1, x2, y2, color);
t += micros() - start;
tft.fillScreen();
x1 = 0;
y1 = h - 1;
y2 = 0;
start = micros();
for(x2=0; x2<w; x2+=6) tft.drawLine(x1, y1, x2, y2, color);
x2 = w - 1;
for(y2=0; y2<h; y2+=6) tft.drawLine(x1, y1, x2, y2, color);
t += micros() - start;
tft.fillScreen();
x1 = w - 1;
y1 = h - 1;
y2 = 0;
start = micros();
for(x2=0; x2<w; x2+=6) tft.drawLine(x1, y1, x2, y2, color);
x2 = 0;
for(y2=0; y2<h; y2+=6) tft.drawLine(x1, y1, x2, y2, color);
return micros() - start;
}
این کد جهت تست نمایشگر میباشد و انواع اشکال و طرحهای مختلف را به صورت گرافیکی نمایش میدهد.
Comments (2)
سلام
لطفا طریقه پیاده سازی تصویر یا ویدئوی ارسالی از یک ماژول وایفای متصل به دوربین مثل esp-cam را توسط ماژول ثسح متصل به نمایشگر چند اینچی رو بیان کنید .
با سلام
در زمینه دریافت و پخش ویدیو در نمایشگر ها چالش های بسیار زیادی می باشد.
برای این موضوع باید ابتدا لایبراری نمایشگر را بررسی کنید.
یکی از مواردی که می توانید انجام بدهید تصویر ارسالی از سمت ESP را به صورت jpeg کنید و در این سمت نیز با استفاده از لایبراری TFT_eSPI و دیکودر jepg تصویر را به نمایشگر بدهید.
ولی توجه داشته باشید که سرعت پخش بسیار پایین می باشد.
مورد دیگر نیز بهتر است از لایبراری ها و آموزش هایی که این کار را کرده اند استفاده کنید.