Мобільна версія Форум Arduino Документація Гарантійні умови 0 0
UA RU
Графік роботи магазину:
Пн-Пт: 8.00 - 19.00
Сб: 10.00 - 17.00
Нд: вихідний
Каталог
Напиши статтю і отримай знижку!

3.2" 240x320 TFT LCD дисплей з сенсорним екраном на ILI9341 і XPT2046

код: AOC422

  • Доставка по Україні
    Ми відправляємо замовлення "Новою Поштою" по Україні. Також можливий самовивіз з нашого магазину
  • 6 місяців гарантії

    Ми даємо гарантію на будь-який товар придбаний в нашому магазині:

    6 місяців на товари, крім батарейок і акумуляторів

    14 днів на батарейки та акумулятори

    У разі настання гарантійного випадку товар безкоштовно ремонтується, змінюється на аналогічний або повертається повна сума його вартості

    Уважно ознайомтеся з умовами гарантії.
  • Проконсультуємо до і після продажу
    Ви можете задавати питання письмово по e-mail або за контактними телефонами нашого магазину
739 грн

очікується

Повідомити
17
голосувати
  • 3.2" 240x320 TFT LCD дисплей з сенсорним екраном на ILI9341 і XPT2046
  • 3.2" 240x320 TFT LCD дисплей з сенсорним екраном на ILI9341 і XPT2046
  • 3.2" 240x320 TFT LCD дисплей з сенсорним екраном на ILI9341 і XPT2046
  • Опис
  • Відгуки (28)
  • Задати питання

Якісний 3,2 "TFT LCD дисплей на контролері ILI9341. Дисплей оснащений сенсорною панеллю з контролером XPT2046, який видає точку дотику в цифровому вигляді. За допомогою цього дисплея можна побудувати системи контролю з керуванням через сенсорний дисплей, фоторамки і так далі. У комплекті йде стилус.

Дисплей підтримується бібліотекою UTFT починаючи з версії v2.82, тому не забудьте оновитися. Приклад ініціалізації: UTFT myGLCD (CTE32_R2,38,39,40,41);

Де CTE32_R це тип дисплея в просторі імен бібліотеки UTFT, а 38,39,40,41 це піни, до яких підключені відповідно виводи RS, WR, CS, RST

Увага! Дисплей працює з рівнем сигналів 3.3В, якщо його підключати до мікроконтролерів, що працюють з рівнями 5В (наприклад Arduino Mega) він може вийти з ладу. Рекомендуємо використовувати Arduino Due або STM32.

Характеристики:

  • Розмір дисплея: 3.2 дюйма
  • Роздільна здатність: 240 * 320
  • Тип матриці: TFT
  • Драйвер дисплея: ILI9341
  • Драйвер сенсорної панелі: XPT2046;
  • Інтерфейс: 16-біт паралельний
  • Тип інтерфейсу: 6800, 8080 і STM32
  • Інтерфейс сенсорного екрану: 16-біт
  • Напруга живлення: 5В
  • Напруга логічних сигналів: 3.3 В
  • Підсвічування: світлодіодна з ШІМ контролем яскравості
  • Додатковий інтерфейс: інтерфейс SD карти
  • Кількість кольорів: 262,000 RGB
  • Пам'ять дисплея: 172,800 байт


Відео:

Посилання:

Приклад скетчу, який показаний на відео:

// UTFT_Demo_320x240 
// Copyright (C)2015 Rinky-Dink Electronics, Henning Karlsen. All right reserved
// web: http://www.RinkyDinkElectronics.com/
//
// This program is a demo of how to use most of the functions
// of the library with a supported display modules.
//
// This demo was made for modules with a screen resolution 
// of 320x240 pixels.
//
// This program requires the UTFT library.
//

#include 

extern uint8_t BigFont[];
// Declare which fonts we will be using
extern uint8_t SmallFont[];

// Set the pins to the correct ones for your development shield
// ------------------------------------------------------------
// Standard Arduino Mega/Due shield            : ,38,39,40,41
// CTE TFT LCD/SD Shield for Arduino Due       : ,25,26,27,28
// Teensy 3.x TFT Test Board                   : ,23,22, 3, 4
// ElecHouse TFT LCD/SD Shield for Arduino Due : ,22,23,31,33
//
// Remember to change the model parameter to suit your display module!
UTFT myGLCD(CTE32_R2,38,39,40,41);

void setup()
{
  randomSeed(analogRead(0));
  pinMode(46,OUTPUT);
  digitalWrite(46,1);
  pinMode(47,OUTPUT);
  digitalWrite(47,1);
// Setup the LCD
  myGLCD.InitLCD();
  myGLCD.setFont(SmallFont);
}

void loop()
{
  int buf[318];
  int x, x2;
  int y, y2;
  int r;

// Clear the screen and draw the frame
  myGLCD.clrScr();
  myGLCD.setFont(SmallFont);
  myGLCD.setColor(255, 0, 0);
  myGLCD.fillRect(0, 0, 319, 13);
  myGLCD.setColor(64, 64, 64);
  myGLCD.fillRect(0, 226, 319, 239);
  myGLCD.setColor(255, 255, 255);
  myGLCD.setBackColor(255, 0, 0);
  myGLCD.print("* Universal Color TFT Display Library *", CENTER, 1);
  myGLCD.setBackColor(64, 64, 64);
  myGLCD.setColor(255,255,0);
  myGLCD.print("https://arduino.ua/", CENTER, 227);

  myGLCD.setColor(0, 0, 255);
  myGLCD.drawRect(0, 14, 319, 225);

// Draw crosshairs
  myGLCD.setColor(0, 0, 255);
  myGLCD.setBackColor(0, 0, 0);
  myGLCD.drawLine(159, 15, 159, 224);
  myGLCD.drawLine(1, 119, 318, 119);
  for (int i=9; i<310; i+=10)
    myGLCD.drawLine(i, 117, i, 121);
  for (int i=19; i<220; i+=10)
    myGLCD.drawLine(157, i, 161, i);

// Draw sin-, cos- and tan-lines  
  myGLCD.setColor(0,255,255);
  myGLCD.print("Sin", 5, 15);
  for (int i=1; i<318; i++)
  {
    myGLCD.drawPixel(i,119+(sin(((i*1.13)*3.14)/180)*95));
  }
  
  myGLCD.setColor(255,0,0);
  myGLCD.print("Cos", 5, 27);
  for (int i=1; i<318; i++)
  {
    myGLCD.drawPixel(i,119+(cos(((i*1.13)*3.14)/180)*95));
  }

  myGLCD.setColor(255,255,0);
  myGLCD.print("Tan", 5, 39);
  for (int i=1; i<318; i++)
  {
    myGLCD.drawPixel(i,119+(tan(((i*1.13)*3.14)/180)));
  }

  delay(1200);

  myGLCD.setColor(0,0,0);
  myGLCD.fillRect(1,15,318,224);
  myGLCD.setColor(0, 0, 255);
  myGLCD.setBackColor(0, 0, 0);
  myGLCD.drawLine(159, 15, 159, 224);
  myGLCD.drawLine(1, 119, 318, 119);

// Draw a moving sinewave
  x=1;
  for (int i=1; i<(318*20); i++) 
  {
    x++;
    if (x==319)
      x=1;
    if (i>319)
    {
      if ((x==159)||(buf[x-1]==119))
        myGLCD.setColor(0,0,255);
      else
        myGLCD.setColor(0,0,0);
      myGLCD.drawPixel(x,buf[x-1]);
    }
    myGLCD.setColor(0,255,255);
    y=119+(sin(((i*1.1)*3.14)/180)*(90-(i / 100)));
    myGLCD.drawPixel(x,y);
    buf[x-1]=y;
  }

  delay(1200);
  
  myGLCD.setColor(0,0,0);
  myGLCD.fillRect(1,15,318,224);

// Draw some filled rectangles
  for (int i=1; i<6; i++)
  {
    switch (i)
    {
      case 1:
        myGLCD.setColor(255,0,255);
        break;
      case 2:
        myGLCD.setColor(255,0,0);
        break;
      case 3:
        myGLCD.setColor(0,255,0);
        break;
      case 4:
        myGLCD.setColor(0,0,255);
        break;
      case 5:
        myGLCD.setColor(255,255,0);
        break;
    }
    myGLCD.fillRect(70+(i*20), 30+(i*20), 130+(i*20), 90+(i*20));
    delay(200);
  }

  delay(1200);
  
  myGLCD.setColor(0,0,0);
  myGLCD.fillRect(1,15,318,224);

// Draw some filled, rounded rectangles
  for (int i=1; i<6; i++)
  {
    switch (i)
    {
      case 1:
        myGLCD.setColor(255,0,255);
        break;
      case 2:
        myGLCD.setColor(255,0,0);
        break;
      case 3:
        myGLCD.setColor(0,255,0);
        break;
      case 4:
        myGLCD.setColor(0,0,255);
        break;
      case 5:
        myGLCD.setColor(255,255,0);
        break;
    }
    
    myGLCD.fillRoundRect(190-(i*20), 30+(i*20), 250-(i*20), 90+(i*20));
    delay(200);
  }
  
  delay(1200);
  
  myGLCD.setColor(0,0,0);
  myGLCD.fillRect(1,15,318,224);

// Draw some filled circles
  for (int i=1; i<6; i++)
  {
    switch (i)
    {
      case 1:
        myGLCD.setColor(255,0,255);
        break;
      case 2:
        myGLCD.setColor(255,0,0);
        break;
      case 3:
        myGLCD.setColor(0,255,0);
        break;
      case 4:
        myGLCD.setColor(0,0,255);
        break;
      case 5:
        myGLCD.setColor(255,255,0);
        break;
    }
    myGLCD.fillCircle(100+(i*20),60+(i*20), 30);
    delay(200);
  }
  
  delay(1200);
  
  myGLCD.setColor(0,0,0);
  myGLCD.fillRect(1,15,318,224);

// Draw some lines in a pattern
  myGLCD.setColor (255,0,0);
  for (int i=15; i<224; i+=5)
  {
    myGLCD.drawLine(1, i, (i*1.44)-10, 224);
    delay(50);
  }
  myGLCD.setColor (255,0,0);
  for (int i=224; i>15; i-=5)
  {
    myGLCD.drawLine(318, i, (i*1.44)-11, 15);
    delay(50);
  }
  myGLCD.setColor (0,255,255);
  for (int i=224; i>15; i-=5)
  {
    myGLCD.drawLine(1, i, 331-(i*1.44), 15);
    delay(50);
  }
  myGLCD.setColor (0,255,255);
  for (int i=15; i<224; i+=5)
  {
    myGLCD.drawLine(318, i, 330-(i*1.44), 224);
    delay(50);
  }
  
  delay(1200);
  
  myGLCD.setColor(0,0,0);
  myGLCD.fillRect(1,15,318,224);

// Draw some random circles
  for (int i=0; i<100; i++)
  {
    myGLCD.setColor(random(255), random(255), random(255));
    x=32+random(256);
    y=45+random(146);
    r=random(30);
    myGLCD.drawCircle(x, y, r);
    delay(50);
  }

  delay(1200);
  
  myGLCD.setColor(0,0,0);
  myGLCD.fillRect(1,15,318,224);

// Draw some random rectangles
  for (int i=0; i<100; i++)
  {
    myGLCD.setColor(random(255), random(255), random(255));
    x=2+random(316);
    y=16+random(207);
    x2=2+random(316);
    y2=16+random(207);
    myGLCD.drawRect(x, y, x2, y2);
    delay(50);
  }

  delay(1200);
  
  myGLCD.setColor(0,0,0);
  myGLCD.fillRect(1,15,318,224);

// Draw some random rounded rectangles
  for (int i=0; i<100; i++)
  {
    myGLCD.setColor(random(255), random(255), random(255));
    x=2+random(316);
    y=16+random(207);
    x2=2+random(316);
    y2=16+random(207);
    myGLCD.drawRoundRect(x, y, x2, y2);
    delay(50);
  }

  delay(1200);
  
  myGLCD.setColor(0,0,0);
  myGLCD.fillRect(1,15,318,224);

  for (int i=0; i<100; i++)
  {
    myGLCD.setColor(random(255), random(255), random(255));
    x=2+random(316);
    y=16+random(209);
    x2=2+random(316);
    y2=16+random(209);
    myGLCD.drawLine(x, y, x2, y2);
    delay(50);
  }

  delay(1200);
  
  myGLCD.setColor(0,0,0);
  myGLCD.fillRect(1,15,318,224);

  for (int i=0; i<10000; i++)
  {
    myGLCD.setColor(random(255), random(255), random(255));
    myGLCD.drawPixel(2+random(316), 16+random(209));
  }

  delay(1200);

  myGLCD.fillScr(VGA_YELLOW);
  myGLCD.setColor(0, 0, 255);
  myGLCD.fillRoundRect(50, 70, 269, 169);
  myGLCD.setColor(255, 255, 255);
  myGLCD.setBackColor(0, 0, 255);
  myGLCD.setFont(BigFont);
  myGLCD.print("arduino.ua", CENTER, 105);
  
  delay (1000000);
}

Відгуки покупців про 3.2" 240x320 TFT LCD дисплей с сенсорным экраном на ILI9341 и XPT2046

Дмитрий (11.11.2021)

Подскажите, а можно подключить этот дисплей через специальный модуль для сокращения количества подключаемых портов к самому Ардуино? например такой https://arduino.ua/prod1790-iici2cinterfeis-lcd1602-2004

Відповісти

admin (12.11.2021)

Можно, однако потребуется три таких модуля и информация на дисплей будет выводиться очень медленно.

Відповісти

Дмитрий (13.11.2021)

Спасибо. А есть ещё какие-нибудь решения для сокращения количества подключаемых портов, но чтобы информация на дисплей выводилась с нормальной скоростью?

Відповісти

admin (13.11.2021)

Можно использовать дополнительный микроконтроллер, который будет заниматься выводом изображения.

Відповісти

Дмитрий Никитин (06.04.2020)

Экранчик супер! Работает на ура

Відповісти

Игорь (19.12.2019)

Реагирует только на стилус ?

Відповісти

admin (19.12.2019)

Сенсор реагирует на нажатие. Точное позиционирование возможно при использовании стилуса.

Відповісти

Максим (07.03.2019)

С esp8266 будет работать? у Adafruit_ILI9341 вроде как указаны только 2.х диагонали

Відповісти

admin (07.03.2019)

Работать будет, но не хватит выводов для управления...

Відповісти

Максим (07.03.2019)

Можно подробнее, чего не хватает и что не будет работать?

Відповісти

admin (07.03.2019)

Для вывода на экран необходимо выделить у контроллера 16+4 линии управления.

Відповісти

Максим (07.03.2019)

Что это за "16+4 линии управления" и как их выделить?

Відповісти

admin (07.03.2019)

Напишите нам на почту - постараемся объяснить.

Відповісти

Дмитрий (07.01.2019)

Покупал у Вас данный дисплей.
Подключил к плате STM32F4xx-discovery по шине SPI. На контакт VCC подал +5В, т.к. на плате дисплея есть преобразователь напряжения в 3,3В с тыльной стороны. Но на контакт "LED" не рискнул подавать 5В, а подал туда 3,3В. Как я понял, это питание самого экрана. Правильно ли я сделал? Не могу найти описание с напряжением на данном контакте. Спасибо.

Відповісти

admin (08.01.2019)

Да, Вы все сделали правильно.

Відповісти

Анатолий (10.01.2018)

В программа , которая представлена как пример есть не точность
напечатано в строке 15 :
#include

надо :(если применяете библиотеку UTFT

#include
#include


если есть возможность , отредактируйте

Відповісти

Дмитрий (20.01.2017)

Какой диапазон рабочих температур у этого дисплея?

Відповісти

admin (25.01.2017)

В диапазоне от -10 до +40 будет работать стабильно.

Відповісти

Дмирий (12.01.2017)

Здравствуйте, когда будет в наличии. нужно около 10шт

Відповісти

admin (13.01.2017)

Сформируйте заказ - поставим в ожидание.

Відповісти

Віталій Віталійович (14.11.2016)

Знайшов відомості, які мене цікавили та зацікавлять інших.
Ось посилання на один з російськомовних форумів, де обговорюють саме цей сенсорний екран: http://arduino.ru/forum/apparatnye-voprosy/kak-podklyuchit-displei-32-lcd-module

Обов''язково прочитайте усю гілку цього форуму від початку до кінця. Там побачите багато чого цікавого.
Раніше я написав, що через шину SPI графіку виводити неможливо, але виявляється, що виводити графіку через шину SPI таки можна. Шина SPI спільна для дисплея, сенсорної панелі та карти SD. Для кожного з цих випадків використовується свій власний сигнал вибору кристалу CS.
Там також надано посилання на архівний файл, де містяться схеми та приклади програм: https://yadi.sk/d/sOkpTV6nmLxeU
Але, нажаль, майже увесь вміст цього архіву на китайській мові. Але це не завадить розібратися де що.
Вдачі!

Відповісти

Віталій (15.11.2016)

Уточнення після ретельного читання гілки на форумі: http://arduino.ru/forum/apparatnye-voprosy/kak-podklyuchit-displei-32-lcd-module .
Через шину SPI можна лише обмінюватися даними з контролером сенсорної панелі, картою пам''яті SD та мікросхемою флеш-пам''яті, яка відсутня на платі. Нажаль, через шину SPI неможливо виводити графіку. Графіку можна виводити лише у вигляді паралельного 16-розрядного коду. Цього змінити неможливо, бо так вирішили зробити розробники цього модуля дисплея.

Відповісти

Анатолий (10.01.2018)

данный дисплей имеет чип ILI9341, сам чип может работать по SPI НО необходимо выставить сигналы па выводах М0х , на самой плате они не выведены , но на выводах дисплея (под ним ) они могут присутствовать , если их установить , и найти выводы SPI самого дисплея , наверное можно подключить , Увы , информации про распиновку самой платы дисплея (не товара) , и где найти нужные выводы - нет

Відповісти

admin (12.01.2018)

Интерфейс SPI на плату от дисплея не выведен...

Відповісти

Віталій Віталійович (11.11.2016)

Знайшов у Інтернеті відгуки стосовно цієї плати за цією адресою: https://ru.aliexpress.com/store/product/YX-free-shipping-3-2-inch-TFT-LCD-Touch-Screen-Module-Display-Ultra-HD-320X240-ILI9341/1630603_32609693050.html?detailNewVersion=&categoryId=400401
Цитата:
"
Углы обзора конечно не IPS, но немного лучше обычного LCD 16x2 строки. Экран работает только с шиной данных в 16 бит (8 бит и SPI не получится из-за особенностей печатной платы). Тач тоже работает терпимо. На плате есть место для нераспаяной SPI flash. Питание только 3.3В (не взирая на присутствующий стабилизатор питания). За свои деньги очень не плохой вариант. Из минусов: какой-либо документации на плату (как реально распаян экран на плате) у продавца нет. Приходится догадываться самому.
"

Відповісти

Віталій Віталійович (11.11.2016)

На упаковці сенсорного екрану є наступний напис:
SKU:QDM320DB16TP9341RA

Комусь може знадобиться. Можливо, цього достатньо, щоб вказати у графі "Найменування" у переліку елементів.
Нажаль, інших відомостей про цей сенсорний екран поки що немає.

Відповісти

Віталій Віталійович (11.11.2016)

Замовлення виконано швидко та оперативно. Дякую!

Збираюся використати цей дисплей у пристрої, який розробляю, тому мені доведеться в конструкторській документації вказати найменування дисплея (його марку) та виробника дисплею. Прошу надати ці відомості.

Прошу також, якщо можливо, надати схему електричну принципову цього пристрою.

1) Мене також цікавить, чи існують обмеження для використання шини SPI? Контролери дисплею ILI9341 та сенсорної панелі XPT2046 керуються через одну и ту саму шину SPI? Чи кожен з цих контролерів має окрему шину SPI? Або через шину шину SPI керується лише контролер XPT2046, а для керування контролером дисплею доведеться задіяти паралельний інтерфейс?
2) Цікавить досвід використання цього сенсорного екрану разом з мікроконтролерами STM32. Які бібліотеки найбільш підходять для цього сенсорного екрану?
Прошу дати відповіді на ці запитання якомога швидше.

Дякую.

Відповісти

admin (14.11.2016)

Подходит библиотека UTFT

Відповісти

Написати відгук:

Фото:

Є питання по "3.2" 240x320 TFT LCD дисплей з сенсорним екраном на ILI9341 і XPT2046" ?

Також рекомендуємо ознайомитися:

Шановні друзі! Ми намагаємося тримати на сайті інформацію про наявність товарів та ціни на них в актуальному стані. Коригування відбуваються постійно. Якщо ви знаходите ціну на товар завищеною, напишіть нам про це із посиланням на товар. Ми розглянемо лист та чи обгрунтуємо ціну, чи підкоригуємо її. Асортимент магазину дуже великий та іноді бувають помилки в ціноутворенні, особливо при скачках курсу долара. Дякуємо за розуміння.
оплата картами Visa і MasterCard