Top.Mail.Ru
ESP32+TFT LCD 3,95"...
 
Уведомления
Очистить все

[Решено] ESP32+TFT LCD 3,95" ILI9488

Страница 1 / 2
(@user_esp)
Level 2

Здравствуйте. Помогите пожалуйста с подключением к ESP32 по 8-и битам.

Исходные данные такие: Win7pro x64, Arduino IDE 1.8.19, версия ядра ESP32 1.06 или 2.0.11, библиотека TFT_eSPI 2.5.34, User_Setup.h=Setup16_ILI9488_Parallel.h, User_Setup_Select.h - без изменений.

Дисплей работает на MEGA2560 с исправленной библиотекой UTFT . Использовал статью на arduino.ru

https://arduino.ru/forum/apparatnye-voprosy/35-tft-lcd-krasnyi-megovskii-mega-2560-r3-resheno-kak-reshit-drugie#comment-204256

На дисплее: d0=PA0=pin22,.....,d7=PA7=pin29, RS=pin38, WR=pin39, CS=pin40, RST=41(MEGA 2560).
К ESP-WROOM-32 подключил согласно дефолтным данным из библиотеки TFT_eSPI. Кроме сигнала RD-на дисплее он не выведен на пины и в файле установок TFT_eSPI не прописан. Компиляция и загрузка примера UTFT_Demo_480x320 успешны, но результат - белый экран.

Пробовал другие пины ESP32, разные версии драйверов для параллельных дисплеев, ядра и библиотеки-белый экран.

Что не так? Или эти устройства принципиально не совместимы?

Спасибо.

 

Цитата
Создатель темы Размещено : 31.01.2024 14:07
Aveal
(@aveal)
Top level Admin

А сам дисплей какой именно? И скинь еще код свой и как подключено в итоге к ESP32.

ОтветитьЦитата
Размещено : 31.01.2024 17:18
(@user_esp)
Level 2

Благодарю Вас за желание помочь.

Дисплей как раз тот, что что по ссылке открывается, пост номер 5 той темы.

Там устранена неработоспособность этого экрана с МЕГА2560 при использовании библиотеки UTFT из-за использования дисплеем порта А меги вместо С. К слову - на DUE тоже работает, а на ESP32 нет.

Моего кода для ESP32 ещё нет.Сначала пытаюсь получить картинку, оценить скорость экрана.Есть

необходимость в связке именно ESP32  с данным экраном из-за его размера.

Использую модифицированный пример из UTFT, который переделан для TFT_eSPI её автором "UTFT_Demo_480x320"

Да и собственно любой пример библиотеки TFT_eSPI для этого дисплея - с тем-же результатом.Белый экран.

Подключение(User_Setup.h):

#define USER_SETUP_ID 16
#define ESP32_PARALLEL
#define ILI9488_DRIVER
// ESP32 pins used
#define TFT_CS   33  // Chip select control pin
#define TFT_DC   15  // Data Command control pin - must use a pin in the range 0-31
#define TFT_RST  32  // Reset pin
#define TFT_WR    4  // Write strobe control pin - must use a pin in the range 0-31
//#define TFT_RD    2// Not conn.
#define TFT_D0   12  // Must use pins in the range 0-31 for the data bus
#define TFT_D1   13  // so a single register write sets/clears all bits
#define TFT_D2   26
#define TFT_D3   25
#define TFT_D4   17
#define TFT_D5   16
#define TFT_D6   27
#define TFT_D7   14

 

 

 

 

ОтветитьЦитата
Создатель темы Размещено : 31.01.2024 18:51
Aveal
(@aveal)
Top level Admin

@user_esp А почему TFT_RD не используется?

ОтветитьЦитата
Размещено : 31.01.2024 19:22
Aveal
(@aveal)
Top level Admin

Запись от: @aveal

@user_esp А почему TFT_RD не используется?

А, не выведен, я пропустил в тексте.

 

ОтветитьЦитата
Размещено : 31.01.2024 19:24
Aveal
(@aveal)
Top level Admin

Но вообще должен быть выведен, 100%.

ОтветитьЦитата
Размещено : 31.01.2024 19:29
Aveal
(@aveal)
Top level Admin

Запись от: @user_esp

Благодарю Вас за желание помочь.

Дисплей как раз тот, что что по ссылке открывается, пост номер 5 той темы.

Там устранена неработоспособность этого экрана с МЕГА2560 при использовании библиотеки UTFT из-за использования дисплеем порта А меги вместо С. К слову - на DUE тоже работает, а на ESP32 нет.

Моего кода для ESP32 ещё нет.Сначала пытаюсь получить картинку, оценить скорость экрана.Есть

необходимость в связке именно ESP32  с данным экраном из-за его размера.

Использую модифицированный пример из UTFT, который переделан для TFT_eSPI её автором "UTFT_Demo_480x320"

Да и собственно любой пример библиотеки TFT_eSPI для этого дисплея - с тем-же результатом.Белый экран.

Подключение(User_Setup.h):

#define USER_SETUP_ID 16
#define ESP32_PARALLEL
#define ILI9488_DRIVER
// ESP32 pins used
#define TFT_CS   33  // Chip select control pin
#define TFT_DC   15  // Data Command control pin - must use a pin in the range 0-31
#define TFT_RST  32  // Reset pin
#define TFT_WR    4  // Write strobe control pin - must use a pin in the range 0-31
//#define TFT_RD    2// Not conn.
#define TFT_D0   12  // Must use pins in the range 0-31 for the data bus
#define TFT_D1   13  // so a single register write sets/clears all bits
#define TFT_D2   26
#define TFT_D3   25
#define TFT_D4   17
#define TFT_D5   16
#define TFT_D6   27
#define TFT_D7   14

 

Не должно тут быть:

#define TFT_PARALLEL_8_BIT

?

 

ОтветитьЦитата
Размещено : 31.01.2024 19:33
(@user_esp)
Level 2

@aveal Китайцы не вывели этот сигнал со шлейфа экрана на пины шилда. При работе этого шилда с мегой и DUE чтение из дисплея не используется, но данный пример отлично работает. Время 47,5 сек. на меге и примерно вдвое меньше на DUE. Если ESP32 покажет результат не хуже чем DUE, то можно двигаться дальше.Да хоть какой-то результат получить, и это было бы неплохо для начала.

Библиотека TFT_eSPI была выбрана как первая из результатов поиска. Если Вам известно другое решение моей проблемы, использование данной библиотеки не принципиально.

ОтветитьЦитата
Создатель темы Размещено : 31.01.2024 19:36
(@user_esp)
Level 2

@aveal Проверял и с этим дефайном и с двумя вместе-нет картинки.

ОтветитьЦитата
Создатель темы Размещено : 31.01.2024 19:45
Aveal
(@aveal)
Top level Admin

@user_esp а есть фото подключения?

ОтветитьЦитата
Размещено : 31.01.2024 19:53
(@user_esp)
Level 2

@aveal в данный момент подключено проводками длиной 15-20 см через "дюпонты". Питание дисплея и плат контроллеров 5 Вольт через линейные стабилизаторы с фильтрацией.

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

Да, вероятно проводки длинноваты, и в окончательном варианте их скорее всего не будет.Однако эта же схема на меге  и DUE работает. Нужно посмотреть форму сигналов на всех платформах. Для этого необходимо вынуть мегу и DUE из 3D принтеров, а это не быстро.

И фото сделаю.

ОтветитьЦитата
Создатель темы Размещено : 31.01.2024 20:10
Aveal
(@aveal)
Top level Admin

@user_esp да можно просто фото текущего варианта, чтобы в целом представление получить.

ОтветитьЦитата
Размещено : 31.01.2024 20:14
(@user_esp)
Level 2

@aveal как смог

IMG 0161
IMG 0162
ОтветитьЦитата
Создатель темы Размещено : 31.01.2024 20:33
Aveal
(@aveal)
Top level Admin

@user_esp Тогда следующая мысль, что проблема в уровнях, ATMega 2560 - 5V, ESP32 - 3.3V.

ОтветитьЦитата
Размещено : 31.01.2024 22:40
(@user_esp)
Level 2

@aveal Доброе утро. Думал так, поэтому и проверил на Arduino DUE.

 Работает, а это платформа ARM.

Маловероятно,что поможет, но надо посмотреть форму сигналов.

А если ESP слишком быстрая и нет синхронизации. Всё это слишком глубоко.

Скорее всего дело в неправильном драйвере библиотеки.

Сколько я не искал, но не нашёл успешной реализации.

SPI дисплеи конечно работают, но у меня в наличии только 1,8".

Маловато будет.

Править библиотеку -не мой уровень.

Попробовать собрать на PlatformIO + VSC?

 

ОтветитьЦитата
Создатель темы Размещено : 01.02.2024 08:44
Страница 1 / 2
Поделиться: