Почистил библиотеку от лишних условий. Скорость работы значительно возрасла, а занимаемая память снизилась на пару-тройку кб! Раньше пример UTFT_Demo_400x240 отрабатывался за 49413мс, теперь за 44229. Для зеленого uno шилда 3,5 + только arduino uno (могу выложить версию для меги, скрещивать мне лень - перешел полностью на мегу). Компилировал в иде 1.5.8. В 1.0.5 возможно заругается на _delay_ms, в таком случае заменить на просто delay. Добавлен русский шрифт с просторов инета. Строка инициализации:
Спасибо PhOSTU. Вот так теперь и приходится выкладывать библиотеки целиком. И указывать под какой IDE они запускались.
31 можно обозначать NIC35WS или ILI9327_8 . В разных версиях библиотек нумерация может меняться, а названия оставаться теми же.
Henning Karlsenдоработал свою библиотеку с v2.77b на v2.79 типа под 1.5.8 IDE , но от туда стёр ILI9320, ILI9327_8,.... , так понял что производители шилдов не захотели делиться денежкой. На его сайте старых библиотек не нашёл. Так что народ сохраняйте работоспособные конфигурации - старые библиотеки и IDE!
Самая пока приглядная для этого дисплея, действительно библиотека v2.77b (в v2.77 небыло 31 дисплея, в 2.79 убран и заменен на совершенно другой).
Как оказалось , к примеру 8K1465 даже с одинаковыми названиями на шлейфах TFT8K1465FPC-A1-E, попались немного разные шлейфы по разводке (благо со схожей распиновкой) , и с разными контроллерами.
Почистил библиотеку от лишних условий. Скорость работы значительно возрасла, а занимаемая память снизилась на пару-тройку кб! Раньше пример UTFT_Demo_400x240 отрабатывался за 49413мс, теперь за 44229. Для зеленого uno шилда 3,5 + только arduino uno (могу выложить версию для меги, скрещивать мне лень - перешел полностью на мегу). Компилировал в иде 1.5.8. В 1.0.5 возможно заругается на _delay_ms, в таком случае заменить на просто delay. Добавлен русский шрифт с просторов инета. Строка инициализации:
Правленная библиотека для работы с тачскрином находится в предыдущих сообщениях.
Если кого напрягает перевёрнутый экран в зелёном шилде, можно сделать так (чтобы разъёмы питания и USB были привычно слева от ардуино уно):
в папке .....\UTFT\tft_drivers\ili9327_8 поправить
1. initlcd.h
LCD_Write_COM(0x36); // регистр положения дисплея по даташиту ILI9327
LCD_Write_DATA(0x48); заменить на LCD_Write_DATA(0x88); - это перевернёт зкран на 180гр
2. setxy.h
первой строчкой написать y1=y1+32; y2=y2+32; - это сместит картинку в нормальное положение (т.к. видеопамять ILI9327 432пикс по нашей горизонтали, а у нас матрица дисплея 400пикс.
это сработало. на время выполнения теста не повлияло как было 44сек, так и осталось.
Пробовал при инициализации сменить адресацию в регистре 2B от 0000 до 018F на от 0020 до 01AF - не помогло - да и не должно , это же не маска. Всякие там сдвиги. скрулы и маски не исследовал.
Почистил библиотеку от лишних условий. Скорость работы значительно возрасла, а занимаемая память снизилась на пару-тройку кб! Раньше пример UTFT_Demo_400x240 отрабатывался за 49413мс, теперь за 44229. Для зеленого uno шилда 3,5 + только arduino uno (могу выложить версию для меги, скрещивать мне лень - перешел полностью на мегу). Компилировал в иде 1.5.8. В 1.0.5 возможно заругается на _delay_ms, в таком случае заменить на просто delay. Добавлен русский шрифт с просторов инета. Строка инициализации:
Правленная библиотека для работы с тачскрином находится в предыдущих сообщениях.
Чтобы зелёный уновский дисплей заработал на ардуине меге (ибо у него шина данных 8 бит приходится не на 0-7 цифровые пины как регламентировано для УНОвских шилдов в UTFT, а на 2-10 цифровые пины) , то надо в
Тест на меге проходит за 53сек, против 44сек на уно, из-за того что 8 проводов шины данных дисплея приходят на много разных портов (G, H, E) меги , и уходит время на раскидывание данных по ним, чем на уно (порты B, D).
Строка инициализации зелёного УНОвского шилда в меге, та же - UTFT myGLCD(31,A2,A1,A3,A4);
У меня заработало в итоге с этой библиотекой СД карта, только SPI_Speed минимальную указал. Надеюсь, тоже кому поможет https://github.com/greiman/SdFat-beta
Вот где собственно они используют
void UTFT::drawBitmap(int x, int y, int sx, int sy, bitmapdatatype data, int scale)
{
unsigned int col;
int tx, ty, tc, tsx, tsy;
byte r, g, b;
if (scale==1) {
if (orient==PORTRAIT) {
cbi(P_CS, B_CS);
setXY(x, y, x+sx-1, y+sy-1);
for (tc=0; tc<(sx*sy); tc++) {
col=pgm_read_word(&data[tc]);
LCD_Write_DATA(col>>8,col & 0xff);
я сделал в скетче UTFT_Demo_400x240 (он один всего в этой библиотеке) строку инициализации:
UTFT myGLCD(ITDB32WC,40,39,38,41);
пошел мусор по экрану, но иногда проскакивала уменьшенная картинка из теста, тогда я загрузил скетч UTFT_Demo_480x320 из стандартной Карлсеновской библиотеки с инициализацией:
UTFT myGLCD(CTE32HR,38,39,40,41);
или
UTFT myGLCD(CTE40,38,39,40,41);
и дисплей заработал... правда с инверсией цвета.
Обращаюсь к вам, т.к. считаю, что нам попались одинаковые дисплеи, с просьбой помочь разобраться с цветами.
также не заработал тачскрин - чувствует нажатия, но не может определить координаты - подозреваю что оборван шлейф, завтра на работе проверю
Комплект пришёл быстро, но дисплей оказался битым. Продавец на связь не выходил (я отправлял 3 сообщения: одно - на емейл, два - через сайт). Открыл спор, затребовал возврат суммы почти 100%, продавец так и не отреагировал, спор был закрыт в мою пользу. Это так, на всякий случай, для тех, кто хочет купить что-то у этого продавца...
Вот и я себе взял красный дисплей с 8 битным управлением и подключаю его к МЕГЕ 2560. Получается у меня такой же как у Бублика, т.к. его файлы заработали, и дисплей ожил, правда прорисовка очень медленная и клочками. Запустил тест тача с цифрами, при нажатии на соответствующую цифру нажимается другая. Флешку пока не пробовал. Проблемы с тачем и скоростью прорисовки попробую порешать позднее, благо на форуме все описано. Еще раз спасибо всем, кто решал эти проблемы.
Пытался собрать бутерброт из Меги+Прото шилд для Меги+Экран. Столкнулся с тем что на протошилде контакты "мама" идут со смещением относитльно контактов Меги, и экран на протошилд не садится. Садиться только на прямую на Мегу. Это так информация для информации, чтобы кто-то не попался как я. Можно самому спаять протошилд, используя макетку и проходные разъемы для подлючения к Меге с длинными штырями "папа", но мне попались длинноватые, и придется их продрезать.
А теперь мои размышления. Я правильно понимаю, что все эти проблемы вылезли потому, что распиновка разъемов на китайском экране, не совпадает со стандартными разъемами? Или там еще есть какой-то подводный камень? Хочу попробовать подключить экран шлейфами к стандартным пинам, и запустить стандартные библиотеки. Как думаете получится? Если все получится, то шлейф заменю проводами и припаяю это все к протошилду. По результатам отпишусь.
А теперь мои размышления. Я правильно понимаю, что все эти проблемы вылезли потому, что распиновка разъемов на китайском экране, не совпадает со стандартными разъемами? Или там еще есть какой-то подводный камень?
К тому же может другой контроллер стоять, а это и инициализация немного иная и установка X Y точек и окон. Даже хоть на шлейфах дисплеев напишут тоже назание.
Итак, сегодня подключил экран к Меги через шлейфы, согласно картинки приведенной ниже.
Sergiy_83 пишет:
При 8ми битном подключении младшие разряды DB0-DB7 не используются.
Запустил код от Бублика, для проверки, все работает.
Получается отличае от стандартной распиновки никакой, только перепутаны разъемы SCK и IN на флешке. Стандартный разьемы таковы:
наименование выводов экрана - пин в стандартной распиновке - пин нашего экрана (Пины даны когда подключим к ардуино):
GND - GND - GND (JP 3)
VCC - 5V - 5V (JP 3)
LCD_RS - 38 - 38 (JP 1)
LCD_WR - 39 - 39 (JP 1)
LCD_RD (LED_A) - 3V3 - 3,3V (JP 3)
LCD_DB8 - 22 - 22 (JP 1)
LCD_DB9 - 23 - 23 (JP 1)
LCD_DB10 - 24 - 24 (JP 1)
LCD_DB11 - 25 - 25 (JP 1)
LCD_DB12 - 26 - 26 (JP 1)
LCD_DB13 - 27 - 27 (JP 1)
LCD_DB14 - 28 - 28 (JP 1)
LCD_DB15 - 29 - 29 (JP 1)
LCD_CS - 40 - 40 (JP 1)
LCD_RESET - 41 - 41 (JP 1)
LCD_DB0 - 37 - не используется (JP 1)
LCD_DB1 - 36 - не используется (JP 1)
LCD_DB2 - 35 - не используется (JP 1)
LCD_DB3 - 34 - не используется (JP 1)
LCD_DB4 - 35 - не используется (JP 1)
LCD_DB5 - 34 - не используется (JP 1)
LCD_DB6- 33 - не используется (JP 1)
LCD_DB7 - 32 - не используется (JP 1)
TouchP_CLK - 6 - 6 (JP 2)
TouchP_CS - 5 - 5 (JP 2)
TouchP_DIN - 4 - 4 (JP 2)
TouchP_BUSY - не используется - 7 (JP 2)
TouchP_OUT - 3 - 3 (JP 2)
TouchP_Penirq (IRQ) - 2 - 2 (JP 2)
SD_OUT - 50 - 50 (JP 1)
SD_SCK (CLK) - 51 - 52 (JP 1)
SD_DIN - 52 - 51 (JP 1)
SD_CS - 53 - 53 (JP 1)
После проверки работоспособности, залил стандартный скеч (хотя по распиновке понятно, что работать не будет...но все же) ничего не заработало. slider был абсолютно прав, но хотелось поэкспериментировать.
Теперь в размышлениях. Куда копать дальше....
В общем штука такая, есть у меня проект, который написан под нормальный экран, но не знаю чего там нужно подправить, чтобы скеч заработал. Размышления такие....в этом скече со стнадратными библиотеками (есть у меня такой архив) меняю библиотеки на те что скинуты на этом форуме, а дальше в скече нужно поменять строки со стандартного экрана на подделку. Вот какие строки нужно менять? Тут встал в тупик. Я еще не совсем разобрался с программированием, поэтому тяжело.
Я хочу использовать шлейф от жесткого диска для подсоединения экрана. Хочу сделать так...средний разъем мама посадить на 36 пиновый разъем экрана, а кототкий остаток, предварительно распушив, подключить к JP2 и JP3. Получается от этих разъемов пойдет транзитом через разъем JP1 по не используемым пинам. Возникает вопрос, а ничего там не коротнет? Длинный конец от среднего разъема на шлейфе, так же распушив, хочу подпоять к протошилду, чтобы одев протошилд получить рабочий экран и ничего не подлключать специальным шлейфом для макетных плат и ардуино. Возможно ли такое подключение?
Если пины не просто не используются под вашу задачу,но и не разведены на платах,то ничего не будет. Будет лень проверять, включайте без проверки и не забудьте сюда выложить результат, на общее благо.
Библиотеку Utouch установил, ошибок компилятора нет. Но и тач не работает.
Там же, Хабре, читаю вот это:
========
Теперь подгружаем дополнение и создаем объект – сенсорный экран с именем myTouch. В качестве параметров команде инициализации передаются номера пинов, к которым подключены сигналы TCLK, TCS, TDIN, TDOUT и IRQ.
========
И стандартно предлагается указать вот это - UTouch myTouch( 6, 5, 4, 3, 2);
Получается, что должны быть указаны другие пины. Только какие? Смотрел несколько распиновок - нигде не увидел этих TCLK, TCS, TDIN, TDOUT и IRQ.
Может они как то по другому на схемах обозначаются?
Прошу помочь с решением этой проблемки...если оно есть конечно.
ЗЫЫЫЫ
Сайт производителя не доступен, различные вариации (из стандартных) пробовал - ну не выходит.
Отрисовывается все отлично, а вот тач не работает...зараза!
Блин, вот сейчас подумал - а если тач на этом экране вовсе не предусмотрен?...
я сделал в скетче UTFT_Demo_400x240 (он один всего в этой библиотеке) строку инициализации:
UTFT myGLCD(ITDB32WC,40,39,38,41);
пошел мусор по экрану, но иногда проскакивала уменьшенная картинка из теста, тогда я загрузил скетч UTFT_Demo_480x320 из стандартной Карлсеновской библиотеки с инициализацией:
Если инверсия цвета на дисплее (синус теста UTFT рисуется на белом фоне, а не на чёрном), то решить можно поискав другие инициализации на этот контроллер, либо посмотреть даташит на контроллер (к примеру на контроллер HX8352A это бит INVON в 0x01 регистре, менял этот бит в инициализации UTFT , и цвета инвертировались в правильные). Думаю что это связано с поворотом поляризационной плёнки на заводе, при изготовленнии матрицы для дисплея.
Если просто немного другие цвета на дисплее , то это также может быть из-за инициализации (полагаю другая гамма коррекция для другого питающего напряжения на дисплее ). либо режим цветности 65К вместо 262К ( для определённых контроллеров может устанавливаться пинами im0....im3,im4, если они выведены, либо полагаю также возможно дело в инициализации )
но прежде чем использовать тач его надо откалибровать - там в примерах к UTouch есть Utouch Calibration запускаешь ее, калибруешь и получаешь на дисплее 3 числа, которые прописываешь в UtouchCD.h после этого тач работает нормально.
В TouchCalibration определил #define TOUCH_ORIENTATION LANDSCAPE
Правда проблема с шлейфом присутствовала и у меня - пришлось прогреть паяльником на 300 градусах подложив бумагу между паяльником и пленкой.
PS!!! 22 нога указана неверно - две верхние это 5 вольт, а 22 находится ниже (под той что указана на рисунке)
А кто нибудь анализировал как там включена подсветка? Есть ли токоограничивающие резисторы или светодиоды включены напрямую и через часов 100 непрерывной работы яркость упадет? Как ей управлять? Отключая 5 вольт идущие на 1117 или есть более удобный метод?
А кто нибудь анализировал как там включена подсветка? Есть ли токоограничивающие резисторы или светодиоды включены напрямую и через часов 100 непрерывной работы яркость упадет? Как ей управлять? Отключая 5 вольт идущие на 1117 или есть более удобный метод?
Про подсветку писал выше (на прямую на 3.3V) Я пошел более неудобным способом развел свою плату и поставил последовтельно резак на подсветку. PWM в контроллере вроде есть но он не выведен на шлейф LCD FPC-XT035-059A так что управление яркостью только вручную. Кстати если припаян FPC-XT035-059A то ни о каком настоящем 16 битном режиме можете и не мечтать, там только 8 bit на шлейфе остальные 8 висят в воздухе.
А кто нибудь анализировал как там включена подсветка? Есть ли токоограничивающие резисторы или светодиоды включены напрямую и через часов 100 непрерывной работы яркость упадет? Как ей управлять? Отключая 5 вольт идущие на 1117 или есть более удобный метод?
Про подсветку писал выше (на прямую на 3.3V) Я пошел более неудобным способом развел свою плату и поставил последовтельно резак на подсветку. PWM в контроллере вроде есть но он не выведен на шлейф LCD FPC-XT035-059A так что управление яркостью только вручную. Кстати если припаян FPC-XT035-059A то ни о каком настоящем 16 битном режиме можете и не мечтать, там только 8 bit на шлейфе остальные 8 висят в воздухе.
Насчет FPC-XT035-059A - как выяснить? На нем ничего такого не написано, если надо отдирать сам экран, то заморачиваться не буду. Пробовал я вывешивать на проводах только 8 бит - заставить работать в таком режиме я его не смог, только когда все 16 подключаешь он работает. А мне как раз актуальнее 8 бит чтобы меньше проводов тянуть и больше свободных ног у меги осталось. А такой вопрос - от 1117 питается только подсветка или еще что то? Если я ее отрежу и последовательно резюк повешу..
Да, надо отодрать чтобы прочитать. Маркировка дисплея пишут на шлейфе и или на самом дисплее.
Сам дисплей питается тоже от 3.3V поэтому резак надо садить в цепь светодиодов. На счет 16/8 режима. я в предлагаемой библиотеке только инициализацию контроллера ili9327 подсмотрел и как пинами управления дергать. так что что она там делает я не знаю. а вообще там может быть припаяно 2 видов дисплея так что кто знает может у вас 16 битный вариант LCD
Правда проблема с шлейфом присутствовала и у меня - пришлось прогреть паяльником на 300 градусах подложив бумагу между паяльником и пленкой.
Может и у меня такая проблема? Можешь показать на фото в каком месте прогревал? Сам то ниразу этого не делал - лучше не рисковать, сделать так, как уже испробовано.
Да, надо отодрать чтобы прочитать. Маркировка дисплея пишут на шлейфе и или на самом дисплее.
Сам дисплей питается тоже от 3.3V поэтому резак надо садить в цепь светодиодов. На счет 16/8 режима. я в предлагаемой библиотеке только инициализацию контроллера ili9327 подсмотрел и как пинами управления дергать. так что что она там делает я не знаю. а вообще там может быть припаяно 2 видов дисплея так что кто знает может у вас 16 битный вариант LCD
Только что оторвал дорогу от 1117, подсветка пропала, сам дисплей работает - так что у меня от него только подсветка работает, сам контроллер питается от 3.3 с меги (соседний вывод). Воткнул в разрыв 33 ома - светит, но мне кажется слабовато. Интересно какой номинальный ток подсветки ему нужен? Если не секрет то сколько у Вас стоит ом?
Только первый экран появляется. И все! тач так и не хочет работать.
Если не трудно - выложи библиотеку и пример калибровки тача - может у меня руки совсем кривые?...
в 16ти битном точно такая строка (myGLCD(ILI9327, 38,39,40,41);) тк ILI9327 это в utft.cpp соответствует 16ти битному контроллеру. 22-38 это шина данных, а 38-41 управляющие сигналы - они соответствуют тем что заданы в строке. И собсно если он показывает нормально, то UTFT ,больше не трогай - лучше не станет ))) Проблема сейчас с Utouch там строка инициализации
UTouch myTouch(6,5,4,3,2);
если с ней не работает, то скорее всего либо проблема со шлейфом, можно попробовать нажать пальцем на место где шлейф прикреплен к экрану, либо калибровочные константы очень смещены, либо забыл его переключить в landscape
Воткнул в разрыв 33 ома - светит, но мне кажется слабовато. Интересно какой номинальный ток подсветки ему нужен? Если не секрет то сколько у Вас стоит ом?
15 Ом. В моем 6 светодиодов, я подбирал чтобы ток был 18 - 20 мА на брата. На прямую ток был 180 мА тоесть 30мА на каждого. Но в моем случае можно было на каждый поставить по резаку, но я чето решил что сойдет и так. Просто когда светодиоды в паралель это не значит что через них протекает одинаковый ток, так как характеристики у них разные. Да и разницы в яркости особо не видно что 20 что 30мА.
Кстати контроллер дисплея может работат и на пониженном напряжении вопрост только на сколько стабильно. Смотрите внимательно может все таки не от меги он запитан.
15 Ом. В моем 6 светодиодов, я подбирал чтобы ток был 18 - 20 мА на брата. На прямую ток был 180 мА тоесть 30мА на каждого. Но в моем случае можно было на каждый поставить по резаку, но я чето решил что сойдет и так. Просто когда светодиоды в паралель это не значит что через них протекает одинаковый ток, так как характеристики у них разные. Да и разницы в яркости особо не видно что 20 что 30мА.
Кстати контроллер дисплея может работат и на пониженном напряжении вопрост только на сколько стабильно. Смотрите внимательно может все таки не от меги он запитан.
Спасибо за информацию сейчас попробую впаять 15-20 ом, контроллер питается по пину где 3.3 тк отключаешь его, подсветка остается, а изображение пропадает.
#define TOUCH_ORIENTATION изменил. Координаты в файле (UTouchCD.h) пробовал и стандартные и от isurin.
Контакты, как на фото выше прогревал - до легкого пожелтения бумаги.
Калибровочный тест не запускается. Попробовал запустить кнопочный тест, результат тот же - загружается экран с кнопками. Когда первый раз нажимаешь на экран вокруг кнопки "Clear" появляется красненькая рамочка. И все. Больше тач ни на что не реагирует. На фото видна эта рамочка.
Это все? Тач мертвый? Думаю, если так, то открывать спор с продаваном...
MadG, ну возьми мультиметр и проверь сопротивление тача, и изменение , в инете описана проверка. За одно проследишь куда дальше он идёт.
Не знал, что в такие шлейфы можно с мультиметром... Во общем тестировщик из меня еще тот :)
Сам экранчик отодрал от липучки, померил сопротивление по дорожкам шлейфа (на картинке указал где 1, а где 4):
1-4 658
1-3 206
1-2 555
2-4 106
2-3 505
3-4 685
Как подсказывает интернет, то нормальные значения.
Попробовал прозвонить на ножки - а вот тут засада. Толком не знаю что и где искать. Попробовал звонить первую дорожку - сопротивление показывает только на ножках +5 и (по моему) земля. И то сопротивление показывает около 950Ом. Так что бы прямой выход на ногу - не нашел. Думаю просто не знаю как искать.
На какой ноге мне поискать первую дорожку? Каким, примерно, должно быть сопротивление?
а она уже выведена на разъем (2-6) через две сборки, посмотри внимательно, может 2046 криво впаяна или непропаяна.
============
Сейчас померял сопротивление между 2 и 3 ногой 2046 (x+ y+ ) без нажатия там больше 200 килоом, при нажатии 500-800 ом
между 4 и 5 ногой (x- y-) так же - без нажатия больше чем 200к, при нажатии сотни ом. Если у тебя так же - смотри что бы 2046 была запаяна ровно, без сопель, китайцы это любят. и проверь соединения с 2046 через резисторные сборки на разъем - у меня выведено так:
2 пин на разъеме (там где цифра 2) меги 2560 это irq
Сейчас померял сопротивление между 2 и 3 ногой 2046 (x+ y+ ) без нажатия там больше 200 килоом, при нажатии 500-800 ом
В моем случае, на дисплее, отсоединенном от Меги, между 2 и 3 без нажатия 688Ом, если нажать 357Ом.
Именно Ом, не килоОм...херня какая то у меня а не тач...
:) как ты так быстро все меряешь? Я вдвоем с дочей, в четыре руки...и то хреново, ничего не видно, к щупам мультиметра прикрутил иголки, что бы хоть как то попдать в эти малюсенькие конткты...
В моем случае, на дисплее, отсоединенном от Меги, между 2 и 3 без нажатия 688Ом, если нажать 357Ом.
Именно Ом, не килоОм...херня какая то у меня а не тач...
:) как ты так быстро все меряешь? Я вдвоем с дочей, в четыре руки...и то хреново, ничего не видно, к щупам мультиметра прикрутил иголки, что бы хоть как то попдать в эти малюсенькие конткты...
Только мерять надо так что бы ничего не прикасалось к экрану, если он лежит на столе то показания могут быть не точными. Но если в свободном положении там 600 с лишним ом - то видимо он где то нажат (возможно криво приклеен или еще какая то хрень)
Сейчас залил калибровку и попробовал включить экран предварительно нажав на него. Получилась картина как у тебя на тач не реагирует. Но если отпустить то все ок. Скорее всего криво приклеен тач и где то замкнут.
To PhOSTU:
Полезная информация, спасибо. Покупал здесь http://www.ebay.com/itm/2-4-Inch-2-4-TFT-LCD-Shield-Touch-Panel-Module-TF-Micro-SD-For-Arduino-UNO-R3-/121416820943?pt=LH_DefaultDomain_0&hash=item1c4501a8cf. Я у этого продавца уже покупал другие штуки, все было норм. Но в этот раз приехало не совсем то. А на том, что приехало белым по красному было написано название шилда, производитель и модель контроллера. Но уже и эта информация вызывает сомнения... Судя по всему, творческий подход к продаже тачскринов - добрая китайская традиция.
Почистил библиотеку от лишних условий. Скорость работы значительно возрасла, а занимаемая память снизилась на пару-тройку кб! Раньше пример UTFT_Demo_400x240 отрабатывался за 49413мс, теперь за 44229. Для зеленого uno шилда 3,5 + только arduino uno (могу выложить версию для меги, скрещивать мне лень - перешел полностью на мегу). Компилировал в иде 1.5.8. В 1.0.5 возможно заругается на _delay_ms, в таком случае заменить на просто delay. Добавлен русский шрифт с просторов инета. Строка инициализации:
https://yadi.sk/d/ikLBsmpFcz9Yv
Правленная библиотека для работы с тачскрином находится в предыдущих сообщениях.
Спасибо PhOSTU. Вот так теперь и приходится выкладывать библиотеки целиком. И указывать под какой IDE они запускались.
31 можно обозначать NIC35WS или ILI9327_8 . В разных версиях библиотек нумерация может меняться, а названия оставаться теми же.
Henning Karlsen доработал свою библиотеку с v2.77b на v2.79 типа под 1.5.8 IDE , но от туда стёр ILI9320, ILI9327_8,.... , так понял что производители шилдов не захотели делиться денежкой. На его сайте старых библиотек не нашёл. Так что народ сохраняйте работоспособные конфигурации - старые библиотеки и IDE!
Самая пока приглядная для этого дисплея, действительно библиотека v2.77b (в v2.77 небыло 31 дисплея, в 2.79 убран и заменен на совершенно другой).
Кто-то здесь спрашивал про распиновку дисплея FPC-XT035-059-A , вот разбираюсь ради интереса http://arduino.ru/forum/apparatnye-voprosy/arduino-i-displei-ot-sotikov-mobilnykh-telefonov , в надежде замены на похожий и дешёвый
Как оказалось , к примеру 8K1465 даже с одинаковыми названиями на шлейфах TFT8K1465FPC-A1-E, попались немного разные шлейфы по разводке (благо со схожей распиновкой) , и с разными контроллерами.
Делал шилд под себя может кому пригодииться
номерация сверху вниз правая гребенка на фото
в более читаемом виде ) : https://yadi.sk/i/r8Nem_kdd22Nn
http://arduino.ru/forum/apparatnye-voprosy/tft-35-i-arduino?page=1#comme...
Бублик,
у меня дисплейный модуль, выглядящий точно так же, только надпись на нём 3.5" aitendo ili9327 (был прислан вместо заявленного http://www.aliexpress.com/snapshot/6285068449.html?orderId=64132337377223). Работает с библиотекой, большое спасибо!
Может быть, информация для кого-нибудь будет полезна.
Тач не проверял.
Жду вот такой. Попробую запустить. http://www.aliexpress.com/item/3-5-Inch-TFT-LCD-400x240-Spi-Interface-il...
Почистил библиотеку от лишних условий. Скорость работы значительно возрасла, а занимаемая память снизилась на пару-тройку кб! Раньше пример UTFT_Demo_400x240 отрабатывался за 49413мс, теперь за 44229. Для зеленого uno шилда 3,5 + только arduino uno (могу выложить версию для меги, скрещивать мне лень - перешел полностью на мегу). Компилировал в иде 1.5.8. В 1.0.5 возможно заругается на _delay_ms, в таком случае заменить на просто delay. Добавлен русский шрифт с просторов инета. Строка инициализации:
https://yadi.sk/d/ikLBsmpFcz9Yv
Правленная библиотека для работы с тачскрином находится в предыдущих сообщениях.
Если кого напрягает перевёрнутый экран в зелёном шилде, можно сделать так (чтобы разъёмы питания и USB были привычно слева от ардуино уно):
в папке .....\UTFT\tft_drivers\ili9327_8 поправить
1. initlcd.h
Почистил библиотеку от лишних условий. Скорость работы значительно возрасла, а занимаемая память снизилась на пару-тройку кб! Раньше пример UTFT_Demo_400x240 отрабатывался за 49413мс, теперь за 44229. Для зеленого uno шилда 3,5 + только arduino uno (могу выложить версию для меги, скрещивать мне лень - перешел полностью на мегу). Компилировал в иде 1.5.8. В 1.0.5 возможно заругается на _delay_ms, в таком случае заменить на просто delay. Добавлен русский шрифт с просторов инета. Строка инициализации:
https://yadi.sk/d/ikLBsmpFcz9Yv
Правленная библиотека для работы с тачскрином находится в предыдущих сообщениях.
Чтобы зелёный уновский дисплей заработал на ардуине меге (ибо у него шина данных 8 бит приходится не на 0-7 цифровые пины как регламентировано для УНОвских шилдов в UTFT, а на 2-10 цифровые пины) , то надо в
....\UTFT\hardware\avr
в файле HW_ATmega1280.h , всё стереть, и записать
void UTFT::_hw_special_init() { } void UTFT::LCD_Writ_Bus(char VL) { PORTH &= ~0x78; PORTH |= ((VL & 0x03)<<5)+((VL & 0xC0)>>3); PORTG &= ~0x20; PORTG |= (VL & 0x10)<<1; PORTE &= ~0x38; PORTE |=((VL & 0x20)>>2)+ ((VL& 0x0C)<<2); pulse_low(P_WR, B_WR); } void UTFT::_set_direction_registers(byte mode) { for(int p=2;p<10;p++) { pinMode(p,OUTPUT); } pinMode(A0, OUTPUT); digitalWrite(A0, 1); // подать на вывод RD дисплея, лог.1 } void UTFT::_fast_fill_16(int ch, int cl, long pix) { } void UTFT::_fast_fill_8(int ch, long pix) { long blocks; PORTH &= ~0x78; PORTH |= ((ch & 0x03)<<5)+((ch & 0xC0)>>3); PORTG &= ~0x20; PORTG |= (ch & 0x10)<<1; PORTE &= ~0x38; PORTE |=((ch & 0x20)>>2)+ ((ch & 0x0C)<<2); pulse_low(P_WR, B_WR); blocks = pix/16; for (int i=0; i<blocks; i++) { pulse_low(P_WR, B_WR);pulse_low(P_WR, B_WR); pulse_low(P_WR, B_WR);pulse_low(P_WR, B_WR); pulse_low(P_WR, B_WR);pulse_low(P_WR, B_WR); pulse_low(P_WR, B_WR);pulse_low(P_WR, B_WR); pulse_low(P_WR, B_WR);pulse_low(P_WR, B_WR); pulse_low(P_WR, B_WR);pulse_low(P_WR, B_WR); pulse_low(P_WR, B_WR);pulse_low(P_WR, B_WR); pulse_low(P_WR, B_WR);pulse_low(P_WR, B_WR); pulse_low(P_WR, B_WR);pulse_low(P_WR, B_WR); pulse_low(P_WR, B_WR);pulse_low(P_WR, B_WR); pulse_low(P_WR, B_WR);pulse_low(P_WR, B_WR); pulse_low(P_WR, B_WR);pulse_low(P_WR, B_WR); pulse_low(P_WR, B_WR);pulse_low(P_WR, B_WR); pulse_low(P_WR, B_WR);pulse_low(P_WR, B_WR); pulse_low(P_WR, B_WR);pulse_low(P_WR, B_WR); pulse_low(P_WR, B_WR);pulse_low(P_WR, B_WR); } if ((pix % 16) != 0) for (int i=0; i<(pix % 16)+1; i++) { pulse_low(P_WR, B_WR);pulse_low(P_WR, B_WR); } }Тест на меге проходит за 53сек, против 44сек на уно, из-за того что 8 проводов шины данных дисплея приходят на много разных портов (G, H, E) меги , и уходит время на раскидывание данных по ним, чем на уно (порты B, D).
Строка инициализации зелёного УНОвского шилда в меге, та же - UTFT myGLCD(31,A2,A1,A3,A4);
Бублик,
а вы пытались сд карту завести на 3,5'' китайском дисплее для меги?
На Меге дисплей запустить удалось, а вот с miniSD так и не у далось.
Интерфейс SPI: выводы 50 (MISO), 51 (MOSI), 52 (SCK), 53 (SS) - так, что думаю без паялника ни как .
на меге 3,5 я запускал. только пришлось делители доделать.
Все описано с картинками в этой ветке в моих постах. Возможно вам подойдет.
Бублик,
В вашем UTFT.cpp
отсутствует метод LCD_Write_DATA(char VL, char VH), а хотя в методе drawBitmap вызывается.
Чтобы не ругался компилятор, копирнул с нынешних версий - но рисует что то картинки вообще не так
У меня заработало в итоге с этой библиотекой СД карта, только SPI_Speed минимальную указал. Надеюсь, тоже кому поможет
https://github.com/greiman/SdFat-beta
@serge73, @vitalikost,
картинку отрисовывать не пытались?
силуэт вроде виден, а остальное вообще не похоже:
Вот я копирнул строки:
void UTFT::LCD_Write_DATA(char VH,char VL) { if (display_transfer_mode!=1) { sbi(P_RS, B_RS); LCD_Writ_Bus(VH,VL,display_transfer_mode); } else { LCD_Writ_Bus(0x01,VH,display_transfer_mode); LCD_Writ_Bus(0x01,VL,display_transfer_mode); } }Вот где собственно они используют void UTFT::drawBitmap(int x, int y, int sx, int sy, bitmapdatatype data, int scale) { unsigned int col; int tx, ty, tc, tsx, tsy; byte r, g, b; if (scale==1) { if (orient==PORTRAIT) { cbi(P_CS, B_CS); setXY(x, y, x+sx-1, y+sy-1); for (tc=0; tc<(sx*sy); tc++) { col=pgm_read_word(&data[tc]); LCD_Write_DATA(col>>8,col & 0xff);...
}
Попробовал адаптировать скетч http://arduinodev.com/arduino-sd-card-image-viewer-with-tft-shield/

Оригинал:

Такое впечатление, что размер картинки не совпадает с размерами окна в которое оно выводится :)
Да и "выход" текста за пределы отведенного для него "места", тоже настораживает - чет с размерами и координатами...
serge73,
у меня дисплей 3,5 дюйма на меге 2560 также мигал,
набор из http://ru.aliexpress.com/item/-/1989078374.html?isOrig=true#extend
я сделал в скетче UTFT_Demo_400x240 (он один всего в этой библиотеке) строку инициализации:
пошел мусор по экрану, но иногда проскакивала уменьшенная картинка из теста, тогда я загрузил скетч UTFT_Demo_480x320 из стандартной Карлсеновской библиотеки с инициализацией:
или
и дисплей заработал... правда с инверсией цвета.
Обращаюсь к вам, т.к. считаю, что нам попались одинаковые дисплеи, с просьбой помочь разобраться с цветами.
также не заработал тачскрин - чувствует нажатия, но не может определить координаты - подозреваю что оборван шлейф, завтра на работе проверю
Заказывал Arduino Mega 2560 с дисплеем здесь: http://ru.aliexpress.com/item/Mega-2560-R3-Development-Board-3-5-inch-TFT-LCD-Touch-Screen-Display-Module-Compatible-For/1769845784.html?recommendVersion=1
Комплект пришёл быстро, но дисплей оказался битым. Продавец на связь не выходил (я отправлял 3 сообщения: одно - на емейл, два - через сайт). Открыл спор, затребовал возврат суммы почти 100%, продавец так и не отреагировал, спор был закрыт в мою пользу. Это так, на всякий случай, для тех, кто хочет купить что-то у этого продавца...
В дополнение - деньги от Али получил :)
Вот и я себе взял красный дисплей с 8 битным управлением и подключаю его к МЕГЕ 2560. Получается у меня такой же как у Бублика, т.к. его файлы заработали, и дисплей ожил, правда прорисовка очень медленная и клочками. Запустил тест тача с цифрами, при нажатии на соответствующую цифру нажимается другая. Флешку пока не пробовал. Проблемы с тачем и скоростью прорисовки попробую порешать позднее, благо на форуме все описано. Еще раз спасибо всем, кто решал эти проблемы.
Пытался собрать бутерброт из Меги+Прото шилд для Меги+Экран. Столкнулся с тем что на протошилде контакты "мама" идут со смещением относитльно контактов Меги, и экран на протошилд не садится. Садиться только на прямую на Мегу. Это так информация для информации, чтобы кто-то не попался как я. Можно самому спаять протошилд, используя макетку и проходные разъемы для подлючения к Меге с длинными штырями "папа", но мне попались длинноватые, и придется их продрезать.
А теперь мои размышления. Я правильно понимаю, что все эти проблемы вылезли потому, что распиновка разъемов на китайском экране, не совпадает со стандартными разъемами? Или там еще есть какой-то подводный камень? Хочу попробовать подключить экран шлейфами к стандартным пинам, и запустить стандартные библиотеки. Как думаете получится? Если все получится, то шлейф заменю проводами и припаяю это все к протошилду. По результатам отпишусь.
Жду ответы на вопросы. Спасибо всем еще раз.
А теперь мои размышления. Я правильно понимаю, что все эти проблемы вылезли потому, что распиновка разъемов на китайском экране, не совпадает со стандартными разъемами? Или там еще есть какой-то подводный камень?
К тому же может другой контроллер стоять, а это и инициализация немного иная и установка X Y точек и окон. Даже хоть на шлейфах дисплеев напишут тоже назание.
Итак, сегодня подключил экран к Меги через шлейфы, согласно картинки приведенной ниже.
Запустил код от Бублика, для проверки, все работает.
Получается отличае от стандартной распиновки никакой, только перепутаны разъемы SCK и IN на флешке. Стандартный разьемы таковы:
наименование выводов экрана - пин в стандартной распиновке - пин нашего экрана (Пины даны когда подключим к ардуино):
GND - GND - GND (JP 3)
VCC - 5V - 5V (JP 3)
LCD_RS - 38 - 38 (JP 1)
LCD_WR - 39 - 39 (JP 1)
LCD_RD (LED_A) - 3V3 - 3,3V (JP 3)
LCD_DB8 - 22 - 22 (JP 1)
LCD_DB9 - 23 - 23 (JP 1)
LCD_DB10 - 24 - 24 (JP 1)
LCD_DB11 - 25 - 25 (JP 1)
LCD_DB12 - 26 - 26 (JP 1)
LCD_DB13 - 27 - 27 (JP 1)
LCD_DB14 - 28 - 28 (JP 1)
LCD_DB15 - 29 - 29 (JP 1)
LCD_CS - 40 - 40 (JP 1)
LCD_RESET - 41 - 41 (JP 1)
LCD_DB0 - 37 - не используется (JP 1)
LCD_DB1 - 36 - не используется (JP 1)
LCD_DB2 - 35 - не используется (JP 1)
LCD_DB3 - 34 - не используется (JP 1)
LCD_DB4 - 35 - не используется (JP 1)
LCD_DB5 - 34 - не используется (JP 1)
LCD_DB6- 33 - не используется (JP 1)
LCD_DB7 - 32 - не используется (JP 1)
TouchP_CLK - 6 - 6 (JP 2)
TouchP_CS - 5 - 5 (JP 2)
TouchP_DIN - 4 - 4 (JP 2)
TouchP_BUSY - не используется - 7 (JP 2)
TouchP_OUT - 3 - 3 (JP 2)
TouchP_Penirq (IRQ) - 2 - 2 (JP 2)
SD_OUT - 50 - 50 (JP 1)
SD_SCK (CLK) - 51 - 52 (JP 1)
SD_DIN - 52 - 51 (JP 1)
SD_CS - 53 - 53 (JP 1)
После проверки работоспособности, залил стандартный скеч (хотя по распиновке понятно, что работать не будет...но все же) ничего не заработало. slider был абсолютно прав, но хотелось поэкспериментировать.
Теперь в размышлениях. Куда копать дальше....
В общем штука такая, есть у меня проект, который написан под нормальный экран, но не знаю чего там нужно подправить, чтобы скеч заработал. Размышления такие....в этом скече со стнадратными библиотеками (есть у меня такой архив) меняю библиотеки на те что скинуты на этом форуме, а дальше в скече нужно поменять строки со стандартного экрана на подделку. Вот какие строки нужно менять? Тут встал в тупик. Я еще не совсем разобрался с программированием, поэтому тяжело.
Правильный ход мыслей? Помогите плиз.
И еще вопрос.
Я хочу использовать шлейф от жесткого диска для подсоединения экрана. Хочу сделать так...средний разъем мама посадить на 36 пиновый разъем экрана, а кототкий остаток, предварительно распушив, подключить к JP2 и JP3. Получается от этих разъемов пойдет транзитом через разъем JP1 по не используемым пинам. Возникает вопрос, а ничего там не коротнет? Длинный конец от среднего разъема на шлейфе, так же распушив, хочу подпоять к протошилду, чтобы одев протошилд получить рабочий экран и ничего не подлключать специальным шлейфом для макетных плат и ардуино. Возможно ли такое подключение?
Если пины не просто не используются под вашу задачу,но и не разведены на платах,то ничего не будет. Будет лень проверять, включайте без проверки и не забудьте сюда выложить результат, на общее благо.
Привет всем.
:) прибыло в полку вопрошающих...
Прикупил вот эту штуку:
http://ru.aliexpress.com/item/Mega-2560-R3-Development-Board-3-5-inch-TFT-LCD-Touch-Screen-Display-Module-Compatible-For/1769845784.html?recommendVersion=1
Продавец в описании очень краток - Контроллер 9327
Поправил стандартный UTFT вот так - myGLCD(ILI9327,38,39,40,41); и все заработало.
Следующий шаг это посмотреть как работает тач. Нашел простенький пример:
http://habrahabr.ru/post/196864/
Библиотеку Utouch установил, ошибок компилятора нет. Но и тач не работает.
Там же, Хабре, читаю вот это:
========
Теперь подгружаем дополнение и создаем объект – сенсорный экран с именем myTouch. В качестве параметров команде инициализации передаются номера пинов, к которым подключены сигналы TCLK, TCS, TDIN, TDOUT и IRQ.
========
И стандартно предлагается указать вот это - UTouch myTouch( 6, 5, 4, 3, 2);
Получается, что должны быть указаны другие пины. Только какие? Смотрел несколько распиновок - нигде не увидел этих TCLK, TCS, TDIN, TDOUT и IRQ.
Может они как то по другому на схемах обозначаются?
Прошу помочь с решением этой проблемки...если оно есть конечно.
ЗЫЫЫЫ
Сайт производителя не доступен, различные вариации (из стандартных) пробовал - ну не выходит.
Отрисовывается все отлично, а вот тач не работает...зараза!
Блин, вот сейчас подумал - а если тач на этом экране вовсе не предусмотрен?...
Блин, вот сейчас подумал - а если тач на этом экране вовсе не предусмотрен?...
Вот сейчас смотрю на Али - название товара (есть слово Тач=сенсорный)
Mega 2560 R3 Development Board + 3.5 inch TFT LCD Touch Screen Display
А ниже в описании нет уже про тач и сенсор...блиииин
Mega 2560 R3 Development Board + 3.5 inch TFT LCD Display Module Compatible
serge73,
у меня дисплей 3,5 дюйма на меге 2560 также мигал,
набор из http://ru.aliexpress.com/item/-/1989078374.html?isOrig=true#extend
я сделал в скетче UTFT_Demo_400x240 (он один всего в этой библиотеке) строку инициализации:
пошел мусор по экрану, но иногда проскакивала уменьшенная картинка из теста, тогда я загрузил скетч UTFT_Demo_480x320 из стандартной Карлсеновской библиотеки с инициализацией:
или
и дисплей заработал... правда с инверсией цвета.
У меня такой же купленный в
http://ru.aliexpress.com/item/Free-shipping-3-5-inch-TFT-LCD-screen-modu...
заработал по 16-ти битной шине с параметром:
1UTFT myGLCD(1,38,39,40,41);Все пляски с 8 битами ни к чему не привели
и дисплей заработал... правда с инверсией цвета.
Если инверсия цвета на дисплее (синус теста UTFT рисуется на белом фоне, а не на чёрном), то решить можно поискав другие инициализации на этот контроллер, либо посмотреть даташит на контроллер (к примеру на контроллер HX8352A это бит INVON в 0x01 регистре, менял этот бит в инициализации UTFT , и цвета инвертировались в правильные). Думаю что это связано с поворотом поляризационной плёнки на заводе, при изготовленнии матрицы для дисплея.
Если просто немного другие цвета на дисплее , то это также может быть из-за инициализации (полагаю другая гамма коррекция для другого питающего напряжения на дисплее ). либо режим цветности 65К вместо 262К ( для определённых контроллеров может устанавливаться пинами im0....im3,im4, если они выведены, либо полагаю также возможно дело в инициализации )
У меня такой же купленный в
http://ru.aliexpress.com/item/Free-shipping-3-5-inch-TFT-LCD-screen-modu...
заработал по 16-ти битной шине с параметром:
1UTFT myGLCD(1,38,39,40,41);Все пляски с 8 битами ни к чему не привели
Если не тяжко - вложи библиотеку?
Китайцы они такие падла китайцы! Ну что можно перепутать отправляя набор? Оказывается можно что угодно перепутать.
Дисплей мне пришел не 3,5'' а 3,6. На все вопросы продаван молчит. У них тоже праздники?
Дисплейчик нормально все показывает на вот такой строке, стандартного UTFT:
А вот тач не заводится, пробовал разные варианты, бестолку.
Хотя на стандартном UTouch_ButtonTest если нажать на Энтер тача появляется рамочка на цифре 4. Знаит тач живой?
Прицепил фоту, расписал где какие контакты цепляются к Ардуино Мега 2560.
Есть у кого нибудть соображения как изменить строку UTouch?
А то уже думаю кнопки отдельно прикручивать...каменный век :)
Если не тяжко - вложи библиотеку?
Китайцы они такие падла китайцы! Ну что можно перепутать отправляя набор? Оказывается можно что угодно перепутать.
Дисплей мне пришел не 3,5'' а 3,6. На все вопросы продаван молчит. У них тоже праздники?
Дисплейчик нормально все показывает на вот такой строке, стандартного UTFT:
А вот тач не заводится, пробовал разные варианты, бестолку.
Хотя на стандартном UTouch_ButtonTest если нажать на Энтер тача появляется рамочка на цифре 4. Знаит тач живой?
Прицепил фоту, расписал где какие контакты цепляются к Ардуино Мега 2560.
Есть у кого нибудть соображения как изменить строку UTouch?
А то уже думаю кнопки отдельно прикручивать...каменный век :)
Да, у меня такой же точь в точь - в нем используется ili9327 в 16ти битном режиме (ноги 22- 38) инициализация либо
Что одно и тоже тк в библиотеке определено ILI9327=1
Библиотеку взял последнюю с сайта http://henningkarlsen.com/electronics/library.php?id=52 ничего в ней не менял (кроме типа контроллера) там же лежит и utouch
для тача прописал правильно
но прежде чем использовать тач его надо откалибровать - там в примерах к UTouch есть Utouch Calibration запускаешь ее, калибруешь и получаешь на дисплее 3 числа, которые прописываешь в UtouchCD.h после этого тач работает нормально.
В TouchCalibration определил #define TOUCH_ORIENTATION LANDSCAPE
Правда проблема с шлейфом присутствовала и у меня - пришлось прогреть паяльником на 300 градусах подложив бумагу между паяльником и пленкой.
PS!!! 22 нога указана неверно - две верхние это 5 вольт, а 22 находится ниже (под той что указана на рисунке)
А кто нибудь анализировал как там включена подсветка? Есть ли токоограничивающие резисторы или светодиоды включены напрямую и через часов 100 непрерывной работы яркость упадет? Как ей управлять? Отключая 5 вольт идущие на 1117 или есть более удобный метод?
А кто нибудь анализировал как там включена подсветка? Есть ли токоограничивающие резисторы или светодиоды включены напрямую и через часов 100 непрерывной работы яркость упадет? Как ей управлять? Отключая 5 вольт идущие на 1117 или есть более удобный метод?
Про подсветку писал выше (на прямую на 3.3V) Я пошел более неудобным способом развел свою плату и поставил последовтельно резак на подсветку. PWM в контроллере вроде есть но он не выведен на шлейф LCD FPC-XT035-059A так что управление яркостью только вручную. Кстати если припаян FPC-XT035-059A то ни о каком настоящем 16 битном режиме можете и не мечтать, там только 8 bit на шлейфе остальные 8 висят в воздухе.
А кто нибудь анализировал как там включена подсветка? Есть ли токоограничивающие резисторы или светодиоды включены напрямую и через часов 100 непрерывной работы яркость упадет? Как ей управлять? Отключая 5 вольт идущие на 1117 или есть более удобный метод?
Про подсветку писал выше (на прямую на 3.3V) Я пошел более неудобным способом развел свою плату и поставил последовтельно резак на подсветку. PWM в контроллере вроде есть но он не выведен на шлейф LCD FPC-XT035-059A так что управление яркостью только вручную. Кстати если припаян FPC-XT035-059A то ни о каком настоящем 16 битном режиме можете и не мечтать, там только 8 bit на шлейфе остальные 8 висят в воздухе.
Насчет FPC-XT035-059A - как выяснить? На нем ничего такого не написано, если надо отдирать сам экран, то заморачиваться не буду. Пробовал я вывешивать на проводах только 8 бит - заставить работать в таком режиме я его не смог, только когда все 16 подключаешь он работает. А мне как раз актуальнее 8 бит чтобы меньше проводов тянуть и больше свободных ног у меги осталось. А такой вопрос - от 1117 питается только подсветка или еще что то? Если я ее отрежу и последовательно резюк повешу..
Да, надо отодрать чтобы прочитать. Маркировка дисплея пишут на шлейфе и или на самом дисплее.
Сам дисплей питается тоже от 3.3V поэтому резак надо садить в цепь светодиодов. На счет 16/8 режима. я в предлагаемой библиотеке только инициализацию контроллера ili9327 подсмотрел и как пинами управления дергать. так что что она там делает я не знаю. а вообще там может быть припаяно 2 видов дисплея так что кто знает может у вас 16 битный вариант LCD
Да, у меня такой же точь в точь - в нем используется ili9327 в 16ти битном режиме (ноги 22- 38) инициализация либо
В 16 битном режи режиме эта же сторока? (myGLCD(ILI9327, 38,39,40,41);) или другая?
Ты вроде пишешь, что ноги используются 22-38, значит должна быть другая?
Сейчас еще раз попробовал со строками:
Только первый экран появляется. И все! тач так и не хочет работать.
Если не трудно - выложи библиотеку и пример калибровки тача - может у меня руки совсем кривые?...
Может и у меня такая проблема? Можешь показать на фото в каком месте прогревал? Сам то ниразу этого не делал - лучше не рисковать, сделать так, как уже испробовано.
Эта ссылка ведет на УТФТ для
так и должно быть?
А то я скачиваю вот отсюда:
http://henningkarlsen.com/electronics/library.php?id=51
=========================
только что скачал и установил УТФТ и Утач по твоей ссылке - результат тот же - калибровка тача не идет дальше первой страницы...
Да, надо отодрать чтобы прочитать. Маркировка дисплея пишут на шлейфе и или на самом дисплее.
Сам дисплей питается тоже от 3.3V поэтому резак надо садить в цепь светодиодов. На счет 16/8 режима. я в предлагаемой библиотеке только инициализацию контроллера ili9327 подсмотрел и как пинами управления дергать. так что что она там делает я не знаю. а вообще там может быть припаяно 2 видов дисплея так что кто знает может у вас 16 битный вариант LCD
Только что оторвал дорогу от 1117, подсветка пропала, сам дисплей работает - так что у меня от него только подсветка работает, сам контроллер питается от 3.3 с меги (соседний вывод). Воткнул в разрыв 33 ома - светит, но мне кажется слабовато. Интересно какой номинальный ток подсветки ему нужен? Если не секрет то сколько у Вас стоит ом?
В 16 битном режи режиме эта же сторока? (myGLCD(ILI9327, 38,39,40,41);) или другая?
Ты вроде пишешь, что ноги используются 22-38, значит должна быть другая?
Сейчас еще раз попробовал со строками:
Только первый экран появляется. И все! тач так и не хочет работать.
Если не трудно - выложи библиотеку и пример калибровки тача - может у меня руки совсем кривые?...
в 16ти битном точно такая строка (myGLCD(ILI9327, 38,39,40,41);) тк ILI9327 это в utft.cpp соответствует 16ти битному контроллеру. 22-38 это шина данных, а 38-41 управляющие сигналы - они соответствуют тем что заданы в строке. И собсно если он показывает нормально, то UTFT ,больше не трогай - лучше не станет ))) Проблема сейчас с Utouch там строка инициализации
если с ней не работает, то скорее всего либо проблема со шлейфом, можно попробовать нажать пальцем на место где шлейф прикреплен к экрану, либо калибровочные константы очень смещены, либо забыл его переключить в landscape
константы у меня такие:
#define CAL_X 0x00264F1DUL
#define CAL_Y 0x0072CD4AUL
#define CAL_S 0x8018F0EFUL
что бы переключить в landscape надо в utouch_calibration.ino заменить
#define TOUCH_ORIENTATION PORTRAIT
на #define TOUCH_ORIENTATION LANDSCAPE
И фотка где и как прогревать паяльником:
Блин, свет отрубили...попробую как включат.
Isurin, если не трудно-скинь библиотеку Uotuch, фиг знает, может я кривую юзаю...
Воткнул в разрыв 33 ома - светит, но мне кажется слабовато. Интересно какой номинальный ток подсветки ему нужен? Если не секрет то сколько у Вас стоит ом?
15 Ом. В моем 6 светодиодов, я подбирал чтобы ток был 18 - 20 мА на брата. На прямую ток был 180 мА тоесть 30мА на каждого. Но в моем случае можно было на каждый поставить по резаку, но я чето решил что сойдет и так. Просто когда светодиоды в паралель это не значит что через них протекает одинаковый ток, так как характеристики у них разные. Да и разницы в яркости особо не видно что 20 что 30мА.
Кстати контроллер дисплея может работат и на пониженном напряжении вопрост только на сколько стабильно. Смотрите внимательно может все таки не от меги он запитан.
Лови, https://yadi.sk/d/aQXWwEe9drHgT
соответственно не забудь #define TOUCH_ORIENTATION заменить
[
15 Ом. В моем 6 светодиодов, я подбирал чтобы ток был 18 - 20 мА на брата. На прямую ток был 180 мА тоесть 30мА на каждого. Но в моем случае можно было на каждый поставить по резаку, но я чето решил что сойдет и так. Просто когда светодиоды в паралель это не значит что через них протекает одинаковый ток, так как характеристики у них разные. Да и разницы в яркости особо не видно что 20 что 30мА.
Кстати контроллер дисплея может работат и на пониженном напряжении вопрост только на сколько стабильно. Смотрите внимательно может все таки не от меги он запитан.
Спасибо за информацию сейчас попробую впаять 15-20 ом, контроллер питается по пину где 3.3 тк отключаешь его, подсветка остается, а изображение пропадает.
Не выходит блин ничего.
#define TOUCH_ORIENTATION изменил. Координаты в файле (UTouchCD.h) пробовал и стандартные и от isurin.
Контакты, как на фото выше прогревал - до легкого пожелтения бумаги.
Калибровочный тест не запускается. Попробовал запустить кнопочный тест, результат тот же - загружается экран с кнопками. Когда первый раз нажимаешь на экран вокруг кнопки "Clear" появляется красненькая рамочка. И все. Больше тач ни на что не реагирует. На фото видна эта рамочка.
Это все? Тач мертвый? Думаю, если так, то открывать спор с продаваном...
Не выходит блин ничего.
MadG, ну возьми мультиметр и проверь сопротивление тача, и изменение , в инете описана проверка. За одно проследишь куда дальше он идёт.
MadG, ну возьми мультиметр и проверь сопротивление тача, и изменение , в инете описана проверка. За одно проследишь куда дальше он идёт.
Не знал, что в такие шлейфы можно с мультиметром... Во общем тестировщик из меня еще тот :)
Сам экранчик отодрал от липучки, померил сопротивление по дорожкам шлейфа (на картинке указал где 1, а где 4):
Как подсказывает интернет, то нормальные значения.
Попробовал прозвонить на ножки - а вот тут засада. Толком не знаю что и где искать. Попробовал звонить первую дорожку - сопротивление показывает только на ножках +5 и (по моему) земля. И то сопротивление показывает около 950Ом. Так что бы прямой выход на ногу - не нашел. Думаю просто не знаю как искать.
На какой ноге мне поискать первую дорожку? Каким, примерно, должно быть сопротивление?
Сейчас еще раз проверил - к шлейфу тача подключил крокодил, между дорожкой и крокодилом на 0 получилась 3 дорожка.
Попробовал тупо по всем контактам пройти - 800-900 Ом только получил на ножках +5 и земля.
В каом месте можно шлейф еще проверить?
Сейчас еще раз проверил - к шлейфу тача подключил крокодил, между дорожкой и крокодилом на 0 получилась 3 дорожка.
Попробовал тупо по всем контактам пройти - 800-900 Ом только получил на ножках +5 и земля.
В каом месте можно шлейф еще проверить?
Шлейф на разъем не выводится, он подключен к 2046 http://www.ti.com/lit/ds/symlink/tsc2046.pdf
а она уже выведена на разъем (2-6) через две сборки, посмотри внимательно, может 2046 криво впаяна или непропаяна.
============
Сейчас померял сопротивление между 2 и 3 ногой 2046 (x+ y+ ) без нажатия там больше 200 килоом, при нажатии 500-800 ом
между 4 и 5 ногой (x- y-) так же - без нажатия больше чем 200к, при нажатии сотни ом. Если у тебя так же - смотри что бы 2046 была запаяна ровно, без сопель, китайцы это любят. и проверь соединения с 2046 через резисторные сборки на разъем - у меня выведено так:
2 пин на разъеме (там где цифра 2) меги 2560 это irq
3 - DOut
4 - DIn
5 - CS
6 - Dclk
и прозвони саму резисторную сборку
Сейчас еще раз проверил - к шлейфу тача подключил крокодил, между дорожкой и крокодилом на 0 получилась 3 дорожка.
Попробовал тупо по всем контактам пройти - 800-900 Ом только получил на ножках +5 и земля.
В каом месте можно шлейф еще проверить?
А сопротивление меняется, если по тачу пальцем водить туды-сюды ?
На моём сопротивление меняется, от максимума (около 850) почти до нуля, правда на моём контроллера нет.
Отсоединил дисплей от Меги, попробовал мерять сопротивление - меняется.
Сейчас померял сопротивление между 2 и 3 ногой 2046 (x+ y+ ) без нажатия там больше 200 килоом, при нажатии 500-800 ом
В моем случае, на дисплее, отсоединенном от Меги, между 2 и 3 без нажатия 688Ом, если нажать 357Ом.
Именно Ом, не килоОм...херня какая то у меня а не тач...
:) как ты так быстро все меряешь? Я вдвоем с дочей, в четыре руки...и то хреново, ничего не видно, к щупам мультиметра прикрутил иголки, что бы хоть как то попдать в эти малюсенькие конткты...
В моем случае, на дисплее, отсоединенном от Меги, между 2 и 3 без нажатия 688Ом, если нажать 357Ом.
Именно Ом, не килоОм...херня какая то у меня а не тач...
:) как ты так быстро все меряешь? Я вдвоем с дочей, в четыре руки...и то хреново, ничего не видно, к щупам мультиметра прикрутил иголки, что бы хоть как то попдать в эти малюсенькие конткты...
Только мерять надо так что бы ничего не прикасалось к экрану, если он лежит на столе то показания могут быть не точными. Но если в свободном положении там 600 с лишним ом - то видимо он где то нажат (возможно криво приклеен или еще какая то хрень)
Сейчас залил калибровку и попробовал включить экран предварительно нажав на него. Получилась картина как у тебя на тач не реагирует. Но если отпустить то все ок. Скорее всего криво приклеен тач и где то замкнут.