Ардуинщики всех стран - объединяйтесь! В этом форуме, конечно.
Ответить

Подружить Arduino UNO c TFT 2.8 LCD

Вт июл 12, 2022 22:15:13

Подружить с минимальными переделками:
Arduino UNO + TFT 2.8 LCD Touch Screen Expansion Shield + TFT 2.8 LCD Touch Screen 3.3v SD/Micro SD card.
Пришлось на плате расширения один из шинных формирователей 74нс541 сдуть феном и заменить на 74НС245, да и всю плату расширения (TFT 2.8 LCD Touch Screen Expansion Shield) измордовать, как бог черепаху. Может у кого получилось подружить Arduino UNO с графическим дисплеем TFT 2.8 LCD + Touch Screen 3.3v SD/Micro SD card с меньшей кровью?
Подобных переделок шилдов не нашел в инете, может кто ткнет носом?
Да и с библиотеками тоже проблемы. Драйвер дисплея заводится только библиотекой Adafruit, а тачскрин, только библиотекой URTouch, работающей с библиотекой UTFT, которая не работает с драйвером дисплея TFT 2.8 LCD + Touch Screen 3.3v SD/Micro SD card. Приходится городить огород. Может кто подскажет, в какую сторону копать?

Re: Подружить Arduino UNO c TFT 2.8 LCD

Ср июл 13, 2022 17:55:54

шинный формирователь... а нафиг он там вообще нужен... :dont_know:
Rokl писал(а):в какую сторону копать?

написать свою библиотеку)) а лучше вообще без библиотек))

Re: Подружить Arduino UNO c TFT 2.8 LCD

Ср июл 13, 2022 21:01:01

шинный формирователь... а нафиг он там вообще нужен... :dont_know:
Rokl писал(а):в какую сторону копать?
...

Ну, как бы все читалки ID TFT сначала спрашивают через шилд расширения у LCD экранчика номер ID контроллера TFT, выдают результат в СОМ порт, и после подсовывают LCD дисплейчику нужный драйвер, стараясь проинициализировать LCD дисплей. Шинные драйверы 74НС541, установленные на плате расширения TFT 2.8 LCD Touch Screen Expansion Shield (да и во всех остальных китайских платах расширения для LCD), могут только выводить 8 разрядное слово команды наружу, в TFT дисплейчик, а вот прочитать ответ от TFT все китайские платы расширения LCD не могут в принципе. И возможно прочитать ID TFT только через 74НС245, которая может работать, как туда (записать команду в TFT), так и обратно (прочитать ID и название контроллера). В моём случае контроллер TFT оказался 9325, а по умолчанию (когда ID прочесть не удается) все читалки ID инициализируют TFT, как с контроллером 9341. В результате на LCD дисплее был только белый экран и более ничего, кроме разочарования. Вот для того, что бы наверняка узнать, что за контроллер TFT управляет LCD дисплейчиком (TFT 2.8 LCD + Touch Screen 3.3v SD/Micro SD card) и понадобилось сдуть один из 74НС541 и на его место запаять 74НС245. (Разозлил этот TFT дисплейчик меня всерьёз своим упрямством).
Собственно проблема на сегодня уже решена. Arduino UNO и LCD дисплейчик с 8 битной шиной управления ( TFT 2.8 LCD + Touch Screen 3.3v SD/Micro SD card) теперь научился и русскими буквами писать, и как фоторамка работать, выводя по SPI фотки из Micro SD card, и по SPI его тачскрин управляет рисовалкой на экране. Оказалось, что такой набор в стандартных библиотеках не попадался (LCD дисплейчик с 8 битной шиной управления + SPI SD/Micro SD card + SPI Touch Screen 3.3v.), а все китайские (TFT 2.8 LCD Touch Screen Expansion Shield) работать с таким дисплейным набором без физической их переделки с паяльником в руках, НЕ могут в принципе. Этот нюанс и вызвал вопрос.

Re: Подружить Arduino UNO c TFT 2.8 LCD

Ср июл 13, 2022 22:40:47

а мы тут тоже много чего подключали... viewtopic.php?f=28&t=148087
и всякие TFT тоже... viewtopic.php?f=28&t=148087&start=920
только без всяких шилд... шинных драйверов... без библиотек... просто напрямую к МК подключали всё... ))
TFT... SD/Micro SD... Интернет... и т.д.
вот я и говорю... а зачем там шинные драйвера... если всё работает без них))
:roll:

Re: Подружить Arduino UNO c TFT 2.8 LCD

Чт июл 14, 2022 08:50:33

а мы тут тоже много чего подключали... viewtopic.php?f=28&t=148087
и всякие TFT тоже... viewtopic.php?f=28&t=148087&start=920
только без всяких шилд... шинных драйверов... без библиотек... просто напрямую к МК подключали всё... ))
TFT... SD/Micro SD... Интернет... и т.д.
вот я и говорю... а зачем там шинные драйвера... если всё работает без них))
:roll:
Никто не сомневается, что у вас работает напрямую.
Если всё самодельное, от печатной платы до корпуса, и TFT экранчик тиснут из старой мобилы, то можно и напрямую к ногам AVRки. А если модули заводские, в конструктивных габаритах Arduino UNO и предназначенные для совместной работы именно с универсальной Arduino UNO с разным питанием контроллеров , а не с конкретным голым AVR, то делать из универсальных стандартных модулей самопал ("аля, так проще") смысла нет никакого. Потому и применяются на них шинные формирователи, универсальные стандартные библиотеки и т.д.

Re: Подружить Arduino UNO c TFT 2.8 LCD

Чт июл 14, 2022 11:16:05

Так у нас задача была совсем другая - "аля, так прикольней" ))
А смысл есть когда это всё подключается к Интернету... Иначе смысла во всем этом точно нет никакого ))

Re: Подружить Arduino UNO c TFT 2.8 LCD

Ср сен 14, 2022 09:21:49

аналогичная ситуация... Если экранчик воткнут как шелд в Уно, то в сериале пишет что драйвер 9325 и все работает. Если подпайка проводками, то уже нет.

Комент //#define USE_ADAFRUIT_SHIELD_PINOUT в h ничего не меняет, но в сериале пишет конечно что юзается то шелд, то брекаут.

Вопрос: по какой линии арудинка читает идентификатор драйвера? Раз она при проводках его не видит. У меня подключены только

#define LCD_CS A3 // Chip Select goes to Analog 3
#define LCD_CD A2 // Command/Data goes to Analog 2
#define LCD_WR A1 // LCD Write goes to Analog 1
#define LCD_RD A0 // LCD Read goes to Analog 0

#define LCD_RESET A4 // Can alternately just connect to Arduino's reset pin

этого достаточно? В чем может быть вообще причина?

ПС: вычитал, что если используется НЕ шилдовское подключение, то этот дисплей может работать только по параллельному соединению через D0... D7(( вот засада-то...

Re: Подружить Arduino UNO c TFT 2.8 LCD

Вт окт 11, 2022 20:28:47

аналогичная ситуация... Если экранчик воткнут как шелд в Уно, то в сериале пишет что драйвер 9325 и все работает. Если подпайка проводками, то уже нет.

Комент //#define USE_ADAFRUIT_SHIELD_PINOUT в h ничего не меняет, но в сериале пишет конечно что юзается то шелд, то брекаут.

Вопрос: по какой линии арудинка читает идентификатор драйвера? Раз она при проводках его не видит. У меня подключены только

#define LCD_CS A3 // Chip Select goes to Analog 3
#define LCD_CD A2 // Command/Data goes to Analog 2
#define LCD_WR A1 // LCD Write goes to Analog 1
#define LCD_RD A0 // LCD Read goes to Analog 0

#define LCD_RESET A4 // Can alternately just connect to Arduino's reset pin

этого достаточно? В чем может быть вообще причина?

ПС: вычитал, что если используется НЕ шилдовское подключение, то этот дисплей может работать только по параллельному соединению через D0... D7(( вот засада-то...

Тогда ни как без шины данных.

Re: Подружить Arduino UNO c TFT 2.8 LCD

Вт фев 28, 2023 16:40:09

аналогичная ситуация... Если экранчик воткнут как шелд в Уно, то в сериале пишет что драйвер 9325 и все работает. Если подпайка проводками, то уже нет.

Комент //#define USE_ADAFRUIT_SHIELD_PINOUT в h ничего не меняет, но в сериале пишет конечно что юзается то шелд, то брекаут.

Вопрос: по какой линии арудинка читает идентификатор драйвера? Раз она при проводках его не видит. У меня подключены только

#define LCD_CS A3 // Chip Select goes to Analog 3
#define LCD_CD A2 // Command/Data goes to Analog 2
#define LCD_WR A1 // LCD Write goes to Analog 1
#define LCD_RD A0 // LCD Read goes to Analog 0

#define LCD_RESET A4 // Can alternately just connect to Arduino's reset pin

этого достаточно? В чем может быть вообще причина?

ПС: вычитал, что если используется НЕ шилдовское подключение, то этот дисплей может работать только по параллельному соединению через D0... D7(( вот засада-то...

Откройте хедер файл библиотеки и поищите как правильно инициализировать экран. В комментариях найдёте, там всё подписано.

Re: Подружить Arduino UNO c TFT 2.8 LCD

Пн мар 06, 2023 22:34:33

аналогичная ситуация... Если экранчик воткнут как шелд в Уно, то в сериале пишет что драйвер 9325 и все работает. Если подпайка проводками, то уже нет.

Комент //#define USE_ADAFRUIT_SHIELD_PINOUT в h ничего не меняет, но в сериале пишет конечно что юзается то шелд, то брекаут.

Вопрос: по какой линии арудинка читает идентификатор драйвера? Раз она при проводках его не видит. У меня подключены только

#define LCD_CS A3 // Chip Select goes to Analog 3
#define LCD_CD A2 // Command/Data goes to Analog 2
#define LCD_WR A1 // LCD Write goes to Analog 1
#define LCD_RD A0 // LCD Read goes to Analog 0

#define LCD_RESET A4 // Can alternately just connect to Arduino's reset pin

этого достаточно? В чем может быть вообще причина?

ПС: вычитал, что если используется НЕ шилдовское подключение, то этот дисплей может работать только по параллельному соединению через D0... D7(( вот засада-то...

Откройте хедер файл библиотеки и поищите как правильно инициализировать экран. В комментариях найдёте, там всё подписано.

Если экран 2,8" голый и расчитан на работу с шилдом, а не на прямую по сериал порту с ардуино (шилд на борту), то инициализировать не получится, т.к. все стандартные внешние шилды для 2,8" TFT работают только на чтение данных из TFT (читаем ID ) по 8 разрядной шине данных и ни как на передачу команд для инициализации 2,8" TFT. Значит голый экран 2.8" необходимо распаять проводками и шину данных (D0-D7) с резисторами 33 ом, и шину управления А0-А4, согласно подключения к шине ардуино по схеме печ. платы не ранее 2009 г релиза печатной платы. До 2009 года разводка печатной платы ардуино совсем другая.
А уж потом, с помощью стандартной процедуры (читалок много) прочесть ID контроллера, идентифицировать его, и залить нужные команды инициализации.
Ответить