Texnologiya tft tn. TFT displey texnologiyasi. TFT texnologiyasi nima

Biz Arduino bilan TFT LCD displeylardan qanday foydalanishni bilamiz, asosiy buyruqlardan boshlab va professional dizayngacha.

Ushbu maqolada siz Arduino platalari bilan TFT LCD-dan qanday foydalanishni o'rganasiz. Biz asosiy buyruqlarni ko'rib chiqamiz, shuningdek, professional dizayn va texnologiyani o'rganamiz. Rejalar ortida statistika maydonini o'qish mumkin:

  • matnlarni, belgilarni va raqamlarni kerakli shriftda ko'rsatish;
  • kolo, trikutnik, kvadrat va boshqalar kabi figuralarni chizish;
  • ekranda images.bmp ko'rsatish;
  • rangni o'rash va teskari o'zgartirish kabi ekran parametrlarini o'zgartirish;
  • Arduino yordamida animatsiyani ko'rsatish.

Vikipediyadan: Faol matritsaga ega noyob kristalli displey (TFT LCD, inglizcha yupqa plyonkali tranzistor) - bu nozik plyonkali tranzistorlar bilan qoplangan faol matritsa o'rnatilgan noyob kristalli displeyning bir turi.

Elektronika loyihalarida apparat va tizim o'rtasida interfeys yaratish muhim ahamiyatga ega. Ushbu interfeys tegishli ma'lumotlarni, menyularni va kirish qulayligini ko'rsatish usullari bilan yaratilishi mumkin. Garny dizayni kamroq ahamiyatga ega emas.

Va bir qator tarkibiy qismlar mavjud. LEDlar, 7 segmentli modullar, grafik displeylar va ko'p rangli TFT displeylar. Loyihalaringiz uchun to'g'ri komponent kompyuter va protsessor quvvati bilan o'zaro ta'sir qilish kabi ma'lumotlar miqdorida yotadi.

TFT LCD displey nodir kristall displeyning (LCD) varianti bo‘lib, u fokus va kontrast kabi tasvir ravshanligini yaxshilash uchun ingichka tolali tranzistor (TFT) texnologiyasidan foydalanadi. TFT LCD faol matritsali PK displey bo'lib, uni passiv matritsali PK displeylari yoki to'g'ridan-to'g'ri ko'p segmentli panelli oddiy PK displeylari bilan almashtirish mumkin.

Arduino loyihalari past protsessor chastotasiga ega. Shu tarzda, yuqori aniqlik va yuqori sifatli grafikalarning murakkab tasvirlarini namoyish qilish mumkin emas. Shuning uchun oddiy buyruqlar va ma'lumotlarni ko'rsatish uchun bir nechta rangli TFT displeylardan foydalanish mumkin.

Ushbu maqola ma'lumotlar, grafiklar, menyular va boshqalarni ko'rsatish uchun kutubxonalar va ilg'or texnologiyalardan foydalanadi. professional dizayn bilan. Shunday qilib, sizning loyihangiz qanday bo'lishidan qat'i nazar, ajoyib ko'rinadi.

Qanday o'lcham? Qanday nazoratchi?

Ekranlarning o'lchami loyiha parametrlariga ta'sir qiladi. Ajoyib displey o'zingdan oldinga chiqma. Yuqori sifatli belgilar va tasvirlarni ko'rsatishni istasangiz, tanlashingiz kerak katta hajm ko'proq bilan ko'rsatish baland alohida bino. Bu sizning tasmangizning suyuqligini o'zgartiradi, ko'proq joy ajratadi va ishga tushirish uchun ko'proq suyuqlik chiqaradi.

Shunday qilib, birinchi navbatda, siz qo'lning alohidaligini, harakatchanligini, tafsilotlarni, rasmlarning rangi va hajmini, matnlar va raqamlarni tekshirishingiz kerak. Biz Arduino displeylarining mashhur o'lchamlarini taqdim etamiz, masalan:

  • 3,5 dyuym 480 × 320,
  • 2,8 dyuym 400 × 240,
  • 2,4 dyuym 320 × 240,
  • 1,8 dyuymli 220 × 176.

To'g'ri displeyni tebranib, to'g'ri boshqaruvchini tebranish vaqti keldi. Agar siz belgilar, matnlar, raqamlar va statik tasvirlarni ko'rsatishni istasangiz va displey tezligi muhim bo'lmasa, Atmega328 Arduino to'g'ri tanlovdir.

Agar kod hajmi katta bo'lsa, UNO etarli bo'lmasligi mumkin. Siz vikorist ham qilishingiz mumkin. Va qanday qilib yuqori darajadagi ajratish va yo'nalish bilan tasvirlarni ko'rsatishni xohlaysiz? yuqori tezlik Siz Arduino DUE kabi ARM Arduino modullaridan foydalanish uchun javobgarsiz.

Haydovchilar va kutubxonalar

Elektronika/kompyuter qurilmalarida displey drayveri tashuvchi deb ataladi. integral sxema(yoki siz muqobil ravishda diskret mantiq va boshqa komponentlardan iborat oxirgi mashinani joylashtirishingiz mumkin), bu mikroprotsessor, mikrokontroller, ASIC yoki periferik interfeys o'rtasida interfeys funktsiyasini ta'minlaydi. muhim ahamiyatga ega va ma'lum turdagi displey qurilmasi, masalan, LCD, LED, OLED, ePaper, CRT, Nixie va boshqalar.

Displey drayveri odatda TTL, CMOS, RS232, SPI, I2C va boshqalar kabi standart universal ketma-ket yoki parallel interfeyslardan buyruqlar va ma'lumotlarni qabul qiladi. Displeyda kerakli matn yoki tasvirni ko'rsatish uchun o'tkazuvchan kuchlanish, oqim va demultiplekslash bilan signallarni hosil qiladi.

PK displeylarini ishlab chiquvchilar o'z mahsulotlari uchun turli drayverlardan foydalanadilar. Ulardan ba'zilari mashhur, ammo ba'zilari noma'lum. Ekranni osongina ishga tushirish uchun siz LCD Arduino kutubxonalaridan foydalanishingiz va ularni kodingizga qo'shishingiz kerak. Aks holda, displeyni ishga tushirish qiyinroq bo'lishi mumkin. Internetda juda ko'p bepul kutubxonalar mavjud, ammo kutubxonalardagi muhim nuqta ularning PK displey drayveri bilan chalkashligidir. PK displey drayveringiz kutubxonangiz tufayli xato. Ushbu maqola Adafruit GFX kutubxonasi va MCUFRIEND KBV kutubxonasi va dastur kodidan foydalanadi. Siz ularni boshqa elchilarga jalb qilishingiz mumkin.

MCUFRIEND KBV arxivini oching va MCUFRIEND_kbv.CPP ni oching. Siz MCUFRIEND kutubxonasi tomonidan qo'llab-quvvatlanadigan drayverlar ro'yxatini ko'rasiz.

Papkani dumba bilan oching (inglizcha - misol). Bu erda Arduino da ishga tushirilishi mumkin bo'lgan kodli ilovalar ro'yxati keltirilgan. PK displeyni ulang va dumbalarini ag'daring.

Aksessuarlar ro'yxati

TFT LCD bilan bog'liq ko'plab loyihalarni amalga oshirish uchun biz allaqachon muhokama qilganimizdek, biz komponentlar to'plamiga muhtojmiz:

  • 3,5 dyuymli ElectroPeak TFT rangli displey × 1
  • 2,4" TFT displey LCD ElectroPeak × 1
  • Arduino UNO R3 × 1
  • Arduino Mega 2560×1
  • Arduino DUE × 1

Dasturiy ta'minot xavfsizligi

Bizga robotlar uchun Arduino ham kerak.

Kod

Siz kutubxonani qo'shishingiz va keyin kodni olishingiz kerak. Avval nimani ishga tushirasiz? Arduino taxtasi, maqtanmang. Faqat quyidagilarni yozing:

  • Bizning veb-saytimizga yoki www.arduino.cc/en/Main/Software veb-saytiga o'ting va zavqlaning xavfsizlik dasturi OS uchun. Iltimos, o'rnatishdan oldin xavfsizlik dasturini o'rnating.
  • Ishga tushirish muhiti Arduino sxemalari, aniq matn muharriri Keyin kodni matn muharririga nusxalash.
  • Eskizga o'ting va kutubxonalarni kengaytiring. "ZIP kutubxonasini qo'shish" tugmasini bosing va kutubxonalarni qo'shing.
  • "Asboblar va taxtalar" bo'limida taxtani tanlang, Arduino taxtasini tanlang.
  • Arduino-ni kompyuterga ulang va MAQOMOTI portini "Asboblar va port" ga o'rnating.
  • "Kirish" tugmasini bosing (strelka).
  • Endi hammasi hal bo'ldi!

Dumba kodini olgandan so'ng, PK displeyida tasvirlarni qanday yaratishni aniqlash vaqti keldi.

Kutubxona

#o'z ichiga "Adafruit_GFX.h" #o'z ichiga "MCUFRIEND_kbv.h"

Birinchi qator asosiyni oldi grafik kutubxona displeylar uchun (Adafruit tomonidan yozilgan).

Yana biri MCUFRIEND Arduino ekran drayverlarini qo'llab-quvvatlaydigan kutubxonani taqdim etadi.

#include "TouchScreen.h" // agar siz sensorli ekranni ko'rsatmoqchi bo'lsangiz #include "bitmap_mono.h" // ko'rsatmoqchi bo'lsangiz tasvir rasteri kutubxonadan #include "bitmap_RGB.h" // kutubxonadan rastrli tasvirlarni ko'rsatmoqchi bo'lsangiz #include "Fonts/FreeSans9pt7b.h" // agar sizga boshqa shriftlar kerak bo'lsa #include "Fonts/FreeSans12pt7b.h" // agar sizga boshqa shriftlar kerak #include "Fonts/FreeSerif12pt7b.h" // agar sizga boshqa shriftlar kerak bo'lsa #include "FreeDefaultFonts.h" // agar sizga boshqa shriftlar kerak bo'lsa #include "SPI.h" // bitmap tasvirlarni ko'rsatish uchun sdcard manbasi # "SD .h" ni o'z ichiga oladi

Bu kutubxonalar darhol talab qilinmaydi, lekin siz ularni qo'shishingiz mumkin.

Asosiy buyruqlar

Sinf va ob'ekt

//(int CS=A3, int RS=A2, int WR=A1, int RD=A0, int RST=A4) MCUFRIEND_kbv tft(A3, A2, A1, A0, A4);

Ushbu seriya MCUFRIEND_kbv TFT sinfiga ega ob'ektni yaratadi va PK displey va Arduino o'rtasida SPI ulanishlarini ta'minlaydi.

RK ekranini ishga tushirish

uint16_t ID = tft.readID(); tft.begin(ID);

Funktsiya tft.readID displeydan identifikatorni o'qiydi va o'zgaruvchan identifikatoringizni joylashtiradi. Keyin funksiya tft.begin Identifikatorni olib tashlaydi va PK displeyi ishlashga tayyor.

Alohida ekran maydoni

tft.width(); // int16_t kengligi (bo'sh); tft.height(); //int16_t balandligi(bo'sh);

Ushbu ikki funksiya ortidagi displeyning alohida tabiatini tanib olishingiz mumkin. Faqat ularni kodga qo'shing va chiqish ma'lumotlarini o'zgartirishga joylashtiring uint16_t. Keyin ketma-ket portdan o'qing Serial.println();. Yana bir oz qo'shing Serial.begin(9600); V sozlash; o'rnatish().

Ekranni ranglang

tft.fillScreen(t); //fillScreen(uint16_t t);

Funktsiya ekranni to'ldirish ekran rangini o'zgartiradi t. Kod rangini o'zgartirish uchun 16 bitli o'zgarish mavjud UTFT.

#define BLACK 0x0000 #define NAVY 0x000F #define DARKGREEN 0x03E0 #define DARKCYAN 0x03EF #define MAROON 0x7800 #define PURPLE 0x780F #define NAVY 0x000F #define PURPLE #define #fineF07f nozik GREEN 0x07 E0 #define CYAN 0x07FF #define RED 0xF800 #define MAGENTA 0xF81F # SARI 0xFFE0ni aniqlang #OQ ni aniqlang 0xFFFF #aniqlash ORANGE 0xFD20 #GREENYELLOW ni aniqlang 0xAFE5 #pushtini aniqlang 0xF81F

Siz ushbu qatorlarni kodga qo'shishingiz va funksiyalardagi nom rangini o'zgartirishingiz mumkin.

Pikelivni bron qilish

tft.drawPixel(x,y,t); //drawPixel(int16_t x, int16_t y, uint16_t t) tft.readPixel(x,y); //uint16_t readPixel (int16_t x, int16_t y)

Funktsiya drawPixel t rangiga x va y piksellarini belgilaydi.

Funktsiya o'qingPixel piksel rangini x va y bosqichlarida o'qiydi.

Chiziqlarni chizish

tft.drawFastVLine(x,y,h,t); //drawFastVLine(int16_t x, int16_t y, int16_t h, uint16_t t) tft.drawFastHLline(x,y,w,t); //drawFastHLine(int16_t x, int16_t y, int16_t w, uint16_t t) tft.drawLine(xi, yi, xj, yj, t); //drawLine(int16_t x0, int16_t y0, int16_t x1, int16_t y1, uint16_t t)

Funktsiya drawFastVLine bo'yoqlar vertikal chiziq, X, y, vv dovzhin - h piksel va rang - t soyasi bilan boshlanadigan narsa.

Funktsiya drawFastHLline bo'yoqlar gorizontal chiziq, Bu x va y ning soyalanishi, w piksellarining ko'pchiligi va rang - t dan boshlanadi.

Funktsiya chizilgan chiziq xi, yi dan xj, yj, rang - t dan boshlanadigan qatorni chizadi.

uchun (uint16_t a=0; a<5; a++) { tft.drawFastVLine(x+a, y, h, t);} for (uint16_t a=0; a<5; a++) { tft.drawFastHLine(x, y+a, w, t);} for (uint16_t a=0; a<5; a++) { tft.drawLine(xi+a, yi, xj+a, yj, t);} for (uint16_t a=0; a<5; a++) { tft.drawLine(xi, yi+a, xj, yj+a, t);}

Ushbu uchta kod bloki oldingi kodga o'xshash 5 pikselli kenglikdagi chiziqlar bilan chizilgan.

Tft.fillRect(x,y,w,h,t); //fillRect(int16_t x, int16_t y, int16_t w, int16_t h, uint16_t t) tft.drawRect(x, y, w, h, t); //drawRect(int16_t x, int16_t y, int16_t w, int16_t h, uint16_t t) tft.fillRoundRect(x,y,w,h,r,t); //fillRoundRect (int16_t x, int16_t y, int16_t w, int16_t h, uint8_t R , uint16_t t) tft.drawRoundRect(x,y,w,h,r,t); //drawRoundRect(int16_t x, int16_t y, int16_t w, int16_t h, uint8_t R , uint16_t t)

Funktsiya to'ldirishRect Ortokutan plombalarini x va y koordinatalari bo'yicha, w - kenglik, h - balandlik, t - Ortokutanumning rangi bo'yicha chizadi.

Funktsiya drawRect ortokutan daraxtni x va y koordinatalarida kengligi w, balandligi h va rangi t bilan bo'yaydi.

Funktsiya fillRoundRect to'g'ri ichak plombalarini radius r, koordinatalari x va y, kengligi w va balandligi h, rangi t bilan bo'yaydi.

Funktsiya drawRoundRect r radial yumaloq qirralari x va y, kengligi w va balandligi h va rangi t bo'lgan ortokutanni bo'yaydi.

Kola bo'yash

tft.drawCircle(x,y,r,t); //drawCircle(int16_t x, int16_t y, int16_t r, uint16_t t) tft.fillCircle(x,y,r,t); //fillCircle(int16_t x, int16_t y, int16_t r, uint16_t t)

Funktsiya doira chizish x va y koordinatalarida, radiusi r va rangi t bo'lgan bo'yoqlar.

Funktsiya to'ldirish doirasi x va y koordinatalarining to'liq doirasini, radiusi r va t rangini bo'yadi.

Uchun (int p = 0; p< 4000; p++) { j = 120 * (sin(PI * p / 2000)); i = 120 * (cos(PI * p / 2000)); j2 = 60 * (sin(PI * p / 2000)); i2 = 60 * (cos(PI * p / 2000)); tft.drawLine(i2 + 160, j2 + 160, i + 160, j + 160, col[n]); }

Ushbu kod oltin yoydir. Siz "for" qiymatini 0 dan 4000 gacha o'zgartirishingiz mumkin.

Trikutniklarni bo'yash

tft.drawTriangle(x1,y1,x2,y2,x3,y3,t); // Tasdiqlash (int16_t x1, int16_t x2, int16_t x3, int16_t x3, int16_t y3, x2, x2, y // plomba the, int16_t y1, int16_t x2, int16_t y2, int16_t x3, int16_t y3, // uint16_t t)

Funktsiya uchburchak chizish uch burchak koordinatalari x, y va z va t ranglari bilan trikutnikni bo'yashadi.

Funktsiya uchburchakni to'ldirish trikutikulaning uchta qismini koordinatalari x, y, z va t rangga bo'yaydi.

Matnni ifodalash

tft.setCursor(x,y); //setCursor (int16_t x, int16_t y)

Ushbu kod kursor o'rnini x va y ga o'rnatadi.

Tft.setTextColor(t); //setTextColor(uint16_t t) tft.setTextColor(t,b); //setTextColor(uint16_t t, uint16_t b)

Birinchi qator matn rangini belgilaydi. Boshlovchi qator matn va fon rangini belgilaydi.

Tft.setTextSize(lar); //setTextSize(uint8_t s)

Ushbu kod sarlavha matni hajmini belgilaydi s. Raqamning o'zi s 1 dan 5 gacha bo'lgan oraliqdagi o'zgarishlar.

Tft.write(c); //yozish (uint8_t c)

Bu kod belgini ifodalaydi.

Tft.println("www.Electropeak.com"); tft.print("www.Electropeak.com");

Birinchi funktsiya qatorni ko'rsatadi va kursorni keyingi qatorga o'tkazadi.

Boshqa funksiya oddiygina qatorni ko'rsatadi.

ShowmsgXY(x,y,sz,&FreeSans9pt7b,"www.Electropeak.com"); //void showmsgXY(int x, int y, int sz, const GFXfont *f, const char *msg) void showmsgXY(int x, int y, int sz, const GFXfont *f, const char *msg) y1, uint16_t wid ,ht; tft.set

Bu funksiya matnni shriftga o'zgartiradi. Siz ushbu funktsiyani va shrift kutubxonasini qo'shishingiz kerak.

Uchun (int j = 0; j< 20; j++) { tft.setCursor(145, 290); int color = tft.color565(r -= 12, g -= 12, b -= 12); tft.setTextColor(color); tft.print("www.Electropeak.com"); delay(30); }

Bu funksiya siz bilgan matnni xiralashtirishi mumkin. Buni kodingizga qo'shishingiz kerak.

Ekran qoplamasi

tft.setRotation(r); //setRotation(uint8_t r)

Ushbu kod ekranni aylantiradi. 0 = 0 °, 1 = 90 °, 2 = 180 °, 3 = 270 °.

Ekran ranglarini teskari aylantirish

tft.invertDisplay(i); //invertDisplay(mantiqiy i)

Ushbu kod ekran ranglarini o'zgartiradi.

Tft.color565(r,g,b); //uint16_t color565(uint8_t r, uint8_t g, uint8_t b)

Ushbu kod RGB kodini uzatadi va UTFT rang kodini oladi.

Ekranni aylantiring

uchun (uint16_t i = 0; i< maxscroll; i++) { tft.vertScroll(0, maxscroll, i); delay(10);}

Ushbu kod ekranni aylantiradi. Maxroll - maksimal aylanish balandligi.

Skidannya

tft.reset();

Ushbu kod ekranni olib tashlaydi.

Monoxrom tasvirlarning ko'rinishi

static const uint8_t name PROGMEM = ( // Bu yerga rasm kodini qo'shing. ) tft.drawBitmap(x, y, name, sx, sy, 0x0000);

Bundan buyon siz rasmingizni o'n oltilik kodga aylantirish uchun javobgarsiz. Zavantazhte dasturi nezabechennya posilannya pastroq. Agar siz dasturiy ta'minot sozlamalarini o'zgartirishni xohlamasangiz, tasvirning rangini o'zgartirishingiz, tasvirni gorizontal (ko'zguda) ko'rsatishingiz va yil o'qiga qarshi 90 daraja burishingiz kerak.

Endi uni dasturiy ta'minotga qo'shing va o'zgartiring. Eksport qilingan faylni oching va Arduino IDE-dan o'n oltilik kodni nusxalash. xі y- Roztashuvannya tasviri. sxі sy- Tasvirni o'lchami. Tasvirning rangini qolganiga o'zgartirishingiz mumkin kiritish.

RGB rangli tasvir displeyi

const uint16_t name PROGMEM = ( // Bu yerga rasm kodini qo'shing. ) tft.drawRGBBitmap(x, y, nom, sx, sy);

Tasviringizni kodga aylantirish sizning mas'uliyatingiz. Tasvirni o'zgartirish uchun Vikorista tse poslannya:

Rasmni kiriting va UTFT kutubxonalari tomonidan ishlatilishi mumkin bo'lgan transformatsiya faylini yuklab oling. Endi o'n oltilik kodni Arduino IDE-ga nusxalash. x va y - tasvirni ko'rsatish. sx va sy - tasvir hajmi.

O'n oltilik kodni ko'rsatish uchun quyidagi konvertor dasturidan foydalanishingiz mumkin:

Old katlama elementlari

Ushbu shablonda biz ranglarini tartibda o'zgartirish uchun 8 ta o'rinbosar rang qatorini qo'shdik. Statik nuqta atrofida qoziqni bo'yash uchun siz sin(); ta cos(); funktsiyalari. PI qiymatini o'rnatishingiz kerak. Ranglarni o'zgartirish uchun siz funktsiyani o'zgartirishingiz mumkin rang565(); Keyin RGB kodingizni almashtiring.

#o'z ichiga "Adafruit_GFX.h" #o'z ichiga "MCUFRIEND_kbv.h" MCUFRIEND_kbv tft; #include "Fonts/FreeSans9pt7b.h" #include "Fonts/FreeSans12pt7b.h" #include "Fonts/FreeSerif12pt7b.h" #include "FreeDefaultFonts.h" #define PI 3.1415923235 t col; void showmsgXY(int x, int y, int sz, const GFXfont *f, const char *msg) ( int16_t x1, y1; uint16_t wid, ht; tft.setFont(f); tft.setCursor(x, y); tft .setTextColor(0x0000);tft.setTextSize(sz) tft.print(msg ) void setup() (tft.reset(); Serial.begin(9600); begin(ID);tft.setRotation(1) tft.invertDisplay(true) ;col = tft.color565(170, 30, 80); rang565(230, 120, 170); loop() (for (int i = 8; i > 0; i--) ( tft.fillCircle(240 + 40 * (cos(-i * PI / 4))), 120 + 40 * (sin(-i) * PI / 4)), 10, col); kechikish (15); + 1) * PI / 4)), 10, col); kechikish (15); (-(i + 2)*PI / 4)), 10, col); kechikish (15); tft.fillCircle(240 + 40 * (cos(-(i + 3)*PI / 4)), 120 + 40 * (sin(-(i + 3)*PI / 4)), 10, col); kechikish (15); tft.fillCircle(240 + 40 * (cos(-(i + 4)*PI / 4)), 120 + 40 * (sin(-(i + 4)*PI / 4)), 10, col); kechikish (15); tft.fillCircle(240 + 40 * (cos(-(i + 5)*PI / 4)), 120 + 40 * (sin(-(i + 5)*PI / 4)), 10, col); kechikish (15); tft.fillCircle(240 + 40 * (cos(-(i + 6)*PI / 4)), 120 + 40 * (sin(-(i + 6)*PI / 4)), 10, col); kechikish (15); tft.fillCircle(240 + 40 * (cos(-(i + 7)*PI / 4)), 120 + 40 * (sin(-(i + 7)*PI / 4)), 10, col); kechikish (15); )

Klassik matn

Ushbu shablon uchun biz klassik shriftni tanladik va matnni o'chirish funksiyasini qo'shdik.

#include "Adafruit_GFX.h" // Asosiy grafik kutubxona #o'z ichiga "MCUFRIEND_kbv.h" // Uskunaga xos kutubxona MCUFRIEND_kbv tft; #include "Fonts/FreeSans9pt7b.h" #include "Fonts/FreeSans12pt7b.h" #include "Fonts/FreeSerif12pt7b.h" #include "FreeDefaultFonts.h" bekor showmsgXY(int x, intrsyst, intrsyst) ) ( int16_t x1, y1; uint16_t kengligi, ht; tft.setFont(f); tft.setCursor(x, y); tft.setTextSize(sz); tft.println(msg); ) uint8_t r = 255, g = 255, b = 255; uint16_t rangi; void setup() ( Serial.begin(9600); uint16_t ID = tft.readID(); tft.begin(ID); tft.invertDisplay(true); tft.setRotation(1); ) void loop(void) ( tft .invertDisplay(true); tft.fillScreen(WHITE muammoda,"); delay(40); tft.println("qisqadan kuch to'plashi mumkin,"); delay(40); delay(40); vijdon ularning xatti-harakatlarini tasdiqlaydi,"); kechikish (40); = 0;< 20; j++) { tft.setCursor(145, 290); color = tft.color565(r -= 12, g -= 12, b -= 12); tft.setTextColor(color); tft.print(" ---- Da Vinci ----"); delay(30); } while (1); }

logotipga hurmat/taqdimot

Biz faylni kimning shabloniga aylantirdik a.jpg y fayl .c Va uni kodga qo'shdi, qatorni yozdi va kodni vikorizatsiya qildi. Keyin biz ekranni chapga siljitish uchun aylantirish kodini vikorizatsiya qildik. Faylni ko'rsating .h Va uni Arduino sketch papkasiga qo'shing.

#include "Adafruit_GFX.h" // Asosiy grafik kutubxona #o'z ichiga "MCUFRIEND_kbv.h" // Uskunaga xos kutubxona MCUFRIEND_kbv tft; #include "Ard_Logo.h" #define BLACK 0x0000 #define RED 0xF800 #define GREEN 0x07E0 #define WHITE 0xFFFF #define GRAY 0x8410 #include "Fonts/FreeSansans9hon" eDefaultFonts.h" yaroqsiz showmsgXY (int x, int y, int sz, const GFXfont *f, const char *msg) ( int16_t x1, y1; uint16_t wid, ht; tft. ; tft.setCursor(x, y); tft.setTextSize(sz); uint16_t color; void setup() ( Serial.begin(9600); uint16_t ID = tft.readID(); tft.begin(ID); tft.invertDisplay(true); tft.setRotation(1); ) void loop(void) ) ( tft .invertDisplay(true);tft.fillScreen(WHITE);< 20; j++) { color = tft.color565(r -= 12, g -= 12, b -= 12); tft.setTextColor(color); showmsgXY(95, 280, 1, &FreeSans12pt7b, "ELECTROPEAK PRESENTS"); delay(20); } delay(1000); for (int i = 0; i < 480; i++) { tft.vertScroll(0, 480, i); tft.drawFastVLine(i, 0, 320, 0xffff); // vertical line delay(5);} while (1); }

Nuqta diagrammasi

Ushbu shablonda biz bo'yash chiziqlari, qoziqni to'ldirish va qatorlarni ko'rsatish funktsiyalaridan foydalandik.

#o'z ichiga "Adafruit_GFX.h" #o'z ichiga "MCUFRIEND_kbv.h" MCUFRIEND_kbv tft; uint16_t ox=0,oy=0; int ave = 0, avec = 0, avet = 0; ////////////////////////////////////////////// ////////////// void aveg(void) (int z=0; Serial.println(ave); Serial.println(avec); avet=ave/avec; Serial. println(avet) ) );avet=avet*32;<24; i++){ for (uint16_t a=0; a<3; a++){ tft.drawLine(avet+a, z, avet+a, z+10, 0xFB21);} // thick for (uint16_t a=0; a<2; a++){ tft.drawLine(avet-a, z, avet-a, z+10, 0xFB21);} delay(100); z=z+20; } } ////////////////////////////////////////////////////////////////// void dchart_10x10(uint16_t nx,uint16_t ny) { ave+=nx; avec++; nx=nx*32; ny=ny*48; tft.drawCircle(nx, ny, 10, 0x0517); tft.drawCircle(nx, ny, 9, 0x0517); tft.fillCircle(nx, ny, 7, 0x0517); delay (100); ox=nx; oy=ny; } /////////////////////////////////////////////////////////////////////// void dotchart_10x10(uint16_t nx,uint16_t ny) { ave+=nx; avec++; nx=nx*32; ny=ny*48; int plus=0; float fplus=0; int sign=0; int y=0,x=0; y=oy; x=ox; float xmines, ymines; xmines=nx-ox; ymines=ny-oy; if (ox>nx) (xmines = ox-nx; belgisi = 1;) else belgisi = 0; uchun (int a=0; a<(ny-oy); a++) { fplus+=xmines/ymines; plus=fplus; if (sign==1) tft.drawFastHLine(0, y, x-plus, 0xBFDF); else tft.drawFastHLine(0, y, x+plus, 0xBFDF); y++; delay(5);} for (uint16_t a=0; a<2; a++){ tft.drawLine(ox+a, oy, nx+a, ny, 0x01E8);} // thick for (uint16_t a=0; a<2; a++){ tft.drawLine(ox, oy+a, nx, ny+a, 0x01E8);} ox=nx; oy=ny; } //////////////////////////////////////////////////////////////////// void setup() { tft.reset(); Serial.begin(9600); uint16_t ID = tft.readID(); tft.begin(ID); } void loop() { tft.invertDisplay(true); tft.fillScreen(0xffff); dotchart_10x10(3, 0); dotchart_10x10(2, 1); dotchart_10x10(4, 2); dotchart_10x10(4, 3); dotchart_10x10(5, 4); dotchart_10x10(3, 5); dotchart_10x10(6, 6); dotchart_10x10(7, 7); dotchart_10x10(9, 8); dotchart_10x10(8, 9); dotchart_10x10(10, 10); dchart_10x10(3, 0); dchart_10x10(2, 1); dchart_10x10(4, 2); dchart_10x10(4, 3); dchart_10x10(5, 4); dchart_10x10(3, 5); dchart_10x10(6, 6); dchart_10x10(7, 7); dchart_10x10(9, 8); dchart_10x10(8, 9); dchart_10x10(10, 10); tft.setRotation(1); tft.setTextSize(2); tft.setTextColor(0x01E8); tft.setCursor(20, 20); tft.print("Average"); int dl=20; for (int i=0;i<6;i++){ for (uint16_t a=0; a<3; a++){ tft.drawLine(dl, 40+a, dl+10, 40+a, 0xFB21);} dl+=16;} tft.setRotation(0); aveg(); while(1); }

Harorat

Qaysi shablonni vikorize qildik? gunoh();і cos(); matn do'stining qo'shimcha funktsiyasi ortida ko'rsatiladigan katta raqam va raqam bilan yoylarni chizish uchun funktsiyalar. Keyin biz tasvirlarni o'n oltilik kodga aylantirdik va uni kodga qo'shdik va rastrli tasvirning qo'shimcha funktsiyasidan foydalangan holda tasvirlarni ko'rsatdik. Keyin biz tasvir uslubini o'zgartirish uchun Line Painting funksiyasidan foydalandik. file.h ni tanlang va uni Arduino papkasiga qo'shing.

#include "Adafruit_GFX.h" #include "MCUFRIEND_kbv.h" #include "Math.h" MCUFRIEND_kbv tft; #include "Temperature.h" #define PI 3.1415926535897932384626433832795 int a=1000,b=3500; int n, f; int j, j2, lj; int i, i2 ,li; int pct = 0; int d = (20, 20, 20, 20, 20); uint16_t col = (0x7006, 0xF986, 0x6905, 0x7FF7, 0x024D); void setup() ( tft.reset(); Serial.begin(9600); uint16_t ID = tft.readID(); tft.begin(ID); tft.invertDisplay(true); tft.setTextSize(2); ) void loop() ( // qayta-qayta ishlash uchun asosiy kodingizni shu yerga qo'ying: tft.fillScreen(0xffff); tft.setRotation(1); tft.drawBitmap (350, 70, Temp, 70, 180, 0x0000); tft.fillCir (385,213,25,tft.color565(255, 0, 0));< 4000; p++) { j = 120 * (sin(PI * p / 2000)); i = 120 * (cos(PI * p / 2000)); j2 = 110 * (sin(PI * p / 2000)); i2 = 110 * (cos(PI * p / 2000)); tft.drawLine(i2 + 160, j2 + 160, i + 160, j + 160, tft.color565(100, 100, 100)); } ///////////////////////////////////////////////////////////////////// if (b>a) (hozirda (a Pirog diagrammasi

Ushbu shablonda biz raqamlarni kirish sifatida qabul qiladigan va ularni doiraviy diagramma sifatida ko'rsatadigan funksiya yaratdik. Biz shunchaki vikoristovuyu yoy bo'yash va qoziq vazifalarini yangilash.

#include "Adafruit_GFX.h" #include "MCUFRIEND_kbv.h" #include "Math.h" MCUFRIEND_kbv tft; #aniqlash PI 3.1415926535897932384626433832795 int n, f; int j, j2; int i, i2; int pct = 0; int d = (10, 60, 16, 9, 10); uint16_t col = (0x7006, 0xF986, 0x6905, 0x7FF7, 0x024D); void setup() ( tft.reset(); Serial.begin(9600); uint16_t ID = tft.readID(); tft.begin(ID); tft.invertDisplay(true); tft.setTextSize(2); ) void loop() ( // qayta-qayta ishlash uchun asosiy kodingizni shu yerga qo'ying: tft.fillScreen(0x0042); tft.setRotation(1); for (int p = 0; p< 4000; p++) { j = 120 * (sin(PI * p / 2000)); i = 120 * (cos(PI * p / 2000)); j2 = 60 * (sin(PI * p / 2000)); i2 = 60 * (cos(PI * p / 2000)); tft.drawLine(i2 + 160, j2 + 160, i + 160, j + 160, col[n]); } n = 0; for (int a = 0; a < 5; a++) { pct += d[n] * 40; f = 4000 - pct; for (int b = 0; b < f; b++) { j = 120 * (sin(PI * b / 2000)); i = 120 * (cos(PI * b / 2000)); j2 = 60 * (sin(PI * b / 2000)); i2 = 60 * (cos(PI * b / 2000)); tft.drawLine(i2 + 160, j2 + 160, i + 160, j + 160, col); } tft.fillCircle(380, 100 + (30 * n), 10, col[n]); tft.setTextColor(0xffff); tft.setCursor(400, 94 + (30 * n)); tft.print(d[n]); tft.print("%"); n++; } while (1); }

Musiqa

#o'z ichiga "Adafruit_GFX.h" #o'z ichiga "MCUFRIEND_kbv.h" MCUFRIEND_kbv tft; #include "Volume.h" #define BLACK 0x0000 int a = 0,b = 4000,c = 1000,d = 3000; int s = 2000; int j, j2; int i, i2; int Oq; void setup() ( Serial.begin(9600); uint16_t ID = tft.readID(); tft.begin(ID); tft.invertDisplay(true); tft.setRotation(1); ) void loop(void) ( tft .invertDisplay(true), tft.fillScreen(Qora);< s) { j = 14 * (sin(PI * a / 2000)); i = 14 * (cos(PI * a / 2000)); j2 = 1 * (sin(PI * a / 2000)); i2 = 1 * (cos(PI * a / 2000)); tft.drawLine(i2 + 62, j2 + 240, i + 62, j + 240, White); j = 14 * (sin(PI * (a-300) / 2000)); i = 14 * (cos(PI * (a-300) / 2000)); j2 = 1 * (sin(PI * (a-300) / 2000)); i2 = 1 * (cos(PI * (a-300) / 2000)); tft.drawLine(i2 + 62, j2 + 240, i + 62, j + 240, 0x0000); tft.fillRect(50, 285, 30, 30, 0x0000); tft.setTextSize(2); tft.setTextColor(0xffff); tft.setCursor(50, 285); tft.print(a / 40); tft.print("%"); a++; } if (b < s) { j = 14 * (sin(PI * b / 2000)); i = 14 * (cos(PI * b / 2000)); j2 = 1 * (sin(PI * b / 2000)); i2 = 1 * (cos(PI * b / 2000)); tft.drawLine(i2 + 180, j2 + 240, i + 180, j + 240, White); j = 14 * (sin(PI * (b-300) / 2000)); i = 14 * (cos(PI * (b-300) / 2000)); j2 = 1 * (sin(PI * (b-300) / 2000)); i2 = 1 * (cos(PI * (b-300) / 2000)); tft.drawLine(i2 + 180, j2 + 240, i + 180, j + 240, 0x0000); tft.fillRect(168, 285, 30, 30, 0x0000); tft.setTextSize(2); tft.setTextColor(0xffff); tft.setCursor(168, 285); tft.print(b / 40); tft.print("%"); b++;} if (c < s) { j = 14 * (sin(PI * c / 2000)); i = 14 * (cos(PI * c / 2000)); j2 = 1 * (sin(PI * c / 2000)); i2 = 1 * (cos(PI * c / 2000)); tft.drawLine(i2 + 297, j2 + 240, i + 297, j + 240, White); j = 14 * (sin(PI * (c-300) / 2000)); i = 14 * (cos(PI * (c-300) / 2000)); j2 = 1 * (sin(PI * (c-300) / 2000)); i2 = 1 * (cos(PI * (c-300) / 2000)); tft.drawLine(i2 + 297, j2 + 240, i + 297, j + 240, 0x0000); tft.fillRect(286, 285, 30, 30, 0x0000); tft.setTextSize(2); tft.setTextColor(0xffff); tft.setCursor(286, 285); tft.print(c / 40); tft.print("%"); c++;} if (d < s) { j = 14 * (sin(PI * d / 2000)); i = 14 * (cos(PI * d / 2000)); j2 = 1 * (sin(PI * d / 2000)); i2 = 1 * (cos(PI * d / 2000)); tft.drawLine(i2 + 414, j2 + 240, i + 414, j + 240, White); j = 14 * (sin(PI * (d-300) / 2000)); i = 14 * (cos(PI * (d-300) / 2000)); j2 = 1 * (sin(PI * (d-300) / 2000)); i2 = 1 * (cos(PI * (d-300) / 2000)); tft.drawLine(i2 + 414, j2 + 240, i + 414, j + 240, 0x0000); tft.fillRect(402, 285, 30, 30, 0x0000); tft.setTextSize(2); tft.setTextColor(0xffff); tft.setCursor(402, 285); tft.print(d / 40); tft.print("%"); d++;} if (a >s) (j = 14 * (sin(PI * a / 2000)); i = 14 * (cos(PI * a / 2000)); j2 = 1 * (sin(PI * a / 2000)); i2 = 1 * (cos (PI * a / 2000));i = 14 * (cos (PI * (a + 300) / 2000)); PI * (a+300) / 2000)); tft.setTextSize(2); tft.setTextColor(0xffff); s) (j = 14 * (sin(PI * b / 2000)); i = 14 * (cos (PI * b / 2000)); j2 = 1 * (sin (PI * b / 2000)); i2 = 1 * (cos (PI * b / 2000) i = 14 * (cos (PI * (b + 300) / 2000)); PI * (b + 300) / 2000)); tft.setTextSize(2); tft.setTextColor(0xffff); tft.setCursor(168, 285); tft.print(b/40); tft.print("%"); b--;) agar (c > s) (j = 14 * (sin(PI * c / 2000)); i = 14 * (cos(PI * c / 2000)); j2 = 1 * (sin(PI) * c / 2000));i2 = 1 * (cos (PI * c / 2000) sin(PI*(c+300)/2000)); i=14* (cos(PI*(c+300)/2000)); ), i2 = 1 * (cos (PI * (c + 300) / 2000)); 285, 30, 30, 0x0000); tft.setTextSize(2); c--;) agar (d > s) (j = 14 * (sin(PI * d / 2000)); i = 14 * (cos(PI * d / 2000)); j2 = 1 * (sin(PI) * d / 2000));i2 = 1 * (cos (PI * d / 2000) sin(PI*(d+300)/2000)); i = 14* );i2 = 1 * (cos (PI * (d +300) / 2000)); 285, 30, 30, 0x0000); tft.setTextSize(2); tft.setTextColor(0xffff); tft.setCursor(402, 285); tft.print(d/40); tft.print("%"); d--;)))

Tezlik o'lchagich

#o'z ichiga "Adafruit_GFX.h" // Asosiy grafik kutubxona #o'z ichiga "MCUFRIEND_kbv.h" MCUFRIEND_kbv tft; #define BLACK 0x0000 #include "Gauge.h" #include "Fonts/FreeSans9pt7b.h" #include "Fonts/FreeSans9pt7b.h" #include "Fonts/FreeSerif12pt7b.h" #include "Fonts/FreeSerif12pt7b.h" #include "FreeSerif12pt7b.h" #include include "j04 in; j2; int i, i2; void showmsgXY(int x, int y, int sz, const GFXfont *f, const char *msg) ( int16_t x1, y1; uint16_t wid, ht; tft.setFont(f); tft.setCur (x, y); tft.setTextSize(sz); void setup() ( Serial.begin(9600); uint16_t ID = tft.readID(); tft.begin(ID); tft . invertDisplay(true); .setRotation(1); void loop(void) ( tft.invertDisplay(true); tft.fillScreen(BLACK); tft.drawRGBBitmap(0, 0, test, 480, 320);< b) { while (a < b) { Serial.println(a); j = 80 * (sin(PI * a / 2000)); i = 80 * (cos(PI * a / 2000)); j2 = 50 * (sin(PI * a / 2000)); i2 = 50 * (cos(PI * a / 2000)); tft.drawLine(i2 + 235, j2 + 169, i + 235, j + 169, tft.color565(0, 255, 255)); tft.fillRect(200, 153, 75, 33, 0x0000); tft.setTextSize(3); tft.setTextColor(0xffff); if ((a/20)>99) tft.setCursor(208, 160); else tft.setCursor(217, 160); tft.print(a/20); a++; ) b = 1000; ) ////////////////////////////////////////////// / ////////////////// esa (b< a) { j = 80 * (sin(PI * a / 2000)); i = 80 * (cos(PI * a / 2000)); j2 = 50 * (sin(PI * a / 2000)); i2 = 50 * (cos(PI * a / 2000)); tft.drawLine(i2 + 235, j2 + 169, i + 235, j + 169, tft.color565(0, 0, 0)); tft.fillRect(200, 153, 75, 33, 0x0000); tft.setTextSize(3); tft.setTextColor(0xffff); if ((a/20)>99) tft.setCursor(208, 160); else tft.setCursor(217, 160); tft.print(a/20); a--; ) while (1); )

Quvnoq kichkina odam

Ushbu shablonda oddiy tasvirlar rastr tasvirning qo'shimcha funksiyasi bilan ham ko'rsatilishi mumkin. Shu tarzda, ushbu hiyla yordamida animatsiyangizni yaxshilashingiz mumkin. file.h ni tanlang va uni Arduino papkasiga qo'shing.

#o'z ichiga "Adafruit_GFX.h" #o'z ichiga "MCUFRIEND_kbv.h" MCUFRIEND_kbv tft; #include "image.h" #include "Fonts/FreeSans9pt7b.h" #include "Fonts/FreeSans9pt7b.h" #include "Fonts/FreeSerif12pt7b.h" #include "FreeDefaultFonts.h" #defined #0x0BLED R GREEN 0x07E0 #define CYAN 0x07FF #define MAGENTA 0xF81F #define YELLOW 0xFFFF #define WHITE 0xFFFF #define GRAY 0x8410 #define OX z, const GFXfont *f16 in xint_16; t kengligi, ht (f); tft.setTextSize(sz) ; setRotation(1);delay(60); 258, 128, OQ); kechikish (40); tft.fillRect(20, 180, 258, 128, tft.color565(0,20,0)); tft.drawBitmap(20, 180, 3-qator, 258, 128, OQ);kechikish (60); tft.fillRect(20, 180, 258, 128, tft.color565(0,20,0)); tft.drawBitmap(20, 180, 4-qator, 258, 128, OQ);kechikish(40); tft.fillRect(20, 180, 258, 128, tft.color565(0,20,0)); tft.drawBitmap(20, 180, Line5, 258, 128, OQ);kechikish (60); tft.fillRect(20, 180, 258, 128, tft.color565(0,20,0)); tft.drawBitmap(20, 180, Line6, 258, 128, OQ);kechikish (40); tft.fillRect(20, 180, 258, 128, tft.color565(0,20,0)); tft.drawBitmap(20, 180, Line7, 258, 128, OQ);kechikish (60); tft.fillRect(20, 180, 258, 128, tft.color565(0,20,0)); tft.drawBitmap(20, 180, Line8, 258, 128, OQ);kechikish (40); tft.fillRect(20, 180, 258, 128, tft.color565(0,20,0)); tft.drawBitmap(20, 180, Line9, 258, 128, OQ);kechikish (60); tft.fillRect(20, 180, 258, 128, tft.color565(0,20,0)); tft.drawBitmap(20, 180, 10-qator, 258, 128, OQ);kechikish (40); tft.fillRect(20, 180, 258, 128, tft.color565(0,20,0)); tft.drawBitmap(20, 180, Line11, 258, 128, OQ);kechikish (60); tft.fillRect(20, 180, 258, 128, tft.color565(0,20,0)); tft.drawBitmap(20, 180, Line12, 258, 128, OQ);kechikish (40); tft.fillRect(20, 180, 258, 128, tft.color565(0,20,0)); tft.drawBitmap(20, 180, Line13, 258, 128, OQ);kechikish (60); tft.fillRect(20, 180, 258, 128, tft.color565(0,20,0)); tft.drawBitmap(20, 180, Line14, 258, 128, OQ);kechikish (40); tft.fillRect(20, 180, 258, 128, tft.color565(0,20,0)); tft.drawBitmap(20, 180, 15-qator, 258, 128, OQ); kechikish (60); tft.fillRect(20, 180, 258, 128, tft.color565(0,20,0)); tft.drawBitmap(20, 180, Line16, 258, 128, OQ);kechikish (40); tft.fillRect(20, 180, 258, 128, tft.color565(0,20,0)); tft.drawBitmap(20, 180, Line17, 258, 128, OQ);kechikish (60); tft.fillRect(20, 180, 258, 128,tft.color565(0,20,0)); tft.drawBitmap(20, 180, 18-qator, 258, 128, OQ);kechikish (40); tft.fillRect(20, 180, 258, 128, tft.color565(0,20,0)); tft.drawBitmap(20, 180, Line19, 258, 128, OQ);kechikish (60); tft.fillRect(20, 180, 258, 128, tft.color565(0,20,0)); tft.drawBitmap(20, 180, Line20, 258, 128, OQ);kechikish (40); tft.fillRect(20, 180, 258, 128, tft.color565(0,20,0)); tft.drawBitmap(20, 180, Line21, 258, 128, OQ);kechikish (60); tft.fillRect(20, 180, 258, 128, tft.color565(0,20,0)); tft.drawBitmap(20, 180, Line22, 258, 128, OQ);kechikish (40); tft.fillRect(20, 180, 258, 128, tft.color565(0,20,0)); tft.drawBitmap(20, 180, Line23, 258, 128, OQ);kechikish (60); tft.fillRect(20, 180, 258, 128, tft.color565(0,20,0)); tft.drawBitmap(20, 180, Line24, 258, 128, OQ);kechikish (40); tft.fillRect(20, 180, 258, 128, tft.color565(0,20,0)); tft.drawBitmap(20, 180, Line25, 258, 128, OQ);kechikish (60); tft.fillRect(20, 180, 258, 128,tft.color565(0,20,0)); tft.drawBitmap(20, 180, Line26, 258, 128, OQ);kechikish (40); tft.fillRect(20, 180, 258, 128, tft.color565(0,20,0)); tft.drawBitmap(20, 180, Line27, 258, 128, WHITE);kechikish (60); tft.fillRect(20, 180, 258, 128, tft.color565(0,20,0)); )

Rasm

Qaysi shablonda biz shunchaki qo'shimcha funktsiya uchun rasmning harakatlarini ko'rsatamiz RGB bitmapі bitmap. Faqat sensorli ekran uchun kod yarating va shablonni vikorize qiling. file.h ni tanlang va uni Arduino papkasiga qo'shing.

#include "Adafruit_GFX.h" // Asosiy grafik kutubxona #o'z ichiga "MCUFRIEND_kbv.h" // Uskunaga xos kutubxona MCUFRIEND_kbv tft; #define BLACK 0x0000 #define RED 0xF800 #define GREEN 0x07E0 #define WHITE 0xFFFF #define GRAY 0x8410 #include "images.h" #include "Fonts/FreeSans9pt21bts".Free eDefaultFonts.h " int a = 3000; int b = 4000; int j, j2; int i, i2; void showmsgXY(int x, int y, int sz, const GFXfont *f, const char *msg) ( int16_t x1, y1; uint16_t wid, ht; // tft.drawFastHLine(0, y, tft.width());tft.setCursor(x, y .readID(tft); .drawRGBBitmap(0, 0, test, 480, 320); // wifi tft.drawBitmap (125, 25, Line3, 45, 45, 0xffff) //instagram tft.drawBitmap(245, 25, 64,); , 0xffff);//power tft.drawBitmap(20, 260, Line5, 45, 45, 0xffff);//twitter tft.drawBitmap(4 , Line7, 45, 0xffff);//rain tft.setTextSize(6); tft.setTextColor(0xffff); while(1); )

sumka

Arxivlarni fayllar bilan yozib oling .h pastroq:

  • Barcha GIF fayllarini yaratish tezligi o'zgartirildi va ular tez tushunish uchun ko'proq yoki ko'proq tuzilgan. Suyuqlikning suyuqligi protsessoringizning suyuqligi va kod turiga, shuningdek koddagi elementlarning hajmi va soniga bog'liq.
  • Rasm kodini bosh sahifaga qo'shishingiz mumkin, aks holda u butun sahifani to'ldiradi. Shu tarzda siz fayl yaratishingiz mumkin a.h Va papkaga eskiz qo'shing.
  • Ushbu maqolada biz RK ekranidagi elementlarning ko'rinishini diqqat bilan tahlil qildik. Sensorli ekranlar va SD kartalardan qanday foydalanishni o'rganish uchun kelgusi darslarni kuzatib boring.
  • Agar sizda kiritilgan kutubxonalar bilan bog'liq muammolar mavjud bo'lsa, oyoq belgisini "" ga o'zgartiring<>.

Demak, hozircha shunday. Arduino uchun ushbu TFT LCD displeyni do'stlaringiz va hamkasblaringiz bilan baham ko'ring.

Hozirgi qurilmalar turli konfiguratsiyadagi ekranlar bilan jihozlangan. Hozirgi vaqtda asosiylari bazadagi displeylardir, ammo ular uchun turli xil texnologiyalardan foydalanish mumkin, ayniqsa TFT va IPS, ular bir xil kirishga asoslangan bo'lsa-da, past parametrlarning butun diapazonidan farq qiladi.

Qisqartmalar ostidagi texnologiyalarni bildiradigan atamalar mavjud emas. Misol uchun, ko'pchilik IPS va TFT haqida ozgina o'qigan bo'lsa-da, ular orasidagi haqiqiy farq nima ekanligini kam odam tushunadi. Bu elektron kataloglarda ma'lumotlarning etishmasligi bilan bog'liq. Ushbu tushunchalarni tushunish, shuningdek, TFT va IPS o'rtasida qaror qabul qilish muhim - qaysi biri yaxshiroq?

Terminologiya

Teri to'qimasida nima qisqaroq yoki qalinroq bo'lishini aniqlash uchun har bir vikoristni tayyorlashda IPS terisining TFT faktiga nisbatan qanday funktsiyalari borligini yoki aniqrog'i, har xil turlarini aniqlash kerak. yangilangan - TN-TFT. Quyida hisobotlar va texnologiyalar ko'rib chiqiladi.

Vidminnosti

TFT (TN) - ingichka tolali tranzistorlarda ekranlar matritsasini yaratish usullaridan biri bo'lib, unda elementlar bir juft plastinka o'rtasida spiral shaklida joylashtirilgan. Kuchlanish ta'minlanishi bilan shoxlar gorizontal tekislikning to'g'ri chizig'i ostida birma-bir aylantiriladi. Maksimal kuchlanish kristallarning aylanishiga olib keladi, shunda ular orqali o'tadigan yorug'lik qora piksellar paydo bo'lishiga olib keladi va kuchlanish bo'lmasa, oq piksellar paydo bo'ladi.

Agar siz IPS yoki TFT-ga qarasangiz, birinchisi va ikkinchisi o'rtasidagi farq matritsa yuqorida tavsiflangan asosda tayyorlanganligidadir, chunki undagi kristallar spiral shaklida emas, balki bir xil ekran yuzasiga parallel ravishda joylashgan. . TFT rejimida kristallar stress tufayli hech qachon aylanmaydi.

Yak mi tse bachimo?

Agar siz IPS-ga yoki vizual tarzda qarasangiz, ular orasidagi farq kontrastda bo'lib, qora rangni mukammal ko'rsatishni ta'minlaydi. Birinchi ekranda tasvirlar aniqroq bo'ladi. Va boshqa TN-TFT matritsasida rang uzatish o'qini harmonik deb atash mumkin emas. Ushbu turdagi teri boshqalardan farq qiladigan nam tusga ega. Bu rang juda ko'p chalkashliklarni keltirib chiqaradi. Biroq, bu matritsaning afzalligi bor: u hozirgi vaqtda barcha boshqa materiallar orasida eng yuqori suyuqlik bilan tavsiflanadi. IPS ekrani uchun ko'p vaqt talab etiladi, bu vaqt davomida barcha parallel kristallar yangi burilish qilish uchun tortiladi. Biroq, inson ko'zlari ichish soatlaridagi farqni deyarli sezmaydi.

Muhim tafsilotlar

Biz ulardan foydalanish osonroq bo'lganlar haqida gapiramiz: IPS yoki TFT, ya'ni birinchisi ko'proq energiya talab qiladi. Bu shuni anglatadiki, kristallarni aylantirish energiya talab qiladi. Bundan tashqari, transmitter o'z qurilmasini energiya tejamkor qilish vazifasiga duch kelganligi sababli, TN-TFT matritsasidan foydalanish kerak.

TFT yoki IPS ekranini tanlaysizmi, bu boshqasining kengroq ko'rinishini va ikkala o'lchamdagi 178 darajani anglatadi, bu hatto kamera foydalanuvchisi uchun ham qulay. Boshqalar buni ta'minlash uchun mavjud emas edi. Va bu ikki texnologiya o'rtasidagi farqning yana bir afzalligi - viruslarning ularga asoslangan qobiliyatidir. Hozirgi vaqtda TFT matritsalari eng arzon echimlar bo'lib, ular ko'pgina byudjet modellarida mavjud va IPS yuqori darajaga ko'tarilgan, ammo yuqori darajali emas.

IPS Chi TFT displey tebranadimi?

Birinchi darajali texnologiya sizga eng aniq, eng aniq tasvirlarni olish imkonini beradi, ammo kristallarni davolash uchun aylantirish uchun bir soatdan ko'proq vaqt ketadi. Bu zaryadsizlanayotgan batareyaning suyuqligini oshirish bilan birga, bir soat davomida quvvat va boshqa parametrlarni qo'shadi. TN-matritsaning rangi juda past va bu vaqt ichida u minimaldir. Bu erda kristallar spiral shaklida joylashtirilgan.

Aslida, ikkita texnologiya asosida ishlaydigan ekranlarning doimiy uzilishini osongina aniqlash mumkin. Bu borada shov-shuv ko‘p. TN texnologiyasi bozorda, shu jumladan narxda yo'qoladi va aniq tasvirni taqdim etishdan himoyalana olmaydi.

IPS - bu TFT displeylarning keyingi rivojlanishi. Yuqori darajadagi kontrast va ajoyib vizual ta'sir - bu texnologiyaning qo'shimcha afzalliklari. Misol uchun, TN-ga asoslangan monitorlarda qora rangning o'zi o'z rangini o'zgartiradi. Biroq, IPS asosida ishlaydigan qurilmalarning yuqori energiya iste'moli ko'plab ishlab chiqaruvchilarni muqobil texnologiyalarga murojaat qilish yoki ularning ish faoliyatini kamaytirishga to'sqinlik qiladi. Ko'pincha, ushbu turdagi matritsalar batareyadan quvvat oladigan simli monitorlarda qo'llaniladi, bu ish stolining o'zgaruvchan bo'lishiga yo'l qo'ymaydi. Biroq, bu galusning rivojlanishi doimiy ravishda davom etmoqda.

TFT va IPS matritsalari: xususiyatlari, afzalliklari va kamchiliklari

Zamonaviy dunyoda biz telefonlar, planshetlar, kompyuter monitorlari va televizorlar displeylari bilan muntazam ravishda aloqada bo'lamiz. Noyob kristall matritsalarni ishlab chiqarish texnologiyalari to'xtamaydi, shuning uchun ko'p odamlar oziq-ovqat bilan bog'liq muammolarga duch kelishadi, TFT yoki IPS ni tanlash yaxshiroqmi?

Elektr ta'minoti haqida to'liq tasavvurga ega bo'lish uchun ikkala matritsaning funktsiyalarini diqqat bilan ko'rib chiqish, ularning xususiyatlarini, afzalliklari va kamchiliklarini ko'rish kerak. Barcha nozikliklarni bilib, displey sizning ehtiyojlaringizga to'liq mos keladigan qurilmani osongina tanlashingiz mumkin. Bizning maqolamiz sizga qanday yordam berishi mumkin?

TFT matritsalari

Yupqa plyonkali tranzistorlar (TFT) - nozik tolali tranzistorlarning faol matritsasiga asoslangan noyob kristall displeylarni ishlab chiqarish tizimi. Bunday matritsaga kuchlanish qo'llanilganda, kristallar birma-bir aylanadi, bu esa qora rang hosil bo'lishiga olib keladi. Elektrni ulash bir xil natijani beradi - kristallar oq rang hosil qiladi. Taqdim etilgan kuchlanishni o'zgartirish tanlangan piksel terisida istalgan rang hosil qilish imkonini beradi.

TFT displeylarning asosiy afzalligi - ishlab chiqarish narxining sezilarli darajada pastligi, bu hozirgi analoglar bilan tengdir. Bundan tashqari, bunday matritsalar ajoyib yorqinlikni va vaqti-vaqti bilan kuchni chiqaradi. Negadir dinamik sahnalarni tomosha qilish uchun vaqt taqchil emas. TFT texnologiyasidan foydalangan holda tayyorlangan displeylar ko'pincha byudjet televizorlari va monitorlarida qo'llaniladi.

Bir nechta TFT displeylar:

    • past rang uzatish. Texnologiya har bir kanal uchun 6 bitga ega;
    • Kristallarning spiral joylashuvi tasvir kontrastiga salbiy ta'sir qiladi;
    • Siz qaraganingizda tasvir yorqinligi sezilarli darajada kamayadi;
    • "buzilgan" piksellarning yuqori chastotasi;
    • kam energiya iste'moli.

Eng muhimi, TFT matritsasining qisqa bo'limlari ishlayotganda qora rangda ko'rsatilgan. Siz kul ranggacha borishingiz mumkin, aks holda u kontrastli bo'lishi kerak.

IPS matritsalari

IPS matritsasi TFT texnologiyasiga asoslangan juda rivojlangan displeydir. Ushbu matritsalar orasidagi asosiy farq shundaki, TFT kristallari kamdan-kam hollarda spiral shaklida joylashadi, IPSda esa kristallar bir xil tekislikda, bir-biriga parallel ravishda yotadi. Bundan tashqari, elektr yo'qligi sababli, hid atrofga aylanmaydi, bu qora rang sxemasida ijobiy aks etadi.

IPS matritsasining afzalliklari:

  • Men atrofga qarayman, lekin tasvirning yorqinligi pasaymaydi, u 178 darajaga ko'tariladi;
  • rang uzatish bo'yalgan. Teri kanali orqali uzatiladigan ma'lumotlar miqdori 8 bitgacha oshirildi;
  • Kontrast yaxshilandi;
  • energiya sarfini kamaytirish;
  • "buzilgan" yoki yonib ketgan piksellar paydo bo'lishining past ehtimoli.

IPS matritsasidagi tasvirlar yanada jonli va jonli ko'rinadi, ammo bu ushbu texnologiya biroz qisqartirilganligini anglatmaydi. Old panelli IPS holatida tasvirning yorqinligi sezilarli darajada kamayadi. Bundan tashqari, boshqariladigan elektrodlarni almashtirgandan so'ng, bunday ta'sirga duchor bo'lgan, chunki matritsani qayta tiklash vaqti keldi. Oxirgi, ammo muhim kamchilik - bu IPS displeylarini ishlatadigan qurilmalar uchun nisbatan yuqori narx. Qoida tariqasida, ular TFT matritsasi bilan o'xshashlarga qaraganda 10-20% qimmatroq.

Vibratsiyali nima: TFT chi IPS?

Tasvirlarning o'ziga xos ahamiyatidan qat'i nazar, TFT va IPS matritsalari juda o'xshash texnologiyalarga ega ekanligi aniq. Hidlar faol matritsalar va nodir kristallarning vikoristik tuzilmalari asosida yaratilgan. Ko'pgina ishlab chiqaruvchilar IPS matritsalariga o'zlarining afzalliklarini berishadi. Ajoyib yangilik shundaki, hidlar plazma matritsalari bilan katta raqobatga olib kelishi mumkin va kelajakda ko'plab istiqbollarga ega bo'lishi mumkin. Prote TFT matritsalari ham rivojlanmoqda. TFT-TN va TFT-HD displeylari ham bozorga chiqarilishi mumkin. Ular amalda tasvirlarni IPS matritsalariga qurbon qilmaydi, ammo bu tasvir sifatini oshirishga imkon beradi. Biroq, bunday monitorlarga ega qurilmalar unchalik ko'p emas.

Agar tasvir sifati siz uchun muhim bo'lsa va siz biroz qo'shimcha pul to'lashga tayyor bo'lsangiz, u holda IPS displeyli qurilma eng yaxshi tanlovdir.

Xususiyatlar va xususiyatlarni aniqlash uchun qisqartmalardan foydalanish kerak. IPS va TFT ekranlari shikastlanganda, natijada IPS texnologiyasi (matritsa) TFT matritsasi va panellarining boshqa turi hisoblanadi. Ikki texnologiyani bir-biri bilan taqqoslab bo'lmaydi.

ALE! TN-TFT texnologiyasi - u va IPS o'rtasidagi o'qni tanlash va sozlash mumkin. Shuning uchun, agar biz qaysi ekran yaxshiroq ekanligi haqida gapiradigan bo'lsak: IPS yoki TFT, biz har qanday holatda TFT ekranlarini hisobga olamiz, lekin turli texnologiyalar asosida ishlab chiqariladi: TN va IPS.

TN-TFT va IPS haqida qisqacha

TN-TFT - noyob kristalli ekran matritsasiga asoslangan texnologiya. Bu erda kristallar, agar ularning qo'mitalariga kuchlanish berilmasa, 90 gradusda yolg'iz turadi. Hidlar spiral bo'ylab harakatlanadi va ularga kuchlanish qo'llanilganda, hidlar kerakli rangni hosil qiladigan tarzda aylanadi.

IPS - bu texnologiya kristallar bir xil ekran maydonida (birinchi holatda, spiral) bir-biriga parallel ravishda joylashtirilganligi bilan ajralib turadi. Hammasi murakkab... amalda TN va IPS matritsasiga asoslangan ekranlar o'rtasidagi farq shundaki, IPS ideal tarzda qora rangni aks ettiradi, buning natijasida rasm yanada tiniq va jonli ko'rinadi.

TN-TFT mavjud bo'lmasa-da, bu matritsaning rang uzatish qobiliyati ishonchni ilhomlantirmaydi. Bu erda teri pikseli o'zining tukli soyasini kiyishi mumkin, shuning uchun ranglar aralashtiriladi. IPS matritsalari rasmni yanada chiroyli ko'rsatadi va ishlov berish ham osonroq. IPS, shuningdek, katta ta'sir ostida ekranda ko'rsatilgan narsalarni kuzatish imkonini beradi. Agar siz TN-TFT ekraniga bir xil ramka ostida qarasangiz, ranglar panellarda bo'lib, rasmni ko'rishni qiyinlashtiradi.

TN afzalliklari

Biroq, TN-TFT matritsalari o'zlarining afzalliklariga ega. Buning asosiy sababi piksellarning past oqimliligidir. Parallel kristallarning butun majmuasini kerakli burchak ostida aylantirish uchun IPS bir soatdan ko'proq vaqtni talab qiladi. Shuning uchun, o'yin o'ynash yoki dinamik sahnalarni ko'rsatish uchun monitor tanlashda, agar soyaning ravshanligi muhim bo'lsa, TN-TFT texnologiyasi asosida ekranning o'zini tanlash yaxshidir.

Boshqa tomondan, kompyuterdan dastlabki ish bilan piksel soatlaridagi farqni qayd etib bo'lmaydi. Siz buni ko'pincha jangovar filmlar va video o'yinlarda sodir bo'ladigan dinamik sahnalarni bir soat tomosha qilgandan keyin ko'rishingiz mumkin.

Yana bir ortiqcha - kam energiya iste'moli. IPS matritsalari energiya tejamkor, chunki Kristallar qatorini aylantirish uchun ular juda ko'p kuchlanishni talab qiladi. Shuningdek, TFT asosidagi ekranlar yuqori quvvat sarfini talab qiluvchi va batareya quvvatini tejaydigan mobil gadjetlar uchun eng mos keladi.

Va shuningdek - TN-TFT matritsalari arzonroq. Bugungi kunda TN texnologiyasiga asoslangan modeldan arzonroq bo'lgan monitorlarni (arzon yoki EPT modellari bo'ladimi) topa olmaysiz. Ekranga ega har qanday byudjetli elektronika qurilmasi TN-TFT matritsasini talab qiladi.

Xo'sh, qaysi ekran chiroyliroq:TFT yokiIPS:

  1. Ko'proq soatlab tahrirlash uchun IPS kamroq ma'nosi (o'yin va harakat sahnalari uchun yomon);
  2. IPS deyarli mukammal ranglarni ko'paytirish va kontrastni kafolatlaydi;
  3. IPS - bu ko'rib chiqilishi kerak bo'lgan eng muhim narsa;
  4. IPS elektr energiyasidan ko'ra ko'proq energiya sarflaydi;
  5. Ular ham qimmatroq, TN-TFT esa arzonroq.

O'q, printsipial jihatdan, bu matritsalar orasidagi barcha farqdir. Agar siz barcha afzalliklar va kamchiliklarni hisobga olsangiz, unda, albatta, aniq bir xulosaga kelish oson: IPS ekranlari ancha chiroyli.


Mehribon bo'ling, maqolani baholang:

Monitorning (ekranning) yorqinligi shaxsiy kompyuter foydalanuvchilarining ko'zlarini saqlab qolish uchun juda muhimdir. Ko'p yillar davomida monitor orqasida intensiv ishlash sizning ko'rish qobiliyatiga yanada kuchli talablar qo'yadi. Tasvirning ravshanligi asosan ekrandagi fosfor nuqtalarining o'lchamiga bog'liq. Nuqtalar orasidagi o'rta masofa don deyiladi. Boshqa monitorlar uchun bu parametr 0,21 dan 0,31 gacha. Muhim parametrlar - ramka (vertikal) otish chastotasi va kichik (gorizontal) otish va video signalni uzatish miqdori. Kadr tezligi qanchalik baland bo'lsa, tasvir shunchalik barqaror bo'ladi va ko'rish uchun kamroq vaqt ketadi (aniq monitorlar uchun kadr tezligi 70-80 Gts). Kilogertsdagi qatorlar chastotasi bir kadrda ko'rsatilgan qatorlar sonini kadr tezligiga ko'paytirish yo'li bilan aniqlanadi. Video signal uchun uzatish chastotalari diapazoni (o'zgartirilgan MGts) qatordagi nuqtalar soni va kichik namunaning chastotasi qo'shilishi sifatida aniqlanadi. Quyida TFT LCD displeylarning asosiy xususiyatlari keltirilgan:

1. Shamollatish teshigi.

Diafragma yangilanishi (yuqori teshik) ê tekis tasvir, yoki samarali diafragma maydoni, er osti matritsasiga RC displeyi. Narx qanchalik baland bo'lsa, displey shunchalik yorqinroq bo'ladi , ranglar bilan band bo'lgan maydon ortadi. Bu ham ortadi kontrast . Old ochilish PK displeyining muhim ko'rsatkichi bo'lib, uning yorqinligini baholash uchun ishlatiladi.

2. Atrofga nazar solaman.

PK monitori tasvirining kontrasti qayerda parvarish qilinadigan joyga qarab o'zgaradi. Kut zoru bu o'zgarishni tavsiflaydi. Yuqoriga/pastga va o'ngga/chap qo'lga o'tishda kontrastni o'zgartirish orqali ifodalar bo'lishi mumkin. Noyob kristallning sig'imi tushayotgan yorug'lik chegarasi ostidagi buyuk dunyoda yotadi. . Shunday qilib, kontrastdagi o'zgarishlar kirish va chiqishdagi uzatish koeffitsienti bilan belgilanadi.

Kesishning ma'nosini ko'rsatganingizga ishonch hosil qiling, masalan, 170/170 °. Tez atrofga nazar solamanє Saqlash kontrast nisbati 10:1 dan kam emas. Bunday holda, ranglarni bu holatda o'tkazish mutlaqo kerak, shuning uchun ranglar teskari bo'ladi (ranglar matritsaning markazida ko'rsatiladi va ranglarda, tabiiyki, ular rang ostida ko'rinadi).

3. Interferentsiya.

Interferentsiya ichida paydo bo'ladi salbiy Piksellarning o'zaro bog'lanishi , agar faollashtirishlar keskinlik bilan piksel idishning passiviga oqadi . Bu oddiy panellar uchun xarakterli ahamiyatga ega STN turi, ammo faol matritsalarga ega bo'lgan panellarda interferentsiyaning ozgina oqimi mavjud.
4. Yaskravist.

PK displeylarining yorqinligini sozlash uchun quyidagi qiymatlar qo'llaniladi: NIT, oyoq Lambert kandela kvadrat metr uchun - cd / m (cd / m).

Displey yorqinligi paydo bo'ladi Rostini aytaman orqa yoritishі kirish nazorati panellar.

Noyob kristallning o'tkazuvchanligi past bu tasvirning yorqinligini oshirish uchun g'alaba diafragma eshiklari katta havo eshigidan , polarizatsiya panellari va rangli filtrlar yuqori o'tkazuvchanlik yoki prizma bilan.

5. Ko'p rejimli operatsiya vaqtida tasvirni masshtablash.

TFT monitorlar uchun alohida XGA (1024x768) va SXGA (1280x1024) formatlari tavsiya etiladi, bundan tashqari bu monitorlar SVGA va VGA toʻliq ekranli kengaytma rejimlarini qoʻllab-quvvatlaydi. Biroq, SVGA va kichikroq rejimlar kabi alohida tasvirlar bilan tasvirdagi belgilar qo'pol va beqaror ko'rinishi mumkin. Buning sababi shundaki, uchun piksellarning asosiy soni 14 va 15 dyuymli TFT panellar Rejim uchun bulo vibrano XGA. Shuning uchun, tasvirni yaratish uchun SVGA yoki VGA rejimlarida aybdor teskari bo'ladi.

Asosiy muammo bu bozor sharoitida kompaniyaning raqobatbardoshligi sohasida. Kompaniyalar to'lamaydi maxsus tashriflar aniq tasvirni ta'minlashdan oldin bagator rejimi roboti bilan monitor. Yetkazib berildi va amalga oshirildi Kengaytirilgan tasvirni masshtablash funktsiyasi (Image Enhancement Function), yakka, vikorista usuli chiziqli bo'lmagan interpolyatsiya Tasvirni yaxshilash uchun bu sizga yaratilishni asosiy nashrdan alohida, alohida nashrda aniq ko'rish imkonini beradi.

6. Qo'shiq aytish vaqti keldi.

Bu ko'rsatkich noyob kristall panel rangini o'zgartiradigan minimal soatni ko'rsatadi. Matritsaning oqishini sozlashning ikki yo'li mavjud: qoradan qoragacha (qora-oq-qora),і kulrangdan kulgacha(kulrang gradatsiyalar orasida), Bundan tashqari, ushbu baholash usullarining ahamiyati juda katta farq qiladi. Ekstremal pozitsiyalar (qora va oq) orasidagi pozitsiyani o'zgartirganda kristalga maksimal kuchlanish beriladi va pin maksimal tezlikda aylanadi (bu xususiyat joriy monitorlarning xususiyatlarida ko'rsatilishi kerak). : 8, 6, inode va 4 ms. Siqilgan kristallar bilan kulrang gradatsiyalar orasida reklama uchun taqdim etilgan sezilarli darajada kamroq Kuchlanishi, chunki ular kerakli ipni olib tashlash uchun aniq joylashtirilishi kerak va buning uchun juda ko'p sarflanadi (14 ms dan 28 ms gacha). Yaqinda biz ushbu muammoni hal qilishning yoqimli usulini topa oldik. Maksimal kuchlanish kalitga beriladi (yoki nolga tushiriladi) va kerakli vaqtda kristall holati darhol kerakli holatga o'rnatiladi. Ushbu usulning barcha afzalliklariga qo'shimcha ravishda, kuchlanishni aniq nazorat qilishning murakkabligi sezilarli darajada oshadi. shoxning chastotasidan oshib ketadigan chastota bilan. Bundan tashqari, asosiy impuls kristallarning qovurg'a holatiga mos kelishi kerak (Samsung allaqachon modellarni taqdim etgan. Digital Capacitance Compensation texnologiyasi bilan, bu aslida PVA matritsasi uchun 8-6 ms ichida ishlashni ta'minlaydi).

7. Tasvir kontrasti.

Kontrast qiymati "qora" va "oq" bosqichlarda matritsaning yorqinligi asosida aniqlanadi (qora rang kamroq ochiladi va oq rang qanchalik yorqin bo'lsa, kontrast shunchalik yuqori bo'ladi). Ushbu displey video tasvirning aniq ko'rinishi va uchun muhimdir har qanday tasvir yaxshi tasvir(masalan, uchun S-IPS o'rtacha qiymat - 400:1 , va uchun PVA - 1000:1 gacha). Monitorning xususiyatlarida quyidagilar ko'rsatilgan: uchun o'lchanadi matritsalar, monitor uchun emas, va maxsus stendda, agar matritsaga juda standart kuchlanish berilsa, yorug'lik qat'iy standart kuchlanish bilan ta'minlanadi va hokazo).

8. Ranglarni uzatish.

Ushbu to'g'rilik namoyishini unutmang. Belshist matritsasi, texnologiyaning qulashi ortidagi bokiralik, Koloroga 24 bitni uzatish (vicicacituces ê Adetori Montory PVA VID Samsung- Niyako tizimlari 18-abed PVA samsung o'rnatishda ta'kidlanmaydi).

Windows 7