Тач на LCD TFT работает только если подключить его по USB к компьютеру

dezhavi
Offline
Зарегистрирован: 26.12.2015

Коллеги добрый день!

Обнаружилась некая странность. 
Тач на LCD TFT  работает, только если подключить его по USB.

Если я подключать ардуину через блок  питания, то тач не  работает.
Если подключаю  через USB, то тач работает.
Да и от блока питания от USB  тоже, как-то странно работает. 
ТО работает, то не  работает (((

В чем может быть приина?

 

ПС На  шилде  для подключения экрана, есть  переключатель 3.5 - 5 В. Что он означает?

 

Proset
Offline
Зарегистрирован: 01.03.2016

http://arduino.ru/forum/apparatnye-voprosy/plokho-rabotaet-touchpad-pri-...

Вот еще точно так же.

У меня устройство уже собрано и тач используется редко (центральная область хоть и плохо но работает)

если надо использовать все возможности приходится втыкать USB

Вы можете попробовать вариант эксперимента - подать 5вольт от внешнего источника через USB разъем

Интересно узнать результат.

 

slider
Offline
Зарегистрирован: 17.06.2014

dezhavi пишет:

Коллеги добрый день!

Обнаружилась некая странность. 
Тач на LCD TFT  работает, только если подключить его по USB.

Если я подключать ардуину через блок  питания, то тач не  работает.
Если подключаю  через USB, то тач работает.
Да и от блока питания от USB  тоже, как-то странно работает. 
ТО работает, то не  работает (((

В чем может быть приина?

ПС На  шилде  для подключения экрана, есть  переключатель 3.5 - 5 В. Что он означает?

экстрасенсы на других форумах. неизвестно что за шилд(бывают с внутренним стабилизатором 3.0в для тача), что за ардуина , что за либы? напряжение на шилде при питании от того и другого какие? ат АКБ(батареек) запитывать как результат?,...и хотите чтобы вам ответили?  получиться ещё гораздо в общем, средняя температура в ... 

 

chkiko
Offline
Зарегистрирован: 25.06.2015

Здравствуйте!

Столкнулся с похожей проблемой - не хочет работать тачскрин дисплея.

Для начала о железе:

У меня это Arduino Mega 2560 R3 + Mega Shield v2.2 + TFT LCD touch shield 3.2 дюйма для Arduino

Теперь о самой проблеме.

Включаю, запускается программа, включается дисплей, видно изображение. Далее нажимаю на тачскрин и тут возможно два варианта.

Вариант первый. Тачскрин не реагирует на нажатия. При этом программа выполняется (на экране идут часы, изменяются показания датчиков температуры). Тачскрин ни сразу ни через время (ждал до 2-х часов) не заработает...

Вариант второй. Тачскрин работает. Работает корректно и будет работать до выключения питания (пробовал после удачного запуска, работал без сбоев до 3-х суток).

Как пробовал решать проблему.

Питание. Использовал по очереди питание USB от компа, USB от ноутбука, блок питания 5В, 0.75А на ножку +5В ардуины, блок питания 9В, 1.0А в гнездо питания ардуины, блок питания PS-05-5 Mean Well 5В, 1А на ножку +5В ардуины.

По питанию так-же пробовал разводку проводом сечения 1,5мм массы и +5В непосредственно на плату дисплея

Железо. Все описанное выше железо имеется в двух экземплярах. Т.е. две Меги, два шильда переходника, два TFT LCD touch экрана. В любой конфигурации подключения проблема остается.

Программа. Любая программа, то ли моя, то ли программа UTouch_ButtonTest  из библиотеки UTouch, вообще любая программа – ведет себя одинаково – если при включении тачскрин начал работать, то далее все ок. Если не начал – то до следующего удачного включения ничего не поменяется.

Еще раз о питании. Пробовал ставить помехоподавляющие конденсаторы JFZ-0,1 uF /310VAC или MKP X2 0.047uF 275V, еще электролиты 1000uF 10V. Мерял напряжение на Меге, на шильде переходнике, на самом дисплее – везде 4,99 – 5,02 вольта. На плате дисплея есть стабилизатор 65z5. Напряжение на входе 5В, на выходе 3В (точнее 2.92 – 2.98). Здесь же на плате и микросхема контроллера тачскрина XPT2046. На нее приходит 3В. Из Data Sheet на контроллер - Low voltage operation (VCC = 2.2V ∼ 3.6V). Вроде как питания хватает…

И еще о моих наблюдениях. Включений с неработающим тачскрином больше чем включений с нормальной работой. Соотношение где-то  75 / 25. Бывают моменты, когда количество включений с нормальной работой достигает до 5-7 раз подряд. Причем интервал выкл./вкл. Может быть и коротким и длинным. Но общей картины это не меняет – потом он может нормально не запуститься и 20 раз подряд.

На этом мои познания,  а с ними и варианты решения проблемы заканчиваются.

Поэтому прошу помощи у Вас, уважаемые форумчане.

Proset
Offline
Зарегистрирован: 01.03.2016

У меня шилд такой

http://www.aliexpress.com/item/2-8-inch-TFT-Touch-LCD-Screen-Display-Mod...

контроллера тача там по моему нет котроллером работает сама атмега (просто меряет падеие напряжеия)

dezhavi
Offline
Зарегистрирован: 26.12.2015

Аппаратной части
Такой экран - http://roboparts.ru/products/tft-lcd-7-inch-module
Такой шилд - http://devicter.ru/goods/ITDB02-LCD-Mega-Shield-V2-0 
Такой блок питания http://roboparts.ru/products/adapter-9v-1a-220v

Библиотеку  вот эта - http://www.rinkydinkelectronics.com/library.php

Ардуина Мега2560 

Напряжение не  мерял, если честно. 

 

 

slider
Offline
Зарегистрирован: 17.06.2014

dezhavi пишет:

Аппаратной части
Такой экран - http://roboparts.ru/products/tft-lcd-7-inch-module
Такой шилд - http://devicter.ru/goods/ITDB02-LCD-Mega-Shield-V2-0 
Такой блок питания http://roboparts.ru/products/adapter-9v-1a-220v

Библиотеку  вот эта - http://www.rinkydinkelectronics.com/library.php

Ардуина Мега2560 

Напряжение не  мерял, если честно. 

вы же создавали месяц назад тему по этому дисплею и тачу, и добивали бы её http://arduino.ru/forum/apparatnye-voprosy/arduno-2560-7-ekran-lcd-tft зачем дублировать? 

БП у вас слабоват и хиловат(пульсации скорее всего) .

// подсветка на 7" много кушает, и очень напрягает параметрический стабилизатор на ардуине. У себя в такой-же конфигурации,  на этом шилде-переходнике  снял пин +5в , и взял питание с  поставиленной мини платки аналог lm2596 (та что на 1МГц), запитал её от пина Vin . фотка гдето была на этом форуме.

dezhavi
Offline
Зарегистрирован: 26.12.2015

Я тоже  так подумал, что БП  хиловат.
А что, если запитать от +5В отдельно. Те  взять напряжение например с другого блока питания?

slider
Offline
Зарегистрирован: 17.06.2014

можете попробовать.

Но у меня в случае подачи этих хороших 5,0в через usb разъем на меге, очень сильно грелся самовосстанавливающийся предохранитель на плате ардуинымеги, и на нём проседало очень много напряжения.

  если сторонние 5,0в качественные и надёжные, можете попробовать подать на пин +5в на плате ардуиномега. Или сделать как предложил выше, отдельный импульсный стабилизатор для дисплея, питающийся от Vin .

Sergey160481
Offline
Зарегистрирован: 05.01.2018

Здравствуйте!

Столкнулся с похожей проблемой - не хочет работать тачскрин дисплея.

Для начала о железе:

У меня это Arduino Mega 2560 R3 + Mega Shield v2.2 + TFT LCD touch shield 3.2 дюйма для Arduino

Теперь о самой проблеме.

Включаю, запускается программа, включается дисплей, видно изображение. Далее нажимаю на тачскрин и тут возможно два варианта.

Вариант первый. Тачскрин не реагирует на нажатия. При этом программа выполняется (на экране идут часы, изменяются показания датчиков температуры). Тачскрин ни сразу ни через время (ждал до 2-х часов) не заработает...

Вариант второй. Тачскрин работает. Работает корректно и будет работать до выключения питания (пробовал после удачного запуска, работал без сбоев до 3-х суток).

Как пробовал решать проблему.

Питание. Использовал по очереди питание USB от компа, USB от ноутбука, блок питания 5В, 0.75А на ножку +5В ардуины, блок питания 9В, 1.0А в гнездо питания ардуины, блок питания PS-05-5 Mean Well 5В, 1А на ножку +5В ардуины.

По питанию так-же пробовал разводку проводом сечения 1,5мм массы и +5В непосредственно на плату дисплея

Железо. Все описанное выше железо имеется в двух экземплярах. Т.е. две Меги, два шильда переходника, два TFT LCD touch экрана. В любой конфигурации подключения проблема остается.

Программа. Любая программа, то ли моя, то ли программа UTouch_ButtonTest  из библиотеки UTouch, вообще любая программа – ведет себя одинаково – если при включении тачскрин начал работать, то далее все ок. Если не начал – то до следующего удачного включения ничего не поменяется.

Еще раз о питании. Пробовал ставить помехоподавляющие конденсаторы JFZ-0,1 uF /310VAC или MKP X2 0.047uF 275V, еще электролиты 1000uF 10V. Мерял напряжение на Меге, на шильде переходнике, на самом дисплее – везде 4,99 – 5,02 вольта. На плате дисплея есть стабилизатор 65z5. Напряжение на входе 5В, на выходе 3В (точнее 2.92 – 2.98). Здесь же на плате и микросхема контроллера тачскрина XPT2046. На нее приходит 3В. Из Data Sheet на контроллер - Low voltage operation (VCC = 2.2V ∼ 3.6V). Вроде как питания хватает…

И еще о моих наблюдениях. Включений с неработающим тачскрином больше чем включений с нормальной работой. Соотношение где-то  75 / 25. Бывают моменты, когда количество включений с нормальной работой достигает до 5-7 раз подряд. Причем интервал выкл./вкл. Может быть и коротким и длинным. Но общей картины это не меняет – потом он может нормально не запуститься и 20 раз подряд.

На этом мои познания,  а с ними и варианты решения проблемы заканчиваются.

Поэтому прошу помощи у Вас, уважаемые форумчане.Здраствуйте.Как вы решили эту проблему.А то у меня так же тач то работает то нет.Помагает только перезапуск. Когда за один раз а когда и за десять.

 

У меня такая же проблема...Как она решилась?

fimin
fimin аватар
Offline
Зарегистрирован: 24.01.2014

Всем погрязшим в этой проблеме привет

Имею такую же проблему в нескольких вариантах исполнения

1) ARDUINO MEGA 2560 R3 + Mega Shield V2.2 + TFT 4.3' на чипе 1963

2) Плата изделия с MEGA2560mini и с согласователями уровней, источниками питания 5 и 3 В а током 2А каждый и тем же дисплеем

Библиотеки стандартные UTFT,

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

То что проблема не в плохом питании точно. Есть закономерность , если подать питания на МЕГУ (5В) ,

а спустя несколько секунд на TFT или отключить питание 3В TFT и включить - тач запускается

Есть хорошо оборудованная домашняя лабаратория и нет или мало к сожалению времени 

Если у кого то есть идеи что посмотреть на физическом уровне, готов присоедениться руками  

Такое ощущение что микросхема тача не стартует

 

fimin
fimin аватар
Offline
Зарегистрирован: 24.01.2014

Что то как то все притихли. Проблема остается.

Нашел на украинской ветке решение прервать питание микросхемы преобразователя уровня на  Mega Shield V2.2 на секунду. Работает, но не вариант решения. Предлагают заменить микросхему. Проверил

С микросхемой можно не заморачиваться. Не она точно. Посмотрел осциллографом , если не работает , то на D_OUT 1 дисплея , работает то 0 , при прикосновении пачка импульсов. Заморочка программная , виснет микросхема точа. Что то ей не всегда нравится, лапы заплетаются. Снимая напряжение с 74нс365 или другой ( в зависимости от шильда) или прерываем питание 3,3 экрана, мы фактически роняем в 0 вход на MEGА и URTouch как то перезапусает XPT2046. И все будет работать до бесконечности.
Попытки сделать задержки запуска URTouch в программе результата не дают. Если просмотреть все описания данной проблемы в инете , то можно понять что с какого то времени производства многие с этим столкнулись.
Делать программное прерывание питания - вариант, но кривой. Хотелось бы разобраться    
Дальше мозгов не хватает где копать и что в  URTouch. Где то видел что кто то что то подправил и все поехало, только не поделился что он сделал
У кого то получилось прокопать даммую проблему?

Параллельная ветка :http://forum.arduino.ua/viewtopic.php?pid=28187#p28187

slider
Offline
Зарегистрирован: 17.06.2014

обеспечивали качественное питание 5в ? 

попробуйте запитать от хороших и сильных 5в, в пин +5в ардуины.

ибо подсветка диспа много жрет:
1. при запитке через USB , там на плате Меги стоит самовосстанавливающийся предохранитель , на нем при старте возникает сильная просадка.
2. при запитке через разъем питания от БП, перегревается стаб 5в на Меге, и отключается.

Сделал так (работает уже несколько лет круглосуточно, вся ардуина запитана от БП , через  БПэшный разъем) : 

http://arduino.ru/forum/apparatnye-voprosy/arduno-2560-7-ekran-lcd-tft#comment-197740 заодно и уптавление подсветкой сделал.

Жрущую подсветку дисплея запитал (и шилды целиком) не от 5в ардуины меги (этот пин выдернул, можно и подогнуть подрезав около него пластик на шилде V2.2), а от импульсного мегагерцового DC-DC , который питается от Vin . Диод шоттки, чтоб обратка не пошла , при перепрограммировании через USB, да и чтоб не нагружать его.

Во вторых , надо показывать реальные фото того , что вам китайцы прислали , это важно , что там какие резисторы они вздумали поставить на микруху тача , или через буфер и как.

fimin
fimin аватар
Offline
Зарегистрирован: 24.01.2014

slider ,спасибо что откликнулись

TFT на фото , стандартный, вся обвеска тач контролера резистор и кондер. Резистор не по даташиту, на всех одинаковый на 3 экз.

Я соглашусь с вами что стабилизатор на плате Меги не потянет дисплей , он потребляет около 200 мА. Но при пуске все таки секунд 10 должен протянуть. Проблема то при пуске !!! Для длительной работы вы все сделали правильно.

Я использую стандартный бутерброд для разработки ARDUINO MEGA 2560 R3 + Mega Shield V2.2 + TFT 4.3' на чипе 1963 и собственную плату  под Мега мини . Там стоят собственные стабилизаторы на 3.3 и 5 В с током до 3 А. Результат одинаковый для 3 дисплеев. Воспользуюсь вашим советом и запитаю LED от другого стабилизатора или просто выключу LED в момент пуска ( Управление через транзистор у меня предусмотрено). Отпишусь

Проблему пока решил проводком (на фото) , питаю микросхему преобразователя от свободной ножки Меги. После загрузки первого экрана один раз проверяю, если на ноге входа D_OUT 1 то делаю на питающей ноге 0 с паузой 1 сек и возвращаю 1. Все работает как часы, не одного сбоя. Но данный костыль мне не нравится .

Напрягает то что люди применяющие данный диплей массово в автоматизации написали , что с какого то времени начались подобные проблемы с целыми партиями. Они решили еще проще - добавили кнопочное управление

slider
Offline
Зарегистрирован: 17.06.2014

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

// что у меня модуль - 7" , и он хавает непростительно много для ардуины :)  500мА , поэтому и такое решение было. Встречал поддельные стабы, вместо 1А , 800мА , они держали только 500мА , 100мА . 

fimin
fimin аватар
Offline
Зарегистрирован: 24.01.2014

Господа, Принципиально хочу победить проблему дисплея 4,3" ( точь после включения может запуститься , а может нет. Если запустился то навсегда, если нет - тоже навсегда. Какой либо системы не обнаружено)

Исключаются проблемы со слабым питанием, неисправностью дисплея (их 3 с одинаковой проблемой , куплены в разное время от разных поставщиков). На одном дисплее менял  XPT2046 -> ADS7843. ДОполнительные кондеры/земли и т.д тоже все перепробовано. Задержки в ПО вообще бесполезны

Четко отслеживается: Точь не запустился. Если ногу 2 на Меге T-IRQ(или T_PEN встречается) кратковременно замкнуть на землю ,или прервать питание драйвера преобразователя уровня 74HC5411 (создаем тот же самый 0 на 2 ноге Меги) точь запускается со 100% гарантией и живет бесконечно долго)

Получается что требуется какая то повторная переинициализация  XPT2046. Программа стоит стандартная URTouch.  Попытался в ней разобраться , мозгов не хватило . С железом на ты, с ПО не очень. Обнаружил что ножка pinMode(T_IRQ,...) инициализируется то как выход то как вход , непонятно зачем.  Для точа это выход , вход для меги. Убрал это переключение , результат тот же. Находил совет что надо в процедуру void URTouch::read() вставить в начале повторную инициализацию  XPT2046 , но автор так и не ответил как это он сделал. 

Может кто то подсказать как доработать что сделать с URTouch под эту проблему ?

Решение прерывания питания драйвера 74HC5411 в loop() однократно меня не устраивает, хотя работает. Кстати если его сделать в setup() , то  не помогает !!!

 

 

fimin
fimin аватар
Offline
Зарегистрирован: 24.01.2014

Закрываем тему.Проблема запуска точа как вздумается решил. Жалко потерял много времени выискивая проблему в железе TFT.

Существует 2 типа дисплея 4,3' с питанием подсветки от 5 в и от 3,3 в. У меня все 3 шт 3,3в и похоже проблема только с ними.

В библиотеке URTouch нет принудительной инициализации XPT2046/ADS7843. Такое ощущение что ШИМ подсветки при пуске создает какую то помеху. Если явно в команде инициализации библиотеки прописать команду для точа 0x80,0x0,0x0, то проблема исчезает. Пока не получил ни одного сбоя. Надеюсь поможет всем кто в это вляпался и не только с данным дисплеем. Думаю проблема общая

 

 

Sergey160481
Offline
Зарегистрирован: 05.01.2018

А можно подробней что куда нужно прописать чтоб проблема ищезла??

fimin
fimin аватар
Offline
Зарегистрирован: 24.01.2014

Завтра пропишу , у iPad нет среды и вообще ничего нет 

 

fimin
fimin аватар
Offline
Зарегистрирован: 24.01.2014

В библиотеке URTouch откройте файл URTouch.cpp.    В процедуре void URTouch::InitTouch(byte orientation) в самом конце пропишите

        touch_WriteData(0x80);        
	pulse_high(P_CLK, B_CLK);
        touch_WriteData(0x0);        
	pulse_high(P_CLK, B_CLK);
        touch_WriteData(0x0);        
	pulse_high(P_CLK, B_CLK);

И все начинает работать без проблем. Раз 200 делал рестарт и не разу не получил не работающего точа.

Может я как то криво написал, я не программист, больше железячник , но важен результат.  Всем удачи