Arduino и дисплеи от сотиков мобильных телефонов

forfrends
Offline
Зарегистрирован: 24.02.2015

     

Вместо одного резистора на 10 кОм у меня стоят 2 по 20 кОм паралельно.

Подключение: IM0:"+", IM1: "-". 

D7-D0 22-29.... Только сейчас сообразил что пины инверсно подключены. :( Перевернул, Прочитал читалкой:

Дисплей как и прежде: только мигает и меняет уровень яркости. А не может ли быть что бы линия данных и правляющие пины стоят наоборот, перепутаны местами?

Если IM0 и IM1 подключить к  "+" то читалка выдает следующее:

 

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

forfrends, Ну вот, теперь из фото понятно , почему вычитывается лабуда всегда разная . ! не надо так доверять этим макеткам и проводам. Несколько раз уже попадался на этом. И боюсь спросить , где же RD , и почему на него подана лог1 ? или это RST . И резисторы с цветной маркировкой выглядят как 10к , параллельно , в итоге это 5к - но это мелочи по сравнению с первыми двумя находками. GND от ардуино то хорошо что сдублировали на нижнюю линию макетки , так это тогда не имеет смысла раз верхнюю с нижней линией не сдублировали. 

 Чтобы замыкать неиспользуемые 8бит шины данных на GND напрямую, надо быть уверенным 1.что вы включили с помощью IM.. именно режим 8бит, и 2.взяли именно правильные 8 бит. Иначе получите КЗ контроллера, при опросе на выходах он будет выдавать иногда лог1 +3.3в , а вы их на землю закоротили. Так нельзя. Если и играетесь бездумно с IM..  , и пытаетесь вычитывать с контроллера, то садите только через резисторы на землю.

И осторожно так с такими макетками для дисплеев , дисплей д.б. жестко закреплен к такой макетке. Порвать иль переломить шлейф за нефиг делать, в вашем случае с натыкиванием проводов. В таких случаях удлините эту макетку и жестко фиксируйте дисп чтоб не повредить шлейф. И не надо его так сильно выгибать наизнанку , это тоже можно сказать прощай дисп, вес то у него приличный. Возможно этот дисп с такими манипуляциями уже не жилец. Посмотрите как croc19 подходит к этому вопросу - вытравливает платы. Посмотрите по теме какие макетки делаю , по времени почти также с паяльником перепаять провод , как и переткнуть провод на вашей макетке. Зато совершенно надежный контакт.. Эмаль провода можно купить или под рукой можно ковырнуть из двигателей старых кассетных магнитофонов,... и разных цветов попадаются. . С трансформаторов не особо пойдет , там они с двойным лаком , просто от нагрева паяльника так просто не лудятся , надо зачищать. Чип резисторы в местных магазах проще купить , 100шт около 10-20руб. Макетки 7x9 и пины с али. Иногда даже так дисп и оставляю на макетке, делаю новую для следующего, так уже штук 10 так и оставил нераспаянными вместе с диспами, на случай проверки перед сотворением какойнить поделки. к примеру вот от vivaz u5 u8:

Tvicks
Offline
Зарегистрирован: 11.05.2017

Доброе утро. Slider у меня собрана платка с делителями стояли 470 ом и 1к напряжение было 3.1 вольта переделал на 10к и 20к как вы писали раньше сейчас 2.8 вольта и стоит для питания дисплея lm1117 выставил напряжение 3 вольта. Да  инит ili9488 не пробовал и от сони эрика VIVAZ U5 U8 , вы об этом. Что мне до этого писали пробовал раздвоение картинки так и оставалось.

Вот моя платка. Сегодня попробую эти иниты. Да после перепайки делителя выдала читалка:

 

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

Tvicks, согласно прошлым мессагам с 10й страницы,   попробуйте дисп от GT-S5230 (их должно быть полно у народа и особо в ремонтах), раз коннектор установлен. Чтот-конечно странно что от GT-S5233 не завелся, в инете тож встречал что они немного разные. 

можете разместить инит от GT-S5230  ? глянуть, чтоб долго в сети не искать.

Tvicks
Offline
Зарегистрирован: 11.05.2017

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

У GT-S5230 и GT-S5233 разные коннекторы, их друг с другом не заменить надо делать под него платку.

Да чуть не забыл, есть онлайн калькулятор для делителей напряжения, сопротивления можно подбирать там, вот ссылка: http://www.joyta.ru/7328-delitel-napryazheniya-na-rezistorax-raschet-onlajn/

Инит под ili 9488 побовал все так же и осталось. Ссылка на дисплей s5230: https://developer.mbed.org/teams/GraphicsDisplay/code/UniGraphic/docs/tip/S6D04D1_8cpp_source.html

ywor
Offline
Зарегистрирован: 16.01.2017

Tvicks пишет:

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

вот немного инфы есть https://sites.google.com/site/cvssav/avr/mini-oscillograf-atxmega32a4-display-s5230

vremmenniy.akkaunt
Offline
Зарегистрирован: 05.09.2017

хочу спросить?

вот есть матрица от ниссана с 30пиновым штекером

как подключить?

croc19
Offline
Зарегистрирован: 17.02.2017

Если к ардуино, то лучше не подключать. Жутко хлопотно и работать будет очень медленно.

 

forfrends
Offline
Зарегистрирован: 24.02.2015

На некоторых форумах есть смайлы, та вот здесь их не хватает... хотел поставить смайл "застрелиться"...

Мучился я долго с дисплеем (пост №594)... спаял небольшую плату-переходник с резисторами:

Но все результаты были неутешительными... Как оказалось, я неправиль считал номера пинов данных. У меня просто вылетелоиз головы что пинов 18! а не 16... и я вместо того что бы подключить пины 0-7 подключал пины 2-9... Исправил. Читалка внятно выдала BF = 00 02 04 94 81 FF 00 00. Дисплей завелся на минимальном ините:

Лог читалки:

Дисплей завелся не корректно, изображение смещено, отзеркалено, и похоже повернуто на 90 градусов. Теперь осталось нормально инит подобрать. Я с Adafruit не работал и совершенно не снаю как ее использовать. Мне было бы не много удобнее с UTFT. Но там нет 8 бит. Надо бы разобраться как и что...

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

forfrends, о.. ,норм, победили дисп.  как и полагалось что-то с подключением напортачено было. 

с чип резисторами уже прикольней, красивше и надежней. Лог читалки от ili9481 - хорошо.

откуда вы взяли что в UTFT нет 8бит?  есть там всё! в теме много приводил примеров на базе ili9327 turbo. если будет снова какой затык, спрашивайте. Если будете проект собирать на меге, то пользуйте все 16бит (IM.. глянете по даташиту), - чутка пошустрее будет, на стандартном UTFT будет работать. пример UTFT_Demo_480x320 , вызов оставить там тот же  UTFT myGLCD(CTE32HR,38,39,40,41);   это равно как  и UTFT myGLCD(ILI9481,38,39,40,41);  , В memorysaver.h лишниих disable раскоментить.   И на RD не забудте подать + .

либу UTFT 8бит _ ардуина мега _  PORTA(пины22-29) _ ili9488 для подобных инитов давал здесь http://arduino.ru/forum/apparatnye-voprosy/35-tft-lcd-krasnyi-megovskii-mega-2560-r3-resheno-kak-reshit-drugie#comment-204256 , чтотолько вам нужно , это в файле UTFT\tft_drivers\ili9327_8\initlcd.h

все стереть  и забросить инит от ili9481

У адафруита тоже есть ILI9481 , достаточно загуглить  adafruit ili9481 .

 

 

forfrends
Offline
Зарегистрирован: 24.02.2015

Спасибо, дисплей нормально инициировался. Немного позже выложу подробное описание.

-=-=-=-=-=

Продолжая тему по предыдущему дисплею:

Подключал так:

Читалка выдала следующее:

Но дисплей никак не откликнулся. 

Попробовал инит UTFT myGLCD(HX8352A, - результат тот же. В читалке написал identifier = 0x7575; но и это не помогло.

Стал смотреть распиновку. С IMx что-то не понятное. По даташиту на HX8352A задающие пины (P68, BS2,BS1,BS0) заходят ПЕРЕД Ресетом и пинами D17,D16... Те же контакты, которые я принял за управляющие (Пин 9 и 10) заходят в кристалл после управляющих пинов RS,CS,GND. В кристалл перед Ресетом заходят GND, +, GND.

    

В общем не понятно возможно ли вообще его перевключить на 8 бит и в каком режиме он работатет сейчас.

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

forfrends, в каком режиме? 

Методу предлагал ранее:  берете белый светодиод или любой другой но с резистором 300-500ом  . анодом на +3.3в   , катодом на DB8....DB15..DB17 , и запускаете читалку . Если светодиод будет подмигивать (именно только когда она опрашивает регистры) , значит контроллер дисплея выдает , на опросы читалки, лог.0  и в старшие разряды DB8... DB16...  -  отсюда можно сделать соответствующий вывод в какой он битности 8/9/16/18  . 

и в этом дисплее , пробуете это в разных вариациях  пинов 8 и 9 шлейфа дисплея. (только через 10к , а то вдруг это какието выхода, ибо что-то  странно, согласно даташиту , IM (BS) находятся с другой стороны)

// подрисуйте на фотке шлейфа, примерно как в ссылках comment-302671 , будет легче сориентироваться где примерно IM (BS) . Фоткать лучше под увеличительным стеклом или цифровиком. Со шлейфа можно немного содрать черного резин. герметика.  Только тогда по дорожкам можно будет и проследить.

/////

forfrends пишет:

....

Попробовал инит UTFT myGLCD(HX8352A, - результат тот же.  

.....

Ну как-бы HX8352A там как раз по умолчанию 16бит (если там силком не переключать битность на 8 , но для этого и дисп длжен быть в 8бит)

это на крайняк уже, можете подключить полноценно все 16бит на Мегу, и только потом уже использовать пример UTFT .  

forfrends
Offline
Зарегистрирован: 24.02.2015

Метод научного ты... в смыле светодиода показал что дисплей работает в 8-мибитном режиме (D0-D7)

Но тест UTFT (подправил UTFT.cpp) выдает нечто другое:

Может ли быть что синий цвет это не 16 бит а неправильный инит?

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

forfrends пишет:

..... (подправил UTFT.cpp) ....

Может ли быть что синий цвет это не 16 бит а неправильный инит?

при этом 8 и 9 пин комбинировали через резисторы? (напряжение они не засаживают, иначе это выхода)

говорил вам прорисовать на фото дорожек на стекле в шлейф.

Зачем и что правили в UTFT.cpp? (исходя из предположения что дисп 8бит, да и либу надо в 8 ?) ,  

вам советовал подключить все 16бит дисплея и запустить некопанный UTFT , вы это сделали? каков результат?  ( подключение разрисовано в \Arduino\libraries\UTFT\Documentation\UTFT_Requirements.pdf ) //обычно если в шлейфе выведено 18бит, то он по умолчанию б.д. на эти 16. 

синий цвет возможен если дисплей 16бит , а библиотека настроена на 8. (специально так проверил в comment-292783 , но это не для всех контроллеров)

forfrends
Offline
Зарегистрирован: 24.02.2015
В  UTFT.cpp:
Было: byte dtm[] = {16, 16, 16, 8, 8, 16, 8, SERIAL_4PIN, 16, SERIAL_5PIN, SERIAL_5PIN, ....., 
Заменил: byte dtm[] = {16, 16, 16, 8, 8, 16, 8, SERIAL_4PIN, 8, SERIAL_5PIN, SERIAL_5PIN,
 
Было: display_transfer_mode = dtm[model];
Заменил: display_transfer_mode = 8;
 
 8 и 9 (точнее 9 и 10) пины ни на что не влияют.
Подключил все 16 бит. Дисплей нормально все отображает... Но в качестве 16 бит я даже незнаю куда его применить... столько контактов.
Можно ли как-то переназначить пины в библиотеке?
forfrends
Offline
Зарегистрирован: 24.02.2015

В наличии есть Атмега32 вот бы к ней подключить по 16 битам, но как пины перекинуть?

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

а что в меге пинов не хватает?  переназначить проще на любые цельные порты.

так предложил же вам расзрисовать примерно дорожки как в page4    page=4_, можно найти эти IM . Если снаровка есть , можно перерезать их иголкой и припаять куда надо.

Если надо меньше железку, то подключайте все 16бит диспа к ардуине нано, мини .

куда  см. - \Arduino\libraries\UTFT\Documentation\UTFT_Requirements.pdf   . 

на не копанной либе , останутся вам свободные аналоговые A6 A7 . для проектов логгеров хватит. (а вот на леонарде пинов не хватат)

и 4 пина в сумме свободныхможно и I2C уже использовать  - если выкинуть из либы CS , RESET . (здесь в теме делал такую UTFT 8бит ili9488 comment-192385 , а для 16бит надо ее подправлять) ,  расширители, регистры (параллельно D0-D7 можно будет подключаться , входа-выхода будут свободные  , тоже в теме делал comment-146701 )  и много чего, было бы желание.

// можете еще попробовать ускорить рисование, выкинуть возможно лишние команды при рисовании пикселей

закоментировав строки в \Arduino\libraries\UTFT\tft_drivers\hx8352a\setxy.h

01 case HX8352A:
02  //     LCD_Write_COM_DATA(0x02,x1>>8); //
03     LCD_Write_COM_DATA(0x03,x1);   
04 //      LCD_Write_COM_DATA(0x04,x2>>8); //
05     LCD_Write_COM_DATA(0x05,x2);
06     
07     LCD_Write_COM_DATA(0x06,y1>>8);
08     LCD_Write_COM_DATA(0x07,y1);
09  //     LCD_Write_COM_DATA(0x08,y2>>8); //
10 //      LCD_Write_COM_DATA(0x09,y2);    //
11     LCD_Write_COM(0x22);     
12     break;

comment-93736

 

forfrends
Offline
Зарегистрирован: 24.02.2015

Мега у меня одна. Ее использую для тестов. Ардуины закончились, остались в наличии только голые камни: Аттини2313, Атмега8 и Атмега32.

По даташиту пины, переключающие режим, выходят из кристала Перед Ресетом, потом идет линия (+). Посмотрел через лупу - все 4 управляющьх пина (P68, BS2,BS1,BS0) сразу возле кристала объеденены, а дальше к GND. Это "16-bit bus interface,80-system, 65K-Color". Для переключения в любой другой режим пины должны быть рассоеденины. А это не возможно. Все фото приводил выше. В общем, только 16 бит. Печально.

Подключить к Меге32 было бы лучше всего. Но UTFT выдает "Unsupported AVR MCU!", Адафруит: "Board type unsupported / not recognized".

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

forfrends пишет:

Мега у меня одна. Ее использую для тестов. Ардуины закончились, остались в наличии только голые камни: Аттини2313, Атмега8 и Атмега32.

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

\\ себе такие нанки для поделок заказал по 10шт, на ооочень долго хватит. https://ru.aliexpress.com/item/Freeshipping-10PCS-LOT-Nano-3-0-controller-compatible-with-arduino-nano-NO-CABLE/1511622386.html

и с жирными стабилизаторами https://ru.aliexpress.com/item/20-pcs-FREE-SHIPPING-with-tracking-Nano-V3-ATmega328-CH340G-Micro-USB-pin-NOT-soldered-Compatible/32751845925.html (жаль по 10шт не торгует прод.)

forfrends пишет:

По даташиту пины, переключающие режим, выходят из кристала Перед Ресетом, потом идет линия (+). Посмотрел через лупу - все 4 управляющьх пина (P68, BS2,BS1,BS0) сразу возле кристала объеденены, а дальше к GND. Это "16-bit bus interface,80-system, 65K-Color". Для переключения в любой другой режим пины должны быть рассоеденины. А это не возможно. 

Тогда, да, невозможно .

 

forfrends пишет:

Подключить к Меге32 было бы лучше всего. Но UTFT выдает "Unsupported AVR MCU!", Адафруит: "Board type unsupported / not recognized".

ну да, походу трабл с поддержкой леонарды. остается атмега8 , но заносить ее в поддержку UTFT , та еще конитель.  Заказывайте ардуинки впрок .

forfrends
Offline
Зарегистрирован: 24.02.2015

Интересно, а возможно ли подключить дисплей через IIC/I2C переходник. Вот такой, на пример: http://ali.pub/1tdylm

croc19
Offline
Зарегистрирован: 17.02.2017

Молодец forfrends.

Подключить можно, но в несколько раз упадет скорость вывода. А начать програмировать АВР без ардуины

не хочешь попробывать. Напрямую к меге32 подключить.

forfrends
Offline
Зарегистрирован: 24.02.2015

Спасибо. croc19, да вот знаний не хватает для того что бы подключить на прямую, без Ардуино ИДЕ.

Есть ли где-то информация как сделать подключение через переходник? Скорость не играет роли.

croc19
Offline
Зарегистрирован: 17.02.2017

Ардуино имеет библиотеку для работы с этим переходником. Подключаешь два таких переходника к ардуине по IC2.

Выходы переходника соединяешь с шиной данных дисплея. D0-D15.  Шину управления дисплеем напрямую к ардуине.

Загоняешь данные в переходник на выход и командуешь дисплеем по шине управления.

 Информации по этому переходник море. Возможно есть и подключение к TFT. Хотя обычно его к 1602 подключают.

Но разницы никакой.

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

forfrends, конечно попробуйте на I2C , потом покажете.  Но это будет трындец по скорости.      

потом поставте парочку 74HC595 и сравните, используя аппаратный SPI , скорость должна быть уже приемлемая  СК/2    т.е. 8МГц,    грубо 32 такта проца потребуется чтобы передать 16бит.

потом попробуйте один параллельный регистр , для раздваивания 8бит . 

croc19
Offline
Зарегистрирован: 17.02.2017

А самое правильное начать изучать СИ на примере связки атмеги32 и дисплея.

Tvicks
Offline
Зарегистрирован: 11.05.2017

Добрый день ребята. Все я добил дисплей от Samsung GT-S5233, заработал как надо.Спасибо всем кто помогал. Вот инит :

Может кому и понадобится. Подменял в UTFT ILI9327_8 разрешение 400х240. Работает нормально без раздвоения картинки. Дисплей 5233 и 5230 как писали на других сайтах все таки одинаковые только разница в размерах. Теперь бы в Adafruit надо как то запихать, с UTFT все таки попроще для меня.

Tvicks
Offline
Зарегистрирован: 11.05.2017

Добрый день. Вчера принесли сотовый на запчасти sony ericsson k800. Собрал платку для поключения к ардуино. Распиновка:

Питание дисплея 3,24-2,8в , 4-1,8в. Читалка ничего не дала:

Дисплеи одинаковые от k790, k800,k810. Два контроллера используется R63400A1 и Cyndi - Toshiba JBT6K71. Нашел только прошивку сотового:

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

Mrshilov
Offline
Зарегистрирован: 28.06.2016

 SE-K790, K800, K810, K830: 

 

Tvicks
Offline
Зарегистрирован: 11.05.2017

Спасибо но как это приделать к UTFT или Adafruit? В программировании я полный ноль, лет 15 назад надо было начинать изучать программирование. Сейчас пытаюсь, но это жалкие потуги.

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

 Tvicks, пока просто запустите данный скетч.  и где нашли инит от Samsung GT-S5233 ? сделали какой проектик на нем, фотку? 

по UTFT и адафруит , гляньте тему , частенько подменял найденные иниты из под STM32 на ардуину.  не раз писал что и как делать .

 

1. в кратце по UTFT - искать в папках UTFT\tft_drivers    setxy.h  ,  чтоб рисовалось через те же регистры 

256  write_command(0x0201);  
257  write_data(row);      
258  write_command(0x0200);  
259  write_data(col);      
260  
261  write_command(0x0202);

соттветственно используете вызов с этим контроллером UTFT myGLCD(.....

 

И вот еще делал по китайской нокиа через  command(0x0201);  command(0x0200); command(0x0202);   :

#comment-90767

#comment-92532

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

 

2.  В адафруите в Adafruit_TFTLCD.cpp , тож где-то встречал рисование через похожие 16ти разрядные регистры.

можете подсунуть на базе ILI932X

вместо названия регистров вставляете то что в  write_command(....);  , 

вместо последующих данных вставляете то что в   write_data(....);  

и поподменять адреса в строках

1writeRegister16(0x0020, x);
2writeRegister16(0x0021, y);

ну и принудительно включите что у вас  uint16_t identifier = 0x9325; //  tft.readID(); 

мож еще что-то , адафруит под рисование через подобные регистры 0200 0201  0210 0211 0212 0213  не переделывал.

Tvicks
Offline
Зарегистрирован: 11.05.2017

Slider, инит от Samsung GT-S5233 нашел на сайте : http://vrtp.ru/index.php?showtopic=1120&st=3750 , Сообщение: # 689962. Но пришлось самому маленько подкоректировать, сначала была тоже  ерунда. А теперь как полагается вот фото:

Хотел попробовать на нем собрать пультоскоп, но там надо адафруит. Сижу пытаюсь переделать под Adafruit_ILI9341, но пока не удачно.

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

какой именно Adafruit_ILI9341 ? SPI или 8бит версию?   (в пультоскопе вообщето использовалась Adafruit_TFTLCD  как и в читалке)
если SPI как в nokia5110, на нем никак не заведете этот дисп, дисп не SPI , а 8битный.  
если 8бит , то там можно , киньте ссылку от куда именно либу берете 

// ну да читал ранее про S5230 на  http://vrtp.ru/ , там в ините S5230 как раз комментировали про 2 экрана

	LCDCommand(0xF2);
	LCDData(0x10);      //14     def 16
	LCDData(0x10);      //14     def 16
	LCDData(0x01);    //def
	LCDData(0x08);    // 03      def 08
	LCDData(0x08);    // 04      def 08
	LCDData(0x08);    // 03      def 08
	LCDData(0x08);    // 04      def 08
	LCDData(0x00);
	LCDData(0x06);         // 04      def00   !!!!!  2экрана

значит от S5230 подошёл ?  изменили только в  регистрах 0x3A  и  0x36  .  
чтото цвета у вас неправильно , бит BGR надо вернуть на место в регистре 0x36

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

.

Tvicks
Offline
Зарегистрирован: 11.05.2017

Ну поторопился  да поменял в регистре 0х36 вот теперь все в норме.

Да хотел 8 битную версию попробовать сделать, тормознул не увидел что на ILI9341 SPI. Хотел попробовать собрать версию пультоскопа  : http://arduino.ru/forum/proekty/pultoskop-na-arduino-27mgts . Схемное решение понравилось : https://sites.google.com/site/cvssav/avr/mini-oscillograf-atxmega32a4-display-s5230 , но так как пока нет микросхем попробую собрать что попроще. Я как понимаю под пультоскоп на инит SPFD5408 Adafruit мой инит не переделать?

Tvicks
Offline
Зарегистрирован: 11.05.2017

Добрый день. Спасибо ребятам огромное, особенно Mrshilov и Slider , спецы что и говорить. Дисплей от sony ericsson k800i запустился, но картинка не по центру смещено в левую сторону. Вот мой инит переделанный, попробую теперь выставить по центру. Инит еще сырой надо подправлять:

Конечно я наверно что то здесь накуролесил, но он хоть начал показывать. Да уж после долгих попыток так и не получилось выставить картинку по центру, даже не знаю что еще поменять в регистрах.

Mrshilov
Offline
Зарегистрирован: 28.06.2016

Вот даташит на JBT6K71 - http://rgho.st/7p7xQ5X77

Он ведь 256х352 и, вполне возможно, видимая область начинается не с нуля и нужно к координате Х прибавлять 8 или 16.

Еще как вариант - регистр  6, там есть настройка размера по ширине, может она как-то влияет на центровку.

Тот экземпляр (китаец), что я тестировал, совсем не работал  в режиме "ланшафт". В режиме "портрет" с этим инитом все было нормально. Впрочем, это обычное дело для китайских клонов - они их делают специально для мобил.

Tvicks
Offline
Зарегистрирован: 11.05.2017

Спасибо попробую. А разрешение ставил даже 240х400 все равно картинка смещена. А может быть из за того что я не знал как прописать эти строки и не прописывал их, и картинка сместилась:

    write_command(0x0000);
    delay(50);
 write_command(0x0000);
    delay(50);
 write_command(0x0000);
    delay(50);
slider
Offline
Зарегистрирован: 17.06.2014

Tvicks пишет:

Спасибо попробую. А разрешение ставил даже 240х400 все равно картинка смещена. А может быть из за того что я не знал как прописать эти строки и не прописывал их, и картинка сместилась:

    write_command(0x0000);
    delay(50);
 write_command(0x0000);
    delay(50);
 write_command(0x0000);
    delay(50);

теперь то всё норм?  дак не надо было викидывать с инита лишнее. В примерах что приводил , там к примеру была одиночная LCD_Write_COM16(0x0202);  вот и надо было  write_command(0x0000); записать как LCD_Write_COM16(0x0000);  

и еще в траслируруемом вами инитом #635 из оригинала #628 ,  пропущена 

 
072  delay(50);

 как собрали на сониэриковском диспе? фотку потом приложте глянуть.

про вкорячивание инитов в адафруит , это естественно возможно , только время надо на это. Есть в сети еще много либ адафруита под разные контроллеры (в темах про TFT  2.4 много), можно подъискать в который очень похож по 16ти битной адресации и  легче встроить в него будет.  Ну или взять имеющийся адафруит и потратить пару часиков...полдня времени. имея дисп это можно сделать, чтоб тут же проверять.

// на будущее про смещение картинки на хитрож..х диспах, в теме в одном из сообщении собирал список нескольких способов.

//// проведите еще эксперимент , использовать setxy не 

01 // ILI9326
02     LCD_Write_COM16_DATA16(0x0200,x1); // GRAM Address Set (Horizontal Address) (R0200h)
03     LCD_Write_COM16_DATA16(0x0201,y1); // GRAM Address Set (Vertical Address) (R0201h)
04     
05     LCD_Write_COM16_DATA16(0x0210,x1);   // Window Horizontal RAM Address Start (R210h)
06     LCD_Write_COM16_DATA16(0x0212,y1);   // Window Vertical RAM Address Start (R212h)
07     LCD_Write_COM16_DATA16(0x0211,x2);   // Window Horziontal RAM Address End (R211h)
08     LCD_Write_COM16_DATA16(0x0213,y2);   // Window Vertical RAM Address End (R213h)
09     
10     LCD_Write_COM16(0x0202);

а на  основе ориг. инита

256  write_command(0x0201);  
257  write_data(row);      
258  write_command(0x0200);  
259  write_data(col);      
260  
261  write_command(0x0202);   

т.е.  без 0210,0212,0211,0213 , получается очередность:  

 LCD_Write_COM16_DATA16(0x0201,y1);  LCD_Write_COM16_DATA16(0x0200,x1);  LCD_Write_COM16(0x0202);

и еще так попробуйте:

 LCD_Write_COM16_DATA16(0x0200,x1); LCD_Write_COM16_DATA16(0x0201,y1); LCD_Write_COM16(0x0202);

Если заработает, то естественно вырастет скорость рисования без "лишних" команд.

Tvicks
Offline
Зарегистрирован: 11.05.2017

Спасибо проглядел delay(50), да теперь все прописал в ините, но толку нет. Поэксперементировал с setxy ничего не дало. Разрешение 240х320

Разрешение 240х400

И плата с раъемом и двумя LM1117 и повышайки на MC34063 для подсветки.

Пока эксперименты с регистрами не дали толку. Буду дерзать дальше.

Mrshilov
Offline
Зарегистрирован: 28.06.2016

Тут, видимо, выравнивание по другому краю - сдвиг примерно 32 пикселя. Попробуйте развернуть на 180° - т.е. реверс по Х и Y.

А вообще, я предупреждал, "китайцы" в режиме "ландшафт", как правило, глючат.

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

а что, норм развели и подключили :) , красиво, надежно и компактно  :)

фото и симптомы 1 в 1 с  #40 решил на первой странице . 

самое быстрое решение - это в своем скетче , в операторах вывода  приписать к координатам X , число  +80 .  это оказалось довольно таки просто.

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

// попробуйте измененный на +80 тестовый скетч , ( только в нем UTFT myGLCD(ITDB32S,38,39,40,41); замените на свой .   по UTFT.cpp  не припомню что надо  disp_x_size = 239;     disp_y_size = 319;         иль   disp_x_size = 239;     disp_y_size = 399;  , пробуйте)

///// по изменениям в  setxy.h  , имел ввиду не решение сдвига, а решение увеличения скорости , помогает ли.

Tvicks
Offline
Зарегистрирован: 11.05.2017

Спасибо, да с этим скетчем картинка ставится как надо. Но меня смущает что в ините первые 10 регистров не реагируют на изменения вообще ни как. С  LCD_Write_COM16_DATA16(0x0010, 0x0012); только начинает реагировать на изменения, меняется цвет. Инит на к800 как я понял взят с прошивки сотового, все один в один. Пробовал подставлять инит от JBT6K71, затыкался вообще, кое как оживил. Пока шарился по интернету  нашел список дисплеев и иниты к ним может кому и понадобится,

 

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

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

вот тож по теме в сети попалось , хорошая весчь :)

продолжение* адафруита , использует графику адафруита , и есть поддержка графики UTFT . Работает быстрее.

MCUFRIEND_kbv Library for Uno 2.4, 2.8, 3.5, 3.6, 3.95 inch mcufriend Shields

* LCD_ID_readreg.ino 

* MCUFRIEND_kbv-2.9.3.zip 

на гитхабе  https://github.com/prenticedavid/MCUFRIEND_kbv

списочек поддерживаемых контроллеров , инитов

It currently supports UNO shields with "mcufriend.com" pcbs with controllers:
HX8347-A 240x320  ID=0x8347 #define SUPPORT_8347A *** Untested ***
HX8347-D 240x320  ID=0x4747 #define SUPPORT_8347D
HX8347-G 240x320  ID=0x7575 #define SUPPORT_8347D
HX8347-I 240x320  ID=0x9595 #define SUPPORT_8347D
HX8352-A 240x400  ID=0x5252 #define SUPPORT_8352A
HX8357-B 320x480  ID=0x8357 (shares init with 8357-D)
HX8357-D 320x480  ID=0x9090 (ID has changed from 0x8357)
HX8367-A 240x320  ID=0x6767 #define SUPPORT_8347D
ILI9225  176x220  ID=0x9225 #define SUPPORT_9225 
ILI9226  176x220  ID=0x9226 #define SUPPORT_9225 
ILI9302  240x320  ID=0x9302 
ILI9320  240x320  ID=0x9320
ILI9325  240x320  ID=0x9325
ILI9326  240x400  ID=0x9326 #define SUPPORT_9326_5420
ILI9327  240x400  ID=0x9327
ILI9328  240x320  ID=0x9328 
ILI9329  240x320  ID=0x9329 
ILI9331  240x320  ID=0x9331 
ILI9335  240x320  ID=0x9335 
ILI9338  240x320  ID=0x9338 
ILI9340  240x320  ID=0x9340 
ILI9341  240x320  ID=0x9341 
ILI9342  320x240  ID=0x9342 #define SUPPORT_9342 
ILI9481  320x480  ID=0x9481  
ILI9486  320x480  ID=0x9486
ILI9487  320x480  ID=0x9487
ILI9488  320x480  ID=0x9488 (weird 555 display :#define SUPPORT_9488_555) 
LGDP4532 240x320  ID=0x4532 #define SUPPORT_4532
LGDP4535 240x320  ID=0x4535 #define SUPPORT_4535
NT35310  320x480  ID=0x5310 (hardware must be set for 8-bit parallel)
R61505   240x320  ID=0x1505 works like an ILI9320
R61505V  240x320  ID=0xB505
R61505W  240x320  ID=0xC505 
R61509V  240x400  ID=0xB509 #define SUPPORT_B509_7793
R61520   240x320  ID=0x1520 (no Vertical Scroll)
R61526A  240x320  ID=0x1526 (no Vertical Scroll) configure NVM with sketch
R61580   240x320  ID=0x1580 #define SUPPORT_1580 *** Untested ***
R61581   320x480  ID=0x1581
RM68090  240x320  ID=0x6809
RM68140  320x480  ID=0x6814 #define SUPPORT_68140
S6D0139  240x320  ID=0x0139 #define SUPPORT_0139 *** Untested ***
S6D0154  240x320  ID=0x0154 #define SUPPORT_0154
SPFD5408 240x320  ID=0x5408
SPFD5420 240x400  ID=0x5420 #define SUPPORT_9326_5420
SSD1963  800x480  ID=0x1963
SSD1289  240x320  ID=0x1289 #define SUPPORT_1289
ST7781   240x320  ID=0x7783 #define SUPPORT_7781 (no Vertical Scroll)
ST7789V  240x320  ID=0x7789
ST7793   240x400  ID=0x7793 #define SUPPORT_B509_7793
ST7796   320x480  ID=0x7796
UC8230   240x320  ID=0x8230 #define SUPPORT_8230
UNKNOWN  320x480  ID=0x1511 (scroll directions not correct)
UNKNOWN  240x320  ID=0x1602
UNKNOWN  240x320  ID=0xAC11
UNKNOWN  240x320  ID=0x2053 weird controller from BangGood (was ID=0x0000)
 
как и в  UTFT , предусмотрена экономия места программы + и времени!, исключением ненужных инитов, находится в файле MCUFRIEND_kbv.cpp
 
//#define SUPPORT_0139              //not working +238 bytes
#define SUPPORT_0154              //S6D0154 +320 bytes
//#define SUPPORT_1289              //costs about 408 bytes
#define SUPPORT_1963              //only works with 16BIT bus anyway
//#define SUPPORT_4532              //LGDP4532 +120 bytes.  thanks Leodino
#define SUPPORT_4535              //LGDP4535 +180 bytes
#define SUPPORT_68140             //RM68140 +52 bytes defaults to PIXFMT=0x55
#define SUPPORT_7781              //ST7781 +172 bytes
//#define SUPPORT_8347D             //HX8347-D, HX8347-G, HX8347-I +520 bytes, 0.27s
//#define SUPPORT_8347A             //HX8347-A +500 bytes, 0.27s
//#define SUPPORT_8352A             //HX8352A +486 bytes, 0.27s
//#define SUPPORT_9326_5420         //ILI9326, SPFD5420 +246 bytes
#define SUPPORT_B509_7793         //R61509, ST7793 +244 bytes
#define OFFSET_9327 32            //costs about 103 bytes, 0.08s
slider
Offline
Зарегистрирован: 17.06.2014

Tvicks,там есть SPFD5420 240x400  ID=0x5420 #define SUPPORT_9326_5420

можете попробовать на своем нокиевском диспе , операторы графики теже GFX .

Tvicks
Offline
Зарегистрирован: 11.05.2017

Привет искал что нибудь по дисплею KFM529D01-1A он с MP3 плеера Newman R88 и наткнулся на на эти списки дисплеев. Забивай в поиск и выходит много китайских сайтов, списки оттуда. Ну вот несколько кину сайтов:

 http://www.mydigit.cn/simple/?t125387.htmlhttp://bbs.mydigit.cn/read.php?tid=125387https://wenku.baidu.com/view/75c20eea172ded630b1cb602.htmlhttp://www.gujianba.com/read-htm-tid-6427.htmlhttp://wk.baidu.com.cn/view/ec1e2424aaea998fcc220ecd?pn=5&pu=#3 

Там еще десяток сайтов , но мне не помогло искал распиновку. В поиск забивай KFM529D01-1A. Спасибо Slider попробую.

Alexey-kipia
Alexey-kipia аватар
Offline
Зарегистрирован: 14.03.2016

Всем привет. Ребят помогите распознать дисплейчик. Он из китайского набора разработки на базе 8051, avr, stm. Типа ардуино шилда но с другой распайкой. Блин, не нахожу, как тут картинку прилепить, пишу с телефона. В общем на нам есть надписи. На самом шилде такая TFT-2.4 (R61526), я понял это контроллер. Шлейф 23 пина, надпись на нем TRULY IPS8K5716FPC-B1-E. Кое-что вызвонил 1,2,3,4,5,23-Gnd; 6,21,22-Vcc; Сигнальные не могу понять, идут на резистивные сборки, а после на пины шилда. Несколько вариантов подключения пробовал, не читается. Помогите с распиновкой.

Alexey-kipia
Alexey-kipia аватар
Offline
Зарегистрирован: 14.03.2016

Всем привет. Ребят помогите распознать дисплейчик. Он из китайского набора разработки на базе 8051, avr, stm. Типа ардуино шилда но с другой распайкой. Блин, не нахожу, как тут картинку прилепить, пишу с телефона. В общем на нам есть надписи. На самом шилде такая TFT-2.4 (R61526), я понял это контроллер. Шлейф 23 пина, надпись на нем TRULY IPS8K5716FPC-B1-E. Кое-что вызвонил 1,2,3,4,5,23-Gnd; 6,21,22-Vcc; Сигнальные не могу понять, идут на резистивные сборки, а после на пины шилда. Несколько вариантов подключения пробовал, не читается. Помогите с распиновкой.

ywor
Offline
Зарегистрирован: 16.01.2017

Alexey-kipia пишет:
Всем привет. Ребят помогите распознать дисплейчик. Он из китайского набора разработки на базе 8051, avr, stm. Типа ардуино шилда но с другой распайкой. Блин, не нахожу, как тут картинку прилепить, пишу с телефона. В общем на нам есть надписи. На самом шилде такая TFT-2.4 (R61526), я понял это контроллер. Шлейф 23 пина, надпись на нем TRULY IPS8K5716FPC-B1-E. Кое-что вызвонил 1,2,3,4,5,23-Gnd; 6,21,22-Vcc; Сигнальные не могу понять, идут на резистивные сборки, а после на пины шилда. Несколько вариантов подключения пробовал, не читается. Помогите с распиновкой.
в чем то проблема инфы в гугле полно вот пример http://www.datasheetspdf.com/PDF/R61526/1111438/15

croc19
Offline
Зарегистрирован: 17.02.2017

Фото дисплея выложи, чтоб определить где какие выводы.

nnm4evr
Offline
Зарегистрирован: 30.07.2017

Перенесено на следующую страницу ---->