3.97 Большой дисплей 240x400 ST7793

Мадиас
Ср 30 мая 2018 г., 20:33
Хорошо, это на самом деле не «проект», больше шаблон для проектов, нуждающихся в дешевом и большом сенсорном дисплее (без разрешения Super Hi-Res):
ST7793-это большой, дешевый 8-битный параллельный сенсорный экран TFT-модуль с расписками "arduino Щит". Цена ниже 6 евро (без доставки) https: // www.aliexpress.com/item/1lot-2- ... 19187.HTML
Он поддерживается почти вне коробки с библиотекой MCUFRIENC KBV -> https: // github.com/prentiadevidavid/mcufriend_kbv
Будьте осторожны, если вы используете другую плату, потому что есть #ifdef точно для Bluepill и Or Nucleo, поэтому вам нужно изменить файлы библиотеки или просто установить #define в эскизе для Bluepill, поэтому проверьте, соответствует ли это вашей плате ( Maple Mini не сделает этого!): #elif defined(ARDUINO_GENERIC_STM32F103C) || defined(ARDUINO_NUCLEO_F103C8) || defined(ARDUINO_BLUEPILL_F103C8)

Мадиас
Ср 30 мая 2018 г., 20:34
Хорошо, вот отсутствующий Zip и полная проводка:

Tft ------- BlueePill
D0 ----------- A0
к
D7 ----------- A7
LCD_RST ---- PB9
LCD_CS ----- PB8
Lcd_rs ----- pb7 (= lcd_cd)
LCD_WR ---- PB6
LCD_RD ----- PB0

Будьте осторожны: вам нужно подключить 3.3 и 5 В!

Мадиас
Ср 30 мая 2018 г., 20:56
Одно примечание:
Забудьте об использовании аппаратного прокрутки с этим дисплеем.
Причина: контроллер 240x432, а TFT-Display составляет 240x400, так что вы получите 32 линии мусора, когда аппаратный прокрут. (ОК, HW-Scollling-это круто, впервые посмотрите, и дальше вам больше не понадобится/пропустите его снова)

Дэйвид.Прентис
Ср 30 мая 2018 г., 22:17
Я думаю, что я Kludge Adplaware Scrolling для ILI9327.
Я, наверное, не беспокоюсь о ST7793 / R61509. Я не владею этим.

Я не знал, что 3.97 был 240x400. 3.95 дюйма - 320x480.
Аналогично 3.6 дюймов 240x400. 3.5 дюймов - 320x480
Я уверен, что другие панели выйдут из дерева однажды.

Если вы хотите прокрутить, спите, ... Или что -нибудь еще, просто спросите.

Дэйвид.

Мадиас
Чт 31 мая 2018 г., 7:06 утра
Дорогой Дэвид!
Спасибо за вашу библиотеку! Я никогда не буду использовать функцию прокрутки HW, потому что она не «частично» для ST7793
Есть еще одна проблема: отображение штифта для чертежа при использовании сенсорного экрана:

ЖК-дисплей --------------------- AVR ------ BluePill
LCD WR TOUCK_YP --- A0 ------ PB6
ЖК-rs touch_xm ---- A2 ------ PB7

XM и YP должны находиться на аналоговом входном выводе, либо PB6 и PB7 являются цифровыми контактами.
У нас есть 10 аналоговых входов на STM32F103C8 -> PA0 до PA7 и PB0, PB1
Поэтому мне нужно переписать его и поставить ЖК -WR и LCD RS в PB0 и PB1. Недостаток: все аналоговые входы используются только на дисплее. Я имею дело с лучшим решением (возможно, не используя весь порт PA (до 07) для 8-битного порта....)

Стивестронг
Чт 31 мая 2018 г., 7:29
Я использовал PB0..15 для данных для моих 8/16 -битных дисплеев.
PB2 находится на среднем бабочке.
Кроме того.

Дэйвид.Прентис
Чт 31 мая 2018 г., 9:13
Я немного удивлен, услышав, что ваш сенсорный экран использует булавки A0, A2, D7, D6.
Подключите щит к UNO и запустите диагноз.

Большинство щитов используют A1, A2, 7, 6 или иногда A1, A2, 9, 8.
У меня есть один 3.3V Щит Diagnosing as:- XM,XP: (A2, D8) = 25 YP,YM: (A3, D9) = 36 ID = 0x9320

Мадиас
Чт 31 мая 2018 г., 12:00
Это была моя ошибка, разгона стандартная - Тестирование ООН:
Тестирование: (A1, D6) = 34
Тестирование: (A2, D7) = 36
Странно, что оба значения тихо похожи. На другом дисплее MCUFRIEND UNO SHIELD значения более «правильно» (25,30) - но TouchDisplay работает на UNO, нужно найти какую -то лучшую реализацию STM32 (в настоящее время у меня есть некоторые странные значения Y на Nucleo/Bluepill).

Мадиас
Чт 31 мая 2018 г. 12:01
В целом, я бы сказал, что этот дисплей более интересен для более крупного STM32, например, RET или Vet для удобной манипуляции с PIN -кода это пальцами (лучше, чем эти 2.4 или 2.8). Низкое разрешение также в порядке, потому что мне не нужна причудливая графика высокого разрешения и тем меньше разрешения, тем меньше код и быстрее дисплей.

Дэйвид.Прентис
Чт 31 мая 2018 г. 13:58
Testing: (A1,D6)=34 Testing: (A2,D7)=36

Дэйвид.Прентис
Чт 31 мая 2018 г. 15:48
Я запустил редактирование калибровочного эскиза для моих контактов на Bluepill. #elif defined(ARDUINO_BLUEPILL_F103C8) || defined(ARDUINO_GENERIC_STM32F103C) int XP = PB6, YP = PA6, XM = PA7, YM = PB7; //most common configuration

Мадиас
Чт 31 мая 2018 г., 20:37
Я получил это работать с моим нуклео (не тестировал его на BluePill, но это будет только какая -то PIN -код DEF):
Значения на UNO не совсем совпадали с STM32 (возможно, вызваны 3.3 против 5V?) поэтому я использую нуклео с официальным ядром (спасибо за это, Дэвид!) для калибровки: uint8_t YP = A2; // must be an analog pin, use "An" notation! uint8_t XM = A1; // must be an analog pin, use "An" notation! uint8_t YM = 7; // can be a digital pin uint8_t XP = 6; // can be a digital pin uint8_t SwapXY = 0; uint16_t TS_LEFT = 76; uint16_t TS_RT = 911; uint16_t TS_TOP = 66; uint16_t TS_BOT = 944;

Дэйвид.Прентис
Чт 31 мая 2018 г., 22:03
Я настоятельно рекомендую вам посмотреть на последний релиз v2.9.8

Вместо того, чтобы обмениваться булавками и т. Д., Я диагностирую фактические контакты x, y в портретном режиме.
Это дает вам четкую ценность для слева, RT, Top, Bot.

И означает, что вы можете соответствующим образом сопоставить свои координаты пикселей при использовании другой ориентации.

Дэйвид.

Мадиас
Чт 31 мая 2018 г., 22:38
Хорошо, я попробую новую версию! (У меня дома есть другие щиты MCUFRIENT TFT).

Кстати: я сказал, что этот TFT-shield действительно секретный совет? ;)