Мобильная версия Форум 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