Каталог

2,8" TFT дисплей 320*240 SPI

Цена:

1380 р.
менее 50 шт.
Уже в корзине
Код товара: 16150
Оригинальное название:

Описание товара

2,8" TFT дисплей 320*240 SPI

Технические характеристки:

  • тип матрицы: TFT
  • диагональ: 2.8"
  • разрешение : 240x320 пикселей
  • напряжение питания: 3.3 вольт
  • кол-во цветов: 65 тысяч
  • углы обзора: 60°
  • активная область: 43.2*57.6мм.
  • графический контроллер: ILI9431
  • интерфейс обмена данными с дисплеем: SPI, 4-проводной, лог. уровень 3,3 вольт
  • тачскрин: резистивный
  • контроллер тачскрин: XPT2046
  • интерфейс обмена данными с контроллером тачскрина: SPI, 4-проводной, лог. уровень 3,3 вольт
  • встроенный картридер: SD карта
  • интерфейс обмена данными с картой памяти: SPI, 4-проводной, лог. уровень 3,3 вольт
  • размер: 51х82.1х5.8 мм
  • рабочая температура: -20...+70°С

Расположение и назначение выводов:

  • T-IRQ - выход прерывания с контроллера тачскрина XPT2046
  • T_DO - выход данный (MISO)  с контроллера тачскрина XPT2046
  • T_DIN - вход данных (MOSI) с контроллера тачскрина XPT2046
  • T_CS - выбор ведомого устройства при обмене данными с контроллером тачскрина XPT2046
  • T_CLK - вход тактирующих импульсов контроллера тачскрина XPT2046
  • SDO (MISO) - выход данный с контроллера дисплея ILI9431
  • LED - включение подсветки дисплея
  • SCK - вход тактирующих импульсов на контроллер дисплея ILI9431
  • SDI (MOSI) - вход данных на контроллер дисплея ILI9431
  • DC - выбор данные/команда контроллера дисплея ILI9431
  • RESET - сброс контроллера дисплея ILI9431
  • CS - выбор ведомого устройства контроллера дисплея ILI9431
  • GND - общий полюс питания
  • VCC - положительный полюс питания 3,3 вольт
  • SD_CS - выбор ведомого устройства карты памяти SD
  • SD_MOSI - вход данных карты памяти SD
  • SD_MISO - выход данный карты памяти SD
  • SD_SCK - вход тактирующих импульсов карты памяти SD

Пример исходного кода для ArduinoIDE с применением библиотеки Adafruit_ILI9341

//This example implements a simple sliding On/Off button. The example
// demonstrates drawing and touch operations.
//
//Thanks to Adafruit forums member Asteroid for the original sketch!
//
#include <Adafruit_GFX.h>
#include <SPI.h>
#include <Wire.h>
#include <Adafruit_ILI9341.h>
#include <Adafruit_STMPE610.h>

// This is calibration data for the raw touch data to the screen coordinates
#define TS_MINX 150
#define TS_MINY 130
#define TS_MAXX 3800
#define TS_MAXY 4000

#define STMPE_CS 8
Adafruit_STMPE610 ts = Adafruit_STMPE610(STMPE_CS);
#define TFT_CS 10
#define TFT_DC 9
Adafruit_ILI9341 tft = Adafruit_ILI9341(TFT_CS, TFT_DC);

boolean RecordOn = false;

#define FRAME_X 210
#define FRAME_Y 180
#define FRAME_W 100
#define FRAME_H 50

#define REDBUTTON_X FRAME_X
#define REDBUTTON_Y FRAME_Y
#define REDBUTTON_W (FRAME_W/2)
#define REDBUTTON_H FRAME_H

#define GREENBUTTON_X (REDBUTTON_X + REDBUTTON_W)
#define GREENBUTTON_Y FRAME_Y
#define GREENBUTTON_W (FRAME_W/2)
#define GREENBUTTON_H FRAME_H

void drawFrame()
{
  tft.drawRect(FRAME_X, FRAME_Y, FRAME_W, FRAME_H, ILI9341_BLACK);
}

void redBtn()
{ 
  tft.fillRect(REDBUTTON_X, REDBUTTON_Y, REDBUTTON_W, REDBUTTON_H, ILI9341_RED);
  tft.fillRect(GREENBUTTON_X, GREENBUTTON_Y, GREENBUTTON_W, GREENBUTTON_H, ILI9341_BLUE);
  drawFrame();
  tft.setCursor(GREENBUTTON_X + 6 , GREENBUTTON_Y + (GREENBUTTON_H/2));
  tft.setTextColor(ILI9341_WHITE);
  tft.setTextSize(2);
  tft.println("ON");
  RecordOn = false;
}

void greenBtn()
{
  tft.fillRect(GREENBUTTON_X, GREENBUTTON_Y, GREENBUTTON_W, GREENBUTTON_H, ILI9341_GREEN);
  tft.fillRect(REDBUTTON_X, REDBUTTON_Y, REDBUTTON_W, REDBUTTON_H, ILI9341_BLUE);
  drawFrame();
  tft.setCursor(REDBUTTON_X + 6 , REDBUTTON_Y + (REDBUTTON_H/2));
  tft.setTextColor(ILI9341_WHITE);
  tft.setTextSize(2);
  tft.println("OFF");
  RecordOn = true;
}

void setup(void)
{
  Serial.begin(9600);
  tft.begin();
  if (!ts.begin()) { 
    Serial.println("Unable to start touchscreen.");
  } 
  else { 
    Serial.println("Touchscreen started."); 
  }

  tft.fillScreen(ILI9341_BLUE);
  // origin = left,top landscape (USB left upper)
  tft.setRotation(1); 
  redBtn();
}

void loop()
{
  // See if there's any  touch data for us
  if (!ts.bufferEmpty())
  {   
    // Retrieve a point  
    TS_Point p = ts.getPoint(); 
    // Scale using the calibration #'s
    // and rotate coordinate system
    p.x = map(p.x, TS_MINY, TS_MAXY, 0, tft.height());
    p.y = map(p.y, TS_MINX, TS_MAXX, 0, tft.width());
    int y = tft.height() - p.x;
    int x = p.y;

    if (RecordOn)
    {
      if((x > REDBUTTON_X) && (x < (REDBUTTON_X + REDBUTTON_W))) {
        if ((y > REDBUTTON_Y) && (y <= (REDBUTTON_Y + REDBUTTON_H))) {
          Serial.println("Red btn hit"); 
          redBtn();
        }
      }
    }
    else //Record is off (RecordOn == false)
    {
      if((x > GREENBUTTON_X) && (x < (GREENBUTTON_X + GREENBUTTON_W))) {
        if ((y > GREENBUTTON_Y) && (y <= (GREENBUTTON_Y + GREENBUTTON_H))) {
          Serial.println("Green btn hit"); 
          greenBtn();
        }
      }
    }

    Serial.println(RecordOn);
  }  
}

 

footer shadow
Контакты

г. Москва, Пятницкое ш. д. 18, пав. 566

zakaz@compacttool.ru

8-495-752-55-22

compacttool logoadaptive site

accepted payment systems

Информация представленная на данном информационном ресурсе преследует исключительно рекламные цели и не является договором-офертой !

© Все права защищены 2015 - 2024г https://compacttool.ru