Arduino UNO подключение экрана

sword2001
Offline
Зарегистрирован: 23.01.2018

Всем доброе {время суток}! Не так давно я заказал с алиэкспресс данный экран: https://ru.aliexpress.com/item/2-0-TFT-LCD-Display-module-Touch-Screen-Shield-board-320-240-Resolution-w-Touch-Pen/32762075013.html?spm=2114.13010708.0.0.3CCYW0

И никак не могу понять, как подключить его и работать с ним!
Помогите, кому не сложно, как его подключить????
Юрий
------------------------
89153577794@mail.ru

sword2001
Offline
Зарегистрирован: 23.01.2018

Заранее всем спасибо за ваше потраченное время!

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Если Вы совсем ничего не знаете, то Вам лучше использовать плату-переходник. Она показана вот в этом видео, и там же есть ссылки на документацию.

sword2001
Offline
Зарегистрирован: 23.01.2018

Я не совсем ничего не знаю) но тут очень необычная расстановка ног и их название, поэтому без понятие, что куда подключать)

xDriver
xDriver аватар
Offline
Зарегистрирован: 14.08.2015
sword2001
Offline
Зарегистрирован: 23.01.2018

Знать бы, что куда идет, у меня есть монтажная плата и провода папа-папа

)

sword2001
Offline
Зарегистрирован: 23.01.2018

  НАШЕЛ!!!! Спс большое)

sword2001
Offline
Зарегистрирован: 23.01.2018

А нет, я подключил, даже дисплей загорелся, а экзамплы не работают( пишет, что  LGDP4524 не найден.  Нашел ITDB24E_8, но все равно, нет результата. Ноги проверил, подключил как в видео!)

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Я же Вам говорил, купите плату-переходник и не мучайтесь.

sword2001
Offline
Зарегистрирован: 23.01.2018

А какая разница, если я могу подключить напрямую и ошибка в коде?

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Ну, так там же Вы по SPI будете любой библиотекой пользоваться. Впрочем, если Вам разницы нет, то мне и подавно :)

 

sword2001
Offline
Зарегистрирован: 23.01.2018

Ну, лишний раз тратить деньги и ждать доставки 15 дней не хочется) Думал, что-то не так с экраном) Все таки, он загорается, так как идет питание, но код не видит его (не видит название экрана)

DAFdriver
Offline
Зарегистрирован: 12.08.2016

Всем добра . Столкнулся с небольшей проблемкой . Суть такова - есть скетч ,работает ,компилируется . Скетч под  двухстрочный индикатор LCD Keypad Sheild , а мне нужно подключить 1.8 TFTграфический дисплей , сьиблиотеками TFT.h и SPI.h 

DAFdriver
Offline
Зарегистрирован: 12.08.2016

Исходный сктч 

/*
 Подключение выводов LCD к Arduino:
 * LCD RS pin to digital pin 8
 * LCD EN pin to digital pin 9
 * LCD D4 pin to digital pin 4
 * LCD D5 pin to digital pin 5
 * LCD D6 pin to digital pin 6
 * LCD D7 pin to digital pin 7
 * LCD R/W pin to ground
 * 10K resistor:
 * ends to +5V and ground
 * wiper to LCD VO pin (pin 3)

Подключение аналоговых входов Arduino 
Analog A0 - сканирование кнопок, установленных на плате LCD (будут задействованы в будущем)
Analog A1 - измерение Uотр.(REF)
Analog A2 - измерение Uпад.(FWD)
*/

// include the library code:
#include <LiquidCrystal.h>

int sensorPin = A0;    // Определение вывода для сканирования кнопок
int sensorREF = A1;    // Определение вывода для измерение Uотр.(REF)
int sensorFWD = A2;    // Определение вывода для измерение Uпад.(FWD)
int sensorValue = 0;   // Перменная для временного хранения данных 
float voltageREF;      // Перемення для хранения значения Uотр.(REF) в вольтах
float voltageFWD;      // Перемення для хранения значения Uпад.(FWD) в вольтах
float SWR;             // Перемення для хранения значения КСВ

LiquidCrystal lcd(8, 9, 4, 5, 6, 7); // Инициализация LCD-экрана 

void setup() {              // Установочная часть программы
  lcd.begin(16, 2);         // Выбор режима 16 символов на 2 строки
  lcd.clear();              // Очистка экрана
  lcd.setCursor(2,0);       // Установка курсора на 2-ю позицию 0-ой строки
  lcd.print("SWR Antenna"); // Вывод надписи SWR Antenna
  delay(3000);              // Задерка 3 сек
  lcd.clear();              // Очистка экрана  
}

void loop() {                                  // Основной цикл
  
  sensorValue = analogRead(sensorREF);         // Чтение значения Uотр.(REF)
  voltageREF = sensorValue * (5.0 / 1023.0);   // Преобразование Uотр.(REF) в вольты
 
  sensorValue = analogRead(sensorFWD);         // Чтение значения Uпад.(FWD)
  voltageFWD = sensorValue * (5.0 / 1023.0);   // Преобразование Uпад.(FWD) в вольты
  
  lcd.setCursor(0, 0);                         // Установка курсора на 0-ю позицию 0-ой строки
  lcd.print("SWR= ");                          // Вывод надписи SWR=

  if (voltageFWD>0 && voltageREF>0)            // Если Uпад.(FWD)>0 и Uотр.(REF)>0, то выводим значение КСВ, расчитанное по известной формуле
  {
  SWR = (voltageFWD+voltageREF)/(voltageFWD-voltageREF);
  lcd.print(SWR);
  lcd.print("       ");
  }
  else                                          // Если Uпад.(FWD)=0 и Uотр.(REF)=0 - это происходит при отсутствии несущей в антенне.
  {
  lcd.print("Waiting... ");                     // то выводим надпись Waiting...
  }
   delay(200);                                   // Задержка 200 мс и уходим на новое измерение
}

 

DAFdriver
Offline
Зарегистрирован: 12.08.2016

Я хочу переделать так 

/* 
Тестировалось на Arduino IDE 1.8.0
Дата тестирования 29.08.2017г.
*/ 

#include <TFT.h>                 // Подключаем библиотеку TFT  
#include <SPI.h>                 // Подключаем библиотеку SPI


#define cs   10                  // Указываем пины cs
#define dc   9                   // Указываем пины dc (A0)
#define rst  8                   // Указываем пины reset

int sensorPin = A0;    // Определение вывода для сканирования кнопок
int sensorREF = A1;    // Определение вывода для измерение Uотр.(REF)
int sensorFWD = A2;    // Определение вывода для измерение Uпад.(FWD)
int sensorValue = 0;   // Перменная для временного хранения данных 
float voltageREF;      // Перемення для хранения значения Uотр.(REF) в вольтах
float voltageFWD;      // Перемення для хранения значения Uпад.(FWD) в вольтах
float SWR;             // Перемення для хранения значения КСВ



TFT TFTscreen = TFT(cs, dc, rst);

 
void setup() 
{
  TFTscreen.begin();
  TFTscreen.background(0, 0, 0); // Очистим экран дисплея
  TFTscreen.setTextSize(2);      // Устанавливаем размер шрифта
 
  TFTscreen.stroke(0, 255, 255);

  TFTscreen.text("SWR Antenna", 6, 30);

  delay(3000);
}

void loop() 
{
/* 
* Установка цвета фона TFTscreen.background ( r , g , b )
* где, r, g и b являются значениями RGB для заданного цвета
*/ 
  TFTscreen.background ( 0 , 0 , 0 );
sensorValue = analogRead(sensorREF);         // Чтение значения Uотр.(REF)
  voltageREF = sensorValue * (5.0 / 1023.0);   // Преобразование Uотр.(REF) в вольты
 
  sensorValue = analogRead(sensorFWD);         // Чтение значения Uпад.(FWD)
  voltageFWD = sensorValue * (5.0 / 1023.0);   // Преобразование Uпад.(FWD) в вольты
 
  //TFTscreen.setCursor(0, 0);                         // Установка курсора на 0-ю позицию 0-ой строки
 // TFTscreen.text("SWR= ", 6, 47);                          // Вывод надписи SWR=

  if (voltageFWD>0 && voltageREF>0)            // Если Uпад.(FWD)>0 и Uотр.(REF)>0, то выводим значение КСВ, расчитанное по известной формуле
   { 
  TFTscreen.stroke(255, 255, 0);
  TFTscreen.setTextSize(3);   
  TFTscreen.text("WAITING... ",2,47);                     // то выводим надпись Waiting...
  }
  else 
  {
  TFTscreen.stroke(0, 255, 0);  
  SWR = (voltageFWD+voltageREF)/(voltageFWD-voltageREF);
  TFTscreen.setTextSize(2);
  TFTscreen.text("SWR=", 6, 47);
  TFTscreen.text("       ",6,47);
  }
                                           // Если Uпад.(FWD)=0 и Uотр.(REF)=0 - это происходит при отсутствии несущей в антенне.
 
   delay(500);                                   // Задержка 200 мс и уходим на новое измерение
}

но не уверен , что правильно

DAFdriver
Offline
Зарегистрирован: 12.08.2016

sword2001 пишет:

  НАШЕЛ!!!! Спс большое)

Посмотрите внимательно на подключение . У вас LED подклбчен к GND и Вы ждете от него рабоы . GND этоземля , а LTD это питание либо 3.3 v либо 5V .

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

DAFdriver пишет:

У вас LED подклбчен к GND и Вы ждете от него рабоы 

У многих дисплеев так- чтобы включить подсветку надо соединить вывод led с землёй. Анод там и без нас куда надо заведёт, а катод выведен на пин LED - нормально работает.

DAFdriver
Offline
Зарегистрирован: 12.08.2016

наLED ИДЕТ ПИТАНИЕ . почитайте анотацию . Земля всегда GND .

sword2001
Offline
Зарегистрирован: 23.01.2018

Не, проблема в том, что у меня код не видит мой screen

DAFdriver
Offline
Зарегистрирован: 12.08.2016

Подключите правильно дисплей , загрузите пример из библиотеки , а потом все остальное . Я одно время мучился с2.4 дисплеем , что только не делал и только когда нашел нужнуюбиблиотеку все стало нормально .

sword2001
Offline
Зарегистрирован: 23.01.2018

с этим экраном идет туториал полный, но у меня не так) подключил так, как там сказано!

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

DAFdriver пишет:

наLED ИДЕТ ПИТАНИЕ . почитайте анотацию . Земля всегда GND .

Почитал. Всё так и есть. Этот пин управляет землёй и подключать его надо как раз к GND (чёрным по белому написано: "led pin можно подключить к внешним управление подсветкой схемы для управления яркость подсветки. Вы можете подключить его к земле для включения подсветки весь день")

Так часто бывает, у Нокии также.

sword2001
Offline
Зарегистрирован: 23.01.2018

Вот, так что в коде...

DAFdriver
Offline
Зарегистрирован: 12.08.2016

sword2001 пишет:

А нет, я подключил, даже дисплей загорелся, а экзамплы не работают( пишет, что  LGDP4524 не найден.  Нашел ITDB24E_8, но все равно, нет результата. Ноги проверил, подключил как в видео!)

Так скачайте библиотеку LGDP 4525 . Можно по гуглить , или в идешке скетч,подключить библиотеку ,управление библиотеками .

DAFdriver
Offline
Зарегистрирован: 12.08.2016

Линчно я еле нашел LGDP4535

sword2001
Offline
Зарегистрирован: 23.01.2018

А вы нашли? Можно тогда ссыль)

DAFdriver
Offline
Зарегистрирован: 12.08.2016
Lotus6202
Lotus6202 аватар
Offline
Зарегистрирован: 12.01.2018

DAFdriver пишет:

наLED ИДЕТ ПИТАНИЕ . почитайте анотацию . Земля всегда GND .

ВЫ бы сами почитали анотацию .. с распиновкой всё правильно  LED на GND 

Lotus6202
Lotus6202 аватар
Offline
Зарегистрирован: 12.01.2018

По данному  дисплею ...  В поисковик вбиваете    (  OPEN-SMART TFT  )   и будет вам щастя ...   есть всё и распиновка и библиотеки и схемы..

Soredraft
Offline
Зарегистрирован: 09.07.2020

а если плата ардуино мега. как быть тогда?

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

Soredraft пишет:

а если плата ардуино мега. как быть тогда?

Вариант 1:

- выяснить, чем Мега отличается от Уно,

- подкорректировать схему с учетом имеющихся различий.

Вариант 2:

- искать схему подключения сразу для Меги.

Вариант 3:

- обратиться в раздел "Ищу исполнителя".

Soredraft
Offline
Зарегистрирован: 09.07.2020

спасибо