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

Ардуинщики всех стран - объединяйтесь! В этом форуме, конечно.
Ответить
Rokl
Друг Кота
Сообщения: 5232
Зарегистрирован: Пт авг 25, 2006 09:26:19
Откуда: Москва

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

Сообщение Rokl »

Подружить с минимальными переделками:
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. Приходится городить огород. Может кто подскажет, в какую сторону копать?
roman.com
Друг Кота
Сообщения: 9147
Зарегистрирован: Вт мар 13, 2012 12:16:13
Откуда: .ru

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

Сообщение roman.com »

шинный формирователь... а нафиг он там вообще нужен... :dont_know:
Rokl писал(а):в какую сторону копать?
написать свою библиотеку)) а лучше вообще без библиотек))
Rokl
Друг Кота
Сообщения: 5232
Зарегистрирован: Пт авг 25, 2006 09:26:19
Откуда: Москва

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

Сообщение Rokl »

[uquote="roman.com",url="/forum/viewtopic.php?p=4259045#p4259045"]шинный формирователь... а нафиг он там вообще нужен... :dont_know:
Rokl писал(а):в какую сторону копать?
...[/uquote]
Ну, как бы все читалки 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) работать с таким дисплейным набором без физической их переделки с паяльником в руках, НЕ могут в принципе. Этот нюанс и вызвал вопрос.
roman.com
Друг Кота
Сообщения: 9147
Зарегистрирован: Вт мар 13, 2012 12:16:13
Откуда: .ru

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

Сообщение roman.com »

а мы тут тоже много чего подключали... https://radiokot.ru/forum/viewtopic.php?f=28&t=148087
и всякие TFT тоже... https://radiokot.ru/forum/viewtopic.php ... &start=920
только без всяких шилд... шинных драйверов... без библиотек... просто напрямую к МК подключали всё... ))
TFT... SD/Micro SD... Интернет... и т.д.
вот я и говорю... а зачем там шинные драйвера... если всё работает без них))
:roll:
Rokl
Друг Кота
Сообщения: 5232
Зарегистрирован: Пт авг 25, 2006 09:26:19
Откуда: Москва

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

Сообщение Rokl »

[uquote="roman.com",url="/forum/viewtopic.php?p=4259184#p4259184"]а мы тут тоже много чего подключали... https://radiokot.ru/forum/viewtopic.php?f=28&t=148087
и всякие TFT тоже... https://radiokot.ru/forum/viewtopic.php ... &start=920
только без всяких шилд... шинных драйверов... без библиотек... просто напрямую к МК подключали всё... ))
TFT... SD/Micro SD... Интернет... и т.д.
вот я и говорю... а зачем там шинные драйвера... если всё работает без них))
:roll:[/uquote] Никто не сомневается, что у вас работает напрямую.
Если всё самодельное, от печатной платы до корпуса, и TFT экранчик тиснут из старой мобилы, то можно и напрямую к ногам AVRки. А если модули заводские, в конструктивных габаритах Arduino UNO и предназначенные для совместной работы именно с универсальной Arduino UNO с разным питанием контроллеров , а не с конкретным голым AVR, то делать из универсальных стандартных модулей самопал ("аля, так проще") смысла нет никакого. Потому и применяются на них шинные формирователи, универсальные стандартные библиотеки и т.д.
roman.com
Друг Кота
Сообщения: 9147
Зарегистрирован: Вт мар 13, 2012 12:16:13
Откуда: .ru

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

Сообщение roman.com »

Так у нас задача была совсем другая - "аля, так прикольней" ))
А смысл есть когда это всё подключается к Интернету... Иначе смысла во всем этом точно нет никакого ))
dim3740
Нашел транзистор. Понюхал.
Сообщения: 156
Зарегистрирован: Вс сен 28, 2014 07:54:21

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

Сообщение dim3740 »

аналогичная ситуация... Если экранчик воткнут как шелд в Уно, то в сериале пишет что драйвер 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(( вот засада-то...
Rokl
Друг Кота
Сообщения: 5232
Зарегистрирован: Пт авг 25, 2006 09:26:19
Откуда: Москва

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

Сообщение Rokl »

[uquote="dim3740",url="/forum/viewtopic.php?p=4288504#p4288504"]аналогичная ситуация... Если экранчик воткнут как шелд в Уно, то в сериале пишет что драйвер 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(( вот засада-то...[/uquote]
Тогда ни как без шины данных.
gekz
Открыл глаза
Сообщения: 46
Зарегистрирован: Ср авг 31, 2016 14:16:40

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

Сообщение gekz »

[uquote="dim3740",url="/forum/viewtopic.php?p=4288504#p4288504"]аналогичная ситуация... Если экранчик воткнут как шелд в Уно, то в сериале пишет что драйвер 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(( вот засада-то...[/uquote]
Откройте хедер файл библиотеки и поищите как правильно инициализировать экран. В комментариях найдёте, там всё подписано.
Rokl
Друг Кота
Сообщения: 5232
Зарегистрирован: Пт авг 25, 2006 09:26:19
Откуда: Москва

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

Сообщение Rokl »

[uquote="gekz",url="/forum/viewtopic.php?p=4378933#p4378933"][uquote="dim3740",url="/forum/viewtopic.php?p=4288504#p4288504"]аналогичная ситуация... Если экранчик воткнут как шелд в Уно, то в сериале пишет что драйвер 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(( вот засада-то...[/uquote]
Откройте хедер файл библиотеки и поищите как правильно инициализировать экран. В комментариях найдёте, там всё подписано.[/uquote]
Если экран 2,8" голый и расчитан на работу с шилдом, а не на прямую по сериал порту с ардуино (шилд на борту), то инициализировать не получится, т.к. все стандартные внешние шилды для 2,8" TFT работают только на чтение данных из TFT (читаем ID ) по 8 разрядной шине данных и ни как на передачу команд для инициализации 2,8" TFT. Значит голый экран 2.8" необходимо распаять проводками и шину данных (D0-D7) с резисторами 33 ом, и шину управления А0-А4, согласно подключения к шине ардуино по схеме печ. платы не ранее 2009 г релиза печатной платы. До 2009 года разводка печатной платы ардуино совсем другая.
А уж потом, с помощью стандартной процедуры (читалок много) прочесть ID контроллера, идентифицировать его, и залить нужные команды инициализации.
Ответить

Вернуться в «Arduino»