да на коте я эту схему нашел еще до написания на этот форум, вот тока я писал что я еще ардуинщик еще тот, и как все это дело подключить к nano или хотя бы к уно да и еще с прогой, там то понятно что микра с семейства atmegi но там к шожкам все идет, а мне бы в формате ардуиновской платы
Найдите даташит на чип вашего ардуино, и проследите на какие пины платы уходят необходимые ножки чипа. Если это NANO, то там дорожки от чипа до пинов легко просматриваются, про другие не скажу, ибо у меня их нету под рукой.
у меня есть Atmega328P-PU (это UNO) есть Atmega328PU-PH (это NANO)
по номерам ножек канеш не увидишь, uno плата белая, nano мелкая можно чисто прозвонить только, вот тока нет скетчей для arduino ide, те что там есть я хз какой прогой открывать
и допустим Atmega328P-PU (это UNO) там всего 28 ножек, (микра в DIP корпусе)
В телефонах Siemens можно встретить четыре типа индикаторов с разрешением 128x128 пикселей - LPH9135 (контроллер Philips LDS183), LM15SGFNZ20, LM15SGFNZ22 и какую-то «тёмную лошадку» CG151313-S604D. И если на первые три дисплеи найти какую-нибудь информацию можно, то нашедшему в своём телефоне 4-й экземпляр неутешительный совет – спрятать его подальше…
В телефонах Siemens можно встретить четыре типа индикаторов с разрешением 128x128 пикселей - LPH9135 (контроллер Philips LDS183), LM15SGFNZ20, LM15SGFNZ22 и какую-то «тёмную лошадку» CG151313-S604D. И если на первые три дисплеи найти какую-нибудь информацию можно, то нашедшему в своём телефоне 4-й экземпляр неутешительный совет – спрятать его подальше…
Почему? В Сименсе же он как-то работает? Более того - выходит, что Сименс сам определяет, какой контроллер (если там разные) и корректно работает? Инфы нет? Так тут в основном и сидит народ, который хочет в чем-то разобраться и что-то слепить своими руками. А если есть инфа по другим, значит, цоколевка уже известна, а это уже пол-дела. А зная цоколевку, уже можно запустить читалку... В общем, совет для тех, кто не может/не хочет разбираться. ;) Мне в последнее время только и попадаются дисплеи, о которых вообще нет инфы. Победил все (т.е. разобрался с цоколевкой, с типом контроллера написал или нашел инициализацию, в общем, заставил работать), сегодня, кстати, запустил два. ;) Я не хвастаюсь, просто призываю заниматься. Это очень интересно. ;)
Парни, как все-таки можно разобраться с дисплеем H317QN01. Я не могу понять, если в даташите прописаны пины чипа уходящие на шлейф в количестве 176-ти, и по шлейфу это соответствие подтверждается объединением, допустим 3-х контактов VCI, в одну дорожку по шлейфу, как тогда быть что у меня все так плохо с разводкой, и выведены эти TESTOx, а также замкнуты управляющие на IOVCC?
По картинке ниже, контакты CSX,D/CX,WRX/SCL,RDX,DIN/SDA идут как контакты 60-64, и они объединены в один с IOVCC(контакты 66-68).
Я конечно не исключаю того, что V4 отличается от V3, и разводка с чипа идет другая, но информации по V4 к сожалению, найти никак не удалось в сети.
Очень досадно будет если таки я его не победю, т.к. именно такой размер дисплея мне нужен для дальнейшей реализации проекта.
как все-таки можно разобраться с дисплеем H317QN01
paul_88, вы постоянно попадаете на TESTOx, это говорит о том, что контроллер дисплея не ILI9481, а его аналог R61581 от Renesas, а значит основные выводы шлейфа: 10 - LEDPWM, 17-18 - MDDI_DATA_M_B, 19-20 - MDDI_DATA_P_B, 21-22 - MDDI_STB_M_B, 23-24 - MDDI_STB_P_B, 33 - IM0, 34 - IM1, 35 - IM2, 36 - RESx, 37 - VSYNC... 40-58 - DB17-DB0....
В смартфоне(!) с разрешением экрана 480х320 дисплей не может управляться обычным SPI. По комбинации IM0=0, IM1,2=1 в вашем контроллере включен MDDI-интерфейс, поэтому и выведена на разъем шина MDDI, шина данных DB0-DB17 - заземлена, а основные традиционные сигналы CSX,D/CX,WRX/SCL,RDX,DIN/SDA объединены в один с IOVCC.
Надеюсь это чем-то вам поможет или поможет "знающим людям", которые помогают вам советами
Надеюсь это чем-то вам поможет или поможет "знающим людям", которые помогают вам советами
По-видимому, Вы правы. Просто по приведенной раскладке, оставляющей только 4 ноги под управление, я предположил последовательный интерфейс и, видимо ошибочно, упомянул SPI, подумав, что на какой-нибудь дифференциальный интерфейс 4 ног может и не хватить. Собственно, я не столько упирал на SPI, сколько на то, что paul_88 руководствуется ошибочной распиновкой, приводящей его ко всяким TESTx. Что касается Вашего сарказма про "знающих людей" - все мы пытаемся помочь, иногда в чем-то ошибаясь. Мне кажется, указав на ошибку, не обязательно давать тут же обобщенную оценку компетентности ее автора. Особенно после того, как только что распространяли советы задвигать подальше дисплеи, с которыми не в состоянии разобраться, при том, что они прекрасно работают в самом телефоне. ;) Я уж не говорю про манеру, не ответив на прямо адресованный вопрос, пытаться в "ущипнуть" опосредовано, скользкими намеками.
В смартфоне(!) с разрешением экрана 480х320 дисплей не может управляться обычным SPI. По комбинации IM0=0, IM1,2=1 в вашем контроллере включен MDDI-интерфейс, поэтому и выведена на разъем шина MDDI, шина данных DB0-DB17 - заземлена, а основные традиционные сигналы CSX,D/CX,WRX/SCL,RDX,DIN/SDA объединены в один с IOVCC.
Спасибо за подсказку. Я смотрел в сторону R61581, но меня совсем смутило на тот момент не известное мне MDDI, по этому сильно не углубляясь в чип, искал информацию по конкретному шлейфу.
Но и опять, каким образом поступить дальше, примеров по MDDI & Arduino чтот я не нашел.
По поводу "знающих людей". Даже если они ошибаются, тем не менее я очень рад тому что хоть что-то мне советуют, и я не сколько не жалею что пришел сюда.
Надеюсь что совместными усилиями мы разберемся с этим дисплейчиком и пополним базу этого форума. Чему я в первую очередь буду благодарен этому форуму и людям, всем до единого, которые хоть чем-то пытались мне помочь в этом.
Надеюсь что совместными усилиями мы разберемся с этим дисплейчиком и пополним базу этого форума. Чему я в первую очередь буду благодарен этому форуму и людям, всем до единого, которые хоть чем-то пытались мне помочь в этом.
верно lawr указал, забросьте этот дисп, нерационален он для ардуинок. это видно с фоток , проводов 8/16 бит там нет, на нем очень мало проводников. А где есть сдвоенные проводники это точно LVDS , MIPI , DSI , MDDI , .... и как еще их не назови.
С десяток раз уже были их фотки, вопросы, ответы. Да решения в приципе есть, но простых быть не может в силу необходимости нужного аппаратного интерфейса, высокой скорости, большого видеоОЗУ : page=4#comment-252673 , page=2#comment-176750 , page=4#comment-228842
Очень жаль что многие не просматривают ветку , и задают те вопросы на которые были много раз даны ответы , ветка выросла и стала очень тяжелой , из-за этого очень долго отправляются сообщения поэтому несколько раз тыкая "отправить" , сообщение столько же раз и дублируется.
По правилам форума нельзя редактировать самое первое сообщение в теме, так бы можно было собрать все знания в нем. Сообщения на которых нажимали "ответить" "цитировать" тоже заблокированы от редактирования.
Надеюсь, когда либо будет у меня время , или у завсегдатых , чтобы информативно (с фотками и ссылками) создать новую ветку продолжение с одноименным названием -2, где в первом сообщении собрать все знания , а во втором добавлять. Да и ваши сообщения в новую ветку уже будут уходить быстро.
//// в этой ветке были и пробы в 8/16 бит дисе выловить на его шлейфе SPI проводники (аккуратно разрезать их закороченность на gnd ) и подключиться к ним, при наличии IM0 ... выводов для смены шины .
Все упирается в интерес , время, целесообразность.
вот вам в коллекцию... хоть и глухарили с помощью и не отвечали на мои невидимые сообщения... дисплей FPC-S95588-AAA-1 V01. подключил по 8-ми битной шине.
на последней фото не полная надпись, из за разрешения дисплея, он 400х240. лень было считать пиксели и править прошивку на последнем тесте.
Прошу помощи. Попался дисплейчик 2.2" без инфы. Цоколевка определена с уверенностью на 99%, 1% оставляю на всякие "ля ты..." "век живи - век учись" и т.д. А вот с контроллером затык. Во всех встретившихся в инете дисплеях с такой же цоколевкой применияется ILI9225 или совместимые. Анализ шлейфа тоже показывает что-то очень похожее. Но то, что из него читается меня повергает в ступор:
Показаны только ненулевые регистры. В ILI9225 и аналогах ID в нулевом регистре. У меня там глубокий ноль. И еще что мне непонятно. Во всех регистрах читается 1 байт. В "регистровых" контроллерах (те, что мне встречались) должны читаться 2 байта, в "командных" - несколько хотя бы в некоторых. Не может, насколько я знаю, везде читаться один и тот же один байт. Это читается один к одному всеми читалками, как двумя на Ардуино, так и самопальной на STM8S. Можно было бы теоретически предположить ошибку чтения, но, во-первых, повторюсь, это разными, проверенными, читалками и, во-вторых, из одного регистра таки читается последовательность байтов - 0x22. А это у "регистровых" контролеров обычно доступ к видеопамяти, т.е., как и положено, читается мусор оттуда. Сигнал IM0 работает правильно. Правильность управляющих сигналов проверялась стопицот раз, пробовались самые разные сочетания (не факт, правда, что все). ШД также. Буденовская попытка взять инитом от ILI9225 успехом не увенчалась. В общем, я в полных непонятках, что за зверь и как с ним дружить. Может, кому-то встречалось что-то подобное? Может, есть свежие мысли, что еще проверить? Мысль о неисправном индикаторе отодвигаю до последнего. Как показывает практика, она всегда приходит при затянувшейся долбежке и лично у меня никогда в итоге не подтверждалась.
Ребята не подскажите распиновку дисплея arising 10 дюймового.На шлейфе надпись AR101H03N-FPC-V1 а на самом дисплее AR101H10N18-BL-V1 хочу подключить его к ардуино.Шлейф 40pin
Друзья, помогите определить контроллер дисплея. читалка выдает следующее:
....
На стандартный инит не реагирует, на дисплее ничего не отображается.
надо хоть бы фотку диспа , шлейфа выкладывать, размер , что на шлейфе написано , от куда снят дисп,... .
м.б. это какой-то большой с большой пиксельностью , и чтобы он был сговорчивый , надо ему сначала "сказать" какой он (угадать).
м.б. это просто плохое подключение , или не та битность выбрана (старшие биты через резисторы притянуть на gnd) .
м.б. завалы импульсов (подключить ардуину на 3.3в , резисторы по 100ом)
м.б. неконтакт , или зымыкание соседних.
Что говорит читалка от mcufriend_kvb ?
где-то в теме выкладывал логи диспов 800x480 около 4" размер ( м.б. ili9806h OTM8009A R61408 RM68180 ...) , чтот похоже
Добрый день. Есть рабочий дисплей от FLY FS451. Надпись на дисплее TFT445F161FPC VER01. Даташит по нему не нашел, но нашел схему телефона и конектора дисплея.
Помогите с ней разобраться. Хочется подключить его к Ардуинке.
На шлейфе 1,2,3, 14, 15 пины - пустые(не подключены) 24, 25 - скорее всего GND. питание светодиодов 23 - "катод", 22 - "анод" , дальше не знаю.
Добрый день. Есть рабочий дисплей от FLY FS451. Надпись на дисплее TFT445F161FPC VER01. Даташит по нему не нашел, но нашел схему телефона и конектора дисплея.
Помогите с ней разобраться. Хочется подключить его к Ардуинке.
...
Вы здесь D0-D7 rst wr cs ... видите ? И мы тож нет.
Если ни как не хотят читаться первые страницы, то
прочтите хотя бы эту последнюю страницу , в частности #2011 сообщение , про сдвоенные дорожки.
slider, проу прощения, что-не подумал. Телефон китайский, подделка под какой-то Samsung. 5.6", 43 pin, разрешение дисплея должно быть большое. Маркировка на дисплее:
F571035VE
W571035BAA
S/N:140122 68180
Распиновка (предположительно) такая:
GND
RES
NC
NC
NC
NC
NC
NC
NC
NC
DATA (GND)
DATA (GND)
DATA (GND)
DATA (GND)
DATA (GND)
DATA (GND)
DATA (GND)
DATA (GND)
DATA (D7)
DATA (D6)
DATA (D5)
DATA (D4)
DATA (D3)
DATA (D2)
DATA (D1)
DATA (D0)
RD
WR
RS
CS
TE
IOVCC
IOVCC
GND
LED - A +18V
LED - A
LED - K GND
LED - K
GND
Sensor
Sensor
Sensor
Sensor
Фото:
Подсветка питается от 18 вольт (примерно). Удалось достать материнскую плату от телефона, плата сдохла, так что только подключение можно посмотреть. Старшие биты подтянуты к земле. Пины 32 и 33 соедидены вместе, это 100% питание дисплея. На пине 31 логический "0" (по крайней мере, горит подключенный светодиод), скорее всего это пин ТЕ.
При всех моих манипуляциях ответ не меняется, либо это, либо полная ерунда. Только 1 раз ответ немного изменился, некоторые начальные биты (р1) приняли другое значение, привожу часть ответа, остально все тоже самое как и в предыдущем:
Read Registers on MCUFRIEND UNO shield
controllers either read as single 16-bit
e.g. the ID is at readReg(0)
or as a sequence of 8-bit values
in special locations (first is dummy)
diagnose any controller
reg(0x0000) 00 00 ID: ILI9320, ILI9325, ILI9335, ...
reg(0x0004) 00 00 00 00 Manufacturer ID
reg(0x0009) 00 00 00 00 00 Status Register
reg(0x000A) 00 00 Get Powsr Mode
reg(0x000C) 00 00 Get Pixel Format
reg(0x0030) 00 00 00 00 00 PTLAR
reg(0x0033) 00 00 00 00 00 00 00 VSCRLDEF
reg(0x0061) 00 00 RDID1 HX8347-G
reg(0x0062) 00 00 RDID2 HX8347-G
reg(0x0063) 00 00 RDID3 HX8347-G
reg(0x0064) 00 00 RDID1 HX8347-A
reg(0x0065) 00 00 RDID2 HX8347-A
reg(0x0066) 00 00 RDID3 HX8347-A
reg(0x0067) 00 00 RDID Himax HX8347-A
reg(0x0070) 00 00 Panel Himax HX8347-A
reg(0x00A1) 00 00 00 00 00 RD_DDB SSD1963
reg(0x00B0) 00 00 RGB Interface Signal Control
reg(0x00B3) 00 00 00 00 00 Frame Memory
reg(0x00B4) 00 00 Frame Mode
reg(0x00B6) 00 00 00 00 00 Display Control
reg(0x00B7) 00 00 Entry Mode Set
reg(0x00BF) 00 00 00 00 00 00 ILI9481, HX8357-B
reg(0x00C0) 00 00 00 00 00 00 00 00 00 Panel Control
reg(0x00C1) 00 00 00 00 Display Timing
reg(0x00C5) 00 00 Frame Rate
reg(0x00C8) 00 00 00 00 00 00 00 00 00 00 00 00 00 GAMMA
reg(0x00CC) 00 00 Panel Control
reg(0x00D0) 00 00 00 00 Power Control
reg(0x00D1) 00 00 00 00 VCOM Control
reg(0x00D2) 00 00 00 Power Normal
reg(0x00D3) 00 00 00 00 ILI9341, ILI9488
reg(0x00D4) 00 00 00 00 Novatek
reg(0x00DA) 00 00 RDID1
reg(0x00DB) 00 00 RDID2
reg(0x00DC) 00 00 RDID3
reg(0x00E0) 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 GAMMA-P
reg(0x00E1) 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 GAMMA-N
reg(0x00EF) 00 00 00 00 00 00 ILI9327
reg(0x00F2) 00 00 00 00 00 00 00 00 00 00 00 00 Adjust Control 2
reg(0x00F6) 00 00 00 00 Interface Control
Подключение проверил, коротышей, непропая нет. Запитал Ардуино от 3.3 вольт а дисплей от 2.6 - результат тот же. Попробовал перевернуть шину данных, ответ получился такой:
forfrends,
1. А старший байт ШД действительно посажен на GND? На фотках вроде вся ШД идет на коннектор. Если нет - не пробовали перекинуть на старший байт? У многих контроллеров в 8-битном режиме используются старшие биты.
2. У вас на фотке изображен фрагмент с резистором и надписью "pin 33". Почти наверняка это выбор битности шины и дорожка, которая пошла вниз - IM0. В Вашей раскладке я ее не увидел. Куда идет эта дорожка?
3. Если есть возможность поэкспериментировать с подтяжкой портов (не заню, как это делается стандартными средствами Ардуины) - интересно бы сравнить, по этому видно, выдается ли это контроллером или шина болтается в воздухе при считывании (это врядли, но все-таки).
4. RESET у Вас расположен сомнительно. И TE. Я бы попробовал RESET подать на 31.
5. Можно попробовать перевернуть сигналы CS..RD. В смысле поменять их последовательность на противоположную т.е. 27..30 = CS, RS, WR, RD. Бывает.
6. Вообще обычно такие большие дисплеи идут уже с RGB управлением или скоростным последовательным.
Это предварительные соображения, картинки внимательно не смотрел еще. А вообще эта хрень, которая у Вас валит, чем-то напоминает мою из непобежденного странного экранчика. Я его было отложил, списав пока в предположительно неисправные, но сомнения меня гложут.
Tashkey, Старшие биты были посажены на GND на плате телефона. Тоже самое я сделал при подключении к Ардуино. Либо же наоборот, это младшие биты. Так или иначе, в телефоне использовались только питы 19-26, то есть 8 бит. А остальные биты я посадил на землю, как это было и в телефоне. На этот режим и настроем дисплей. Кстати, с подтяжкой к земле или без нее (болтание в воздухе) ответ от читалок был одинаковый.
Да, перемычка с резистором - 100% переключение битности. На последнем фото (справа-на-лево): Pin2 - Pin29, GND, Pin33, GND, IM(0)- который идет с перемычки.
На 16 бит не переключал, не пробовал. Надо попробовать, но я не знаю, Adafruit_id_reader читает 16-ти битные подключения?
Pin33 - это + питания.
Относительно Reseta и TE - как писал Slider: "на предполагаемых TE FMARK IM посмотрел бы светодиодом не появляется ли там лог.0". Я так и сделал. Светодиод постоянно горит только на 31-м пине.
Относительности целосности дисплея мне сложно что-то сказать с уверенностью. Телефон попал ко мне дохлый. Дисплей на вид не битый... но кто его знает... Жалко будет если он неисправный.
forfrends, если на телефоне посажен на GND - да, тогда все железно. И нет смысла пробовать переключать на 16 бит. А вот с сигналами управления я бы поэкспериментировал.
forfrends, даже не верится 5.6" - вот это размерчик , как и где выловили такой? еще и по 8 бит подключенным.
что у вас в логе
018
0A = 08 08 08 08 08 08 08 08
227 DB = 80 80 80 80 80 80 80 80 *****
думаю это хороший признак правильного подключения, осталось диспу послать некие команды чтоб он был сговорчивым,
где то вы уже встречали немного похожий лог, вот ваш лог с какого-то тож большого диспа (сохранил на всяк случай):
где то в форуме мы выкладывали кто что нашел ссылки на сайты и продавцов на Али, где большой выбор голых диспов с документацией (там можно и по примерному размеру матрицы поискать, такой драйвер на разных рядом размерах может стоять). И если что, то даташит и инициализацию можно спросить у китайцев , а то с китайского хранилища они не доступны для скачивания (надо рейтинг) . Так что попробуйте поискать еще такими способами.
// найти живой тлф и просканить с него бы. Можно еще поискать на форумах по ремонту китайфонов, м.б. по применяющимся набору микросхем , а там и на выкладываемые прошивки выйти , и глянуть какой драйвер на дисп применяется.
/// киньте полноразмерные фото диспа, телефона , платы . хотелось бы глянуть на сие чудо :))) и что там за процник стоит.
croc19 Плата есть. Стоит процессор Spreadtrum SC6531C. Рядом с ним обычная флешка 25Q128FWPM. Вот у меня мысль возникла, если флешка рабочая, то на ней должна быть прошивка, верно? Может попробовать прочитать содержимое флешки и попробовать поковырять прошивку в поисках инита?
Кстати, а если сдуть процессор то что это даст? Как прозвонка поможет? Просто я не знаю что это даст.
Фото платы телефона (сенсор временно отпаял, чтобы не мешал):
На экране проца была наклейка. На ней надписи:
P1302 DHX V1.1 20140117 3324
JR1402019 4+BT+FM+R+6531C P1302 SMT 4BAND (?) дальше не разобрать... и в конце: 128+0
slider, вот это ты даешь! В хорошем смысле :) Я перешел по твоим ссылкам... как ты там разбираешься??? Понимаю, опыт... у меня его нет, по этому ни на Таобао ни на Байду я не нашел ничего похожего на мой дисплей...
спросил доки RM68180 pdf datasheet 480x800 480x864 у продавца на его дисп с темже контроллером (брал у него как-то разные микро диспы OLED для интересненького проекта)
Добрый вечер форумчане! Я новичок с работой Arduino. Нашел у себя дисплей от китайской копии яблочного смартфона 3G. Нашел на него распиновку на али. На шлейфе дисплея было написано RM68090. Подключил к Дуне Нано В3.0 загрузил скетч инициализации и мне выдало драйвер HX8357. От куда скопировал скетч инициализации забыл. Но фото инициализации в порту сохранил, сейчас не могу загрузить, так как уже пишу дома, а фото на работе. Далее нашел библиотеку данного драйвера и там написано, что она работает только с Уно, Мега. Но понимаю, что можно этот диполей как-то запустить на Нано, но как не могу сообразить. Помогите пожалуйста. Если надо будет фото дисплея, то позже скину. А так же скину все остальные данные на этот дисплей.
Дисплей подключаю таким образом CS, RS, WR, RD - A3...A0 Rest - A4; DB08-DB015 соответственно DB0-DB7. Питание дисплея произвожу от Ардуино, а подсветку дисплея от лабораторного БП. Библиотеки разные пробовал.
Я не внимателен или так и есть - не смог найти поиск по форуму. А хотел найти здесь информацию по 39-и пиновому дисплейчику от фотоаппарата Sony Cyber-shot DSC-S800. Маркировка 69.02A21.004. Внук фотоаппарат уничтожил, а дисплейчик цел и есть большое желание пристроить его к STM32.
Обрашение к "slider". Если Вам интересно покопаться в этом дисплее, то могу его выслать. Не смог найти Ваш почтовый адрес, хотя и видел его где то.
Lotus6202, по скану платы имеем только 8 выводов для управления экраном. Для 8-битного параллельного режима этого мало, для SPI - много. Контроллер uc1610 может работать в 4-битном параллельном режиме, как вариант. Или uc1608. И еще, для проверки надо восстановить обвязку(кондеры, сопротивления, перемычки) для остальных выводов экрана, как было на плате. Можно без двух крайних правых выводов - это подсветка.
С разрешением еще не игрался, по дефолту работает на 320х240, кто ткнет где менять в библиотеке, и самое главное как, разрешение, тому безмерная благодарность =)
Добрый форумчане! Я новичок с работой Arduino. Нашел у себя дисплей от китайской копии яблочного смартфона 3G. Нашел на него распиновку на али. На шлейфе дисплея было написано RM68090. Подключил к Дуне Нано В3.0 загрузил скетч инициализации и мне выдало драйвер HX8357. От куда скопировал скетч инициализации забыл. Но фото инициализации в порту сохранил:
Далее нашел библиотеку данного драйвера и там написано, что она работает только с Уно, Мега. Но понимаю, что можно этот дисплей как-то запустить на Нано, но как не могу сообразить. Помогите пожалуйста.
Дисплей подключаю таким образом CS, RS, WR, RD - A3...A0 Rest - A4; DB08-DB015 соответственно DB0-DB7. Питание дисплея произвожу от Ардуино, а подсветку дисплея от лабораторного БП. Библиотеки разные пробовал.
MAkSQWI уно и нано в этом плане это одно и тоже. чип такой же atmega328 , только размер платы разный.
непонятно в чем у вас вопрос, не в первый раз.
"к Дуне Нано В3.0 загрузил скетч инициализации и мне выдало драйвер HX8357."
"Но понимаю, что можно этот дисплей как-то запустить на Нано, но как не могу сообразить."
ну и пользуйтесь Дуне Нано В3.0 , раз она его видит . Загружаете скетч для уно , в нано , все должно работать. Или у вас этот скетч(либа) требует подключения на другие пины D2-D7 D8 D9 , а не D0-D7 как читалка .Так подключите как у нее в описании , и будет работать. (если в диспе преобразователи в контроллере исправны)
запустите mcufriend_kvb , в ней много инитов , если что , можно принудительно выбирать , мож на каком подходящем и заведется.
/// где именно она выдала что у вас HX8357 ? невидать
MAkSQWI уно и нано в этом плане это одно и тоже. чип такой же atmega328 , только размер платы разный.
непонятно в чем у вас вопрос, не в первый раз.
"к Дуне Нано В3.0 загрузил скетч инициализации и мне выдало драйвер HX8357."
"Но понимаю, что можно этот дисплей как-то запустить на Нано, но как не могу сообразить."
ну и пользуйтесь Дуне Нано В3.0 , раз она его видит . Загружаете скетч для уно , в нано , все должно работать. Или у вас этот скетч(либа) требует подключения на другие пины D2-D7 D8 D9 , а не D0-D7 как читалка .Так подключите как у нее в описании , и будет работать. (если в диспе преобразователи в контроллере исправны)
запустите mcufriend_kvb , в ней много инитов , если что , можно принудительно выбирать , мож на каком подходящем и заведется.
/// где именно она выдала что у вас HX8357 ? невидать
MAkSQWI, если верить надписи на шлейфе (RM68090), дисплей должен заработать с любой библиотекой, поддерживающей ILI9325. Вот только ардуинка должна быть 3.3-вольтовая
да на коте я эту схему нашел еще до написания на этот форум, вот тока я писал что я еще ардуинщик еще тот, и как все это дело подключить к nano или хотя бы к уно да и еще с прогой, там то понятно что микра с семейства atmegi но там к шожкам все идет, а мне бы в формате ардуиновской платы
Найдите даташит на чип вашего ардуино, и проследите на какие пины платы уходят необходимые ножки чипа. Если это NANO, то там дорожки от чипа до пинов легко просматриваются, про другие не скажу, ибо у меня их нету под рукой.
у меня есть Atmega328P-PU (это UNO) есть Atmega328PU-PH (это NANO)
по номерам ножек канеш не увидишь, uno плата белая, nano мелкая можно чисто прозвонить только, вот тока нет скетчей для arduino ide, те что там есть я хз какой прогой открывать
и допустим Atmega328P-PU (это UNO) там всего 28 ножек, (микра в DIP корпусе)
Signalsus. вот тут есть почитай
http://arduino.ru/forum/apparatnye-voprosy/podklyuchenie-displeya-simens-ax72#comment-107823
Signalsus, нафига что-то выслеживать по плате, если интернет ломится от схем Ардуин?
На уже упоминавшемся ресурсе схем.net:
В телефонах Siemens можно встретить четыре типа индикаторов с разрешением 128x128 пикселей - LPH9135 (контроллер Philips LDS183), LM15SGFNZ20, LM15SGFNZ22 и какую-то «тёмную лошадку» CG151313-S604D. И если на первые три дисплеи найти какую-нибудь информацию можно, то нашедшему в своём телефоне 4-й экземпляр неутешительный совет – спрятать его подальше…
На уже упоминавшемся ресурсе схем.net:
В телефонах Siemens можно встретить четыре типа индикаторов с разрешением 128x128 пикселей - LPH9135 (контроллер Philips LDS183), LM15SGFNZ20, LM15SGFNZ22 и какую-то «тёмную лошадку» CG151313-S604D. И если на первые три дисплеи найти какую-нибудь информацию можно, то нашедшему в своём телефоне 4-й экземпляр неутешительный совет – спрятать его подальше…
Почему? В Сименсе же он как-то работает? Более того - выходит, что Сименс сам определяет, какой контроллер (если там разные) и корректно работает? Инфы нет? Так тут в основном и сидит народ, который хочет в чем-то разобраться и что-то слепить своими руками. А если есть инфа по другим, значит, цоколевка уже известна, а это уже пол-дела. А зная цоколевку, уже можно запустить читалку... В общем, совет для тех, кто не может/не хочет разбираться. ;) Мне в последнее время только и попадаются дисплеи, о которых вообще нет инфы. Победил все (т.е. разобрался с цоколевкой, с типом контроллера написал или нашел инициализацию, в общем, заставил работать), сегодня, кстати, запустил два. ;) Я не хвастаюсь, просто призываю заниматься. Это очень интересно. ;)
Парни, как все-таки можно разобраться с дисплеем H317QN01. Я не могу понять, если в даташите прописаны пины чипа уходящие на шлейф в количестве 176-ти, и по шлейфу это соответствие подтверждается объединением, допустим 3-х контактов VCI, в одну дорожку по шлейфу, как тогда быть что у меня все так плохо с разводкой, и выведены эти TESTOx, а также замкнуты управляющие на IOVCC?
По картинке ниже, контакты CSX,D/CX,WRX/SCL,RDX,DIN/SDA идут как контакты 60-64, и они объединены в один с IOVCC (контакты 66-68).
Я конечно не исключаю того, что V4 отличается от V3, и разводка с чипа идет другая, но информации по V4 к сожалению, найти никак не удалось в сети.
Очень досадно будет если таки я его не победю, т.к. именно такой размер дисплея мне нужен для дальнейшей реализации проекта.
как все-таки можно разобраться с дисплеем H317QN01
paul_88, вы постоянно попадаете на TESTOx, это говорит о том, что контроллер дисплея не ILI9481, а его аналог R61581 от Renesas, а значит основные выводы шлейфа: 10 - LEDPWM, 17-18 - MDDI_DATA_M_B, 19-20 - MDDI_DATA_P_B, 21-22 - MDDI_STB_M_B, 23-24 - MDDI_STB_P_B, 33 - IM0, 34 - IM1, 35 - IM2, 36 - RESx, 37 - VSYNC... 40-58 - DB17-DB0....
В смартфоне(!) с разрешением экрана 480х320 дисплей не может управляться обычным SPI. По комбинации IM0=0, IM1,2=1 в вашем контроллере включен MDDI-интерфейс, поэтому и выведена на разъем шина MDDI, шина данных DB0-DB17 - заземлена, а основные традиционные сигналы CSX,D/CX,WRX/SCL,RDX,DIN/SDA объединены в один с IOVCC.
Надеюсь это чем-то вам поможет или поможет "знающим людям", которые помогают вам советами
По-видимому, Вы правы. Просто по приведенной раскладке, оставляющей только 4 ноги под управление, я предположил последовательный интерфейс и, видимо ошибочно, упомянул SPI, подумав, что на какой-нибудь дифференциальный интерфейс 4 ног может и не хватить. Собственно, я не столько упирал на SPI, сколько на то, что paul_88 руководствуется ошибочной распиновкой, приводящей его ко всяким TESTx. Что касается Вашего сарказма про "знающих людей" - все мы пытаемся помочь, иногда в чем-то ошибаясь. Мне кажется, указав на ошибку, не обязательно давать тут же обобщенную оценку компетентности ее автора. Особенно после того, как только что распространяли советы задвигать подальше дисплеи, с которыми не в состоянии разобраться, при том, что они прекрасно работают в самом телефоне. ;) Я уж не говорю про манеру, не ответив на прямо адресованный вопрос, пытаться в "ущипнуть" опосредовано, скользкими намеками.
В смартфоне(!) с разрешением экрана 480х320 дисплей не может управляться обычным SPI. По комбинации IM0=0, IM1,2=1 в вашем контроллере включен MDDI-интерфейс, поэтому и выведена на разъем шина MDDI, шина данных DB0-DB17 - заземлена, а основные традиционные сигналы CSX,D/CX,WRX/SCL,RDX,DIN/SDA объединены в один с IOVCC.
Спасибо за подсказку. Я смотрел в сторону R61581, но меня совсем смутило на тот момент не известное мне MDDI, по этому сильно не углубляясь в чип, искал информацию по конкретному шлейфу.
Но и опять, каким образом поступить дальше, примеров по MDDI & Arduino чтот я не нашел.
По поводу "знающих людей". Даже если они ошибаются, тем не менее я очень рад тому что хоть что-то мне советуют, и я не сколько не жалею что пришел сюда.
Надеюсь что совместными усилиями мы разберемся с этим дисплейчиком и пополним базу этого форума. Чему я в первую очередь буду благодарен этому форуму и людям, всем до единого, которые хоть чем-то пытались мне помочь в этом.
.......
Надеюсь что совместными усилиями мы разберемся с этим дисплейчиком и пополним базу этого форума. Чему я в первую очередь буду благодарен этому форуму и людям, всем до единого, которые хоть чем-то пытались мне помочь в этом.
верно lawr указал, забросьте этот дисп, нерационален он для ардуинок. это видно с фоток , проводов 8/16 бит там нет, на нем очень мало проводников. А где есть сдвоенные проводники это точно LVDS , MIPI , DSI , MDDI , .... и как еще их не назови.
С десяток раз уже были их фотки, вопросы, ответы. Да решения в приципе есть, но простых быть не может в силу необходимости нужного аппаратного интерфейса, высокой скорости, большого видеоОЗУ :
page=4#comment-252673 ,
page=2#comment-176750 ,
page=4#comment-228842
Очень жаль что многие не просматривают ветку , и задают те вопросы на которые были много раз даны ответы , ветка выросла и стала очень тяжелой , из-за этого очень долго отправляются сообщения поэтому несколько раз тыкая "отправить" , сообщение столько же раз и дублируется.
По правилам форума нельзя редактировать самое первое сообщение в теме, так бы можно было собрать все знания в нем. Сообщения на которых нажимали "ответить" "цитировать" тоже заблокированы от редактирования.
Надеюсь, когда либо будет у меня время , или у завсегдатых , чтобы информативно (с фотками и ссылками) создать новую ветку продолжение с одноименным названием -2, где в первом сообщении собрать все знания , а во втором добавлять. Да и ваши сообщения в новую ветку уже будут уходить быстро.
// шилды (зачастую дисп 8/16 бит + микросхемы регистры) , и диспы с SPI 480x320 существуют (есть даже на али), но это редкость, а для телефонов вообще ненужная вещь, с их то мощными процессорами. При таком большом разрешении вместе с SPI обычно выведена и параллельная шина.
https://ru.aliexpress.com/item/480-320-3-5-RGB-8PIN-SPI-TFT/32909564839.html
https://ru.aliexpress.com/item/320-480-3-5-SPI-TFT/32908809356.html
//// в этой ветке были и пробы в 8/16 бит дисе выловить на его шлейфе SPI проводники (аккуратно разрезать их закороченность на gnd ) и подключиться к ним, при наличии IM0 ... выводов для смены шины .
Все упирается в интерес , время, целесообразность.
вот вам в коллекцию... хоть и глухарили с помощью и не отвечали на мои невидимые сообщения... дисплей FPC-S95588-AAA-1 V01. подключил по 8-ми битной шине.
на последней фото не полная надпись, из за разрешения дисплея, он 400х240. лень было считать пиксели и править прошивку на последнем тесте.
PS. подключал к Arduino Nano v 3.0
Посмотри первую страницу ветки. Посты 22,23,24.
А вообще молодец.
Прошу помощи. Попался дисплейчик 2.2" без инфы. Цоколевка определена с уверенностью на 99%, 1% оставляю на всякие "ля ты..." "век живи - век учись" и т.д. А вот с контроллером затык. Во всех встретившихся в инете дисплеях с такой же цоколевкой применияется ILI9225 или совместимые. Анализ шлейфа тоже показывает что-то очень похожее. Но то, что из него читается меня повергает в ступор:
Долго "собирался" подключить свой диспелей, и таки получилось.
Телефон CHINA iPhone J8, маркировка на шлейфе JIN CHI JM04218aFS, 3.5", 480x320, 40pin.

Информации по дисплею в сети ноль, кроме того, что есть аналоги XBI3502F-A1, JM04166a FS, F350293VA, RX-FPC35HX-140A.
Распиновку "вычислял" по справичнику "Стеля".
Читалка выдает следующий лог
Перебором подошла библиотека UTFT CTE32HR
Ребята не подскажите распиновку дисплея arising 10 дюймового.На шлейфе надпись AR101H03N-FPC-V1 а на самом дисплее AR101H10N18-BL-V1 хочу подключить его к ардуино.Шлейф 40pin
Перечитай тему.
Друзья, помогите определить контроллер дисплея. читалка выдает следующее:
На стандартный инит не реагирует, на дисплее ничего не отображается.
Друзья, помогите определить контроллер дисплея. читалка выдает следующее:
На стандартный инит не реагирует, на дисплее ничего не отображается.
надо хоть бы фотку диспа , шлейфа выкладывать, размер , что на шлейфе написано , от куда снят дисп,... .
м.б. это какой-то большой с большой пиксельностью , и чтобы он был сговорчивый , надо ему сначала "сказать" какой он (угадать).
м.б. это просто плохое подключение , или не та битность выбрана (старшие биты через резисторы притянуть на gnd) .
м.б. завалы импульсов (подключить ардуину на 3.3в , резисторы по 100ом)
м.б. неконтакт , или зымыкание соседних.
Что говорит читалка от mcufriend_kvb ?
где-то в теме выкладывал логи диспов 800x480 около 4" размер ( м.б. ili9806h OTM8009A R61408 RM68180 ...) , чтот похоже
Добрый день. Есть рабочий дисплей от FLY FS451. Надпись на дисплее TFT445F161FPC VER01. Даташит по нему не нашел, но нашел схему телефона и конектора дисплея.
Помогите с ней разобраться. Хочется подключить его к Ардуинке.
На шлейфе 1,2,3, 14, 15 пины - пустые(не подключены) 24, 25 - скорее всего GND. питание светодиодов 23 - "катод", 22 - "анод" , дальше не знаю.
Добрый день. Есть рабочий дисплей от FLY FS451. Надпись на дисплее TFT445F161FPC VER01. Даташит по нему не нашел, но нашел схему телефона и конектора дисплея.
Помогите с ней разобраться. Хочется подключить его к Ардуинке.
...
Вы здесь D0-D7 rst wr cs ... видите ? И мы тож нет.
Если ни как не хотят читаться первые страницы, то
прочтите хотя бы эту последнюю страницу , в частности #2011 сообщение , про сдвоенные дорожки.
slider, проу прощения, что-не подумал. Телефон китайский, подделка под какой-то Samsung. 5.6", 43 pin, разрешение дисплея должно быть большое. Маркировка на дисплее:
Распиновка (предположительно) такая:
Подсветка питается от 18 вольт (примерно). Удалось достать материнскую плату от телефона, плата сдохла, так что только подключение можно посмотреть. Старшие биты подтянуты к земле. Пины 32 и 33 соедидены вместе, это 100% питание дисплея. На пине 31 логический "0" (по крайней мере, горит подключенный светодиод), скорее всего это пин ТЕ.
Чталка выдает следующее:
При всех моих манипуляциях ответ не меняется, либо это, либо полная ерунда. Только 1 раз ответ немного изменился, некоторые начальные биты (р1) приняли другое значение, привожу часть ответа, остально все тоже самое как и в предыдущем:
Читалка от MCUFRIEND выдает одни нули:
Подключение проверил, коротышей, непропая нет. Запитал Ардуино от 3.3 вольт а дисплей от 2.6 - результат тот же. Попробовал перевернуть шину данных, ответ получился такой:
Немного повозился с настройками mcufriend_special.h. Попробовал правильно указать пины подключения управления:
forfrends,
1. А старший байт ШД действительно посажен на GND? На фотках вроде вся ШД идет на коннектор. Если нет - не пробовали перекинуть на старший байт? У многих контроллеров в 8-битном режиме используются старшие биты.
2. У вас на фотке изображен фрагмент с резистором и надписью "pin 33". Почти наверняка это выбор битности шины и дорожка, которая пошла вниз - IM0. В Вашей раскладке я ее не увидел. Куда идет эта дорожка?
3. Если есть возможность поэкспериментировать с подтяжкой портов (не заню, как это делается стандартными средствами Ардуины) - интересно бы сравнить, по этому видно, выдается ли это контроллером или шина болтается в воздухе при считывании (это врядли, но все-таки).
4. RESET у Вас расположен сомнительно. И TE. Я бы попробовал RESET подать на 31.
5. Можно попробовать перевернуть сигналы CS..RD. В смысле поменять их последовательность на противоположную т.е. 27..30 = CS, RS, WR, RD. Бывает.
6. Вообще обычно такие большие дисплеи идут уже с RGB управлением или скоростным последовательным.
Это предварительные соображения, картинки внимательно не смотрел еще. А вообще эта хрень, которая у Вас валит, чем-то напоминает мою из непобежденного странного экранчика. Я его было отложил, списав пока в предположительно неисправные, но сомнения меня гложут.
Tashkey, Старшие биты были посажены на GND на плате телефона. Тоже самое я сделал при подключении к Ардуино. Либо же наоборот, это младшие биты. Так или иначе, в телефоне использовались только питы 19-26, то есть 8 бит. А остальные биты я посадил на землю, как это было и в телефоне. На этот режим и настроем дисплей. Кстати, с подтяжкой к земле или без нее (болтание в воздухе) ответ от читалок был одинаковый.
Да, перемычка с резистором - 100% переключение битности. На последнем фото (справа-на-лево): Pin2 - Pin29, GND, Pin33, GND, IM(0)- который идет с перемычки.
На 16 бит не переключал, не пробовал. Надо попробовать, но я не знаю, Adafruit_id_reader читает 16-ти битные подключения?
Pin33 - это + питания.
Относительно Reseta и TE - как писал Slider: "на предполагаемых TE FMARK IM посмотрел бы светодиодом не появляется ли там лог.0". Я так и сделал. Светодиод постоянно горит только на 31-м пине.
Относительности целосности дисплея мне сложно что-то сказать с уверенностью. Телефон попал ко мне дохлый. Дисплей на вид не битый... но кто его знает... Жалко будет если он неисправный.
forfrends, если на телефоне посажен на GND - да, тогда все железно. И нет смысла пробовать переключать на 16 бит. А вот с сигналами управления я бы поэкспериментировал.
forfrends, даже не верится 5.6" - вот это размерчик , как и где выловили такой? еще и по 8 бит подключенным.
что у вас в логе
0180A = 08 08 08 08 08 08 08 08227 DB = 80 80 80 80 80 80 80 80 *****
думаю это хороший признак правильного подключения, осталось диспу послать некие команды чтоб он был сговорчивым,
где то вы уже встречали немного похожий лог, вот ваш лог с какого-то тож большого диспа (сохранил на всяк случай):
start... 1p 2p 3p 4p 5p 6p 7p 8parameter(byte) register 00 00 00 00 00 00 00 00 00 * register 00 00 00 00 00 00 00 00 00 * register 01 00 00 00 00 00 00 00 00 register 02 00 00 00 00 00 00 00 00 register 03 00 00 00 00 00 00 00 00 register 04 54 66 00 00 00 00 00 00 * register 05 00 00 00 00 00 00 00 00 register 06 00 00 00 00 00 00 00 00 register 07 00 00 00 00 00 00 00 00 register 08 00 00 00 00 00 00 00 00 register 09 00 00 00 00 00 00 00 00 register 0A 08 08 08 08 08 08 08 08 register 0B 00 00 00 00 00 00 00 00 register 0C 66 66 66 66 66 66 66 66 register 0D 00 00 00 00 00 00 00 00 register 0E 00 00 00 00 00 00 00 00 register 0F 00 00 00 00 00 00 00 00 register 10 00 00 00 00 00 00 00 00 register 11 00 00 00 00 00 00 00 00 register 12 00 00 00 00 00 00 00 00 register 13 00 00 00 00 00 00 00 00 register 14 00 00 00 00 00 00 00 00 register 15 00 00 00 00 00 00 00 00 register 16 00 00 00 00 00 00 00 00 register 17 00 00 00 00 00 00 00 00 register 18 00 00 00 00 00 00 00 00 register 19 00 00 00 00 00 00 00 00 register 1A 00 00 00 00 00 00 00 00 register 1B 00 00 00 00 00 00 00 00 register 1C 00 00 00 00 00 00 00 00 register 1D 00 00 00 00 00 00 00 00 register 1E 00 00 00 00 00 00 00 00 register 1F 00 00 00 00 00 00 00 00 register 20 00 00 00 00 00 00 00 00 register 21 00 00 00 00 00 00 00 00 register 22 00 00 00 00 00 00 00 00 register 23 00 00 00 00 00 00 00 00 register 24 00 00 00 00 00 00 00 00 register 25 00 00 00 00 00 00 00 00 register 26 00 00 00 00 00 00 00 00 register 27 00 00 00 00 00 00 00 00 register 28 00 00 00 00 00 00 00 00 register 29 00 00 00 00 00 00 00 00 register 2A 00 00 00 01 00 00 00 00 register 2B 00 00 00 01 00 00 00 00 register 2C 00 00 00 00 00 00 00 00 register 2D 00 00 00 00 00 00 00 00 register 2E 00 00 00 00 F0 70 00 00 register 2F 00 00 00 00 00 00 00 00 register 30 00 00 00 01 00 00 00 00 register 31 00 00 00 00 00 00 00 00 register 32 00 00 00 00 00 00 00 00 register 33 00 00 00 01 00 00 00 00 register 34 00 00 00 00 00 00 00 00 register 35 00 00 00 00 00 00 00 00 register 36 00 00 00 00 00 00 00 00 register 37 00 00 00 00 00 00 00 00 register 38 00 00 00 00 00 00 00 00 register 39 00 00 00 00 00 00 00 00 register 3A 66 66 66 66 66 66 66 66 register 3B 00 00 00 00 00 00 00 00 register 3C 00 00 00 00 00 00 00 00 register 3D 00 00 00 00 00 00 00 00 register 3E 00 68 00 00 00 00 F0 70 register 3F 00 00 00 00 00 00 00 00 register 40 00 00 00 00 00 00 00 00 register 41 00 00 00 00 00 00 00 00 register 42 00 00 00 00 00 00 00 00 register 43 00 00 00 00 00 00 00 00 register 44 00 00 00 00 00 00 00 00 register 45 00 00 00 00 00 00 00 00 register 46 00 00 00 00 00 00 00 00 register 47 00 00 00 00 00 00 00 00 register 48 00 00 00 00 00 00 00 00 register 49 00 00 00 00 00 00 00 00 register 4A 00 00 00 00 00 00 00 00 register 4B 00 00 00 00 00 00 00 00 register 4C 00 00 00 00 00 00 00 00 register 4D 00 00 00 00 00 00 00 00 register 4E 00 00 00 00 00 00 00 00 register 4F 00 00 00 00 00 00 00 00 register 50 00 00 00 00 00 00 00 00 register 51 00 00 00 00 00 00 00 00 register 52 00 00 00 00 00 00 00 00 register 53 00 00 00 00 00 00 00 00 register 54 00 00 00 00 00 00 00 00 register 55 00 00 00 00 00 00 00 00 register 56 00 00 00 00 00 00 00 00 register 57 00 00 00 00 00 00 00 00 register 58 00 00 00 00 00 00 00 00 register 59 00 00 00 00 00 00 00 00 register 5A 00 00 00 00 00 00 00 00 register 5B 00 00 00 00 00 00 00 00 register 5C 00 00 00 00 00 00 00 00 register 5D 00 00 00 00 00 00 00 00 register 5E 00 00 00 00 00 00 00 00 register 5F 00 00 00 00 00 00 00 00 register 60 00 00 00 00 00 00 00 00 register 61 00 00 00 00 00 00 00 00 register 62 00 00 00 00 00 00 00 00 register 63 00 00 00 00 00 00 00 00 register 64 00 00 00 00 00 00 00 00 register 65 00 00 00 00 00 00 00 00 register 66 00 00 00 00 00 00 00 00 register 67 00 00 00 00 00 00 00 00 register 68 00 00 00 00 00 00 00 00 register 69 00 00 00 00 00 00 00 00 register 6A 00 00 00 00 00 00 00 00 register 6B 00 00 00 00 00 00 00 00 register 6C 00 00 00 00 00 00 00 00 register 6D 00 00 00 00 00 00 00 00 register 6E 00 00 00 00 00 00 00 00 register 6F 00 00 00 00 00 00 00 00 register 70 00 00 00 00 00 00 00 00 register 71 00 00 00 00 00 00 00 00 register 72 00 00 00 00 00 00 00 00 register 73 00 00 00 00 00 00 00 00 register 74 00 00 00 00 00 00 00 00 register 75 00 00 00 00 00 00 00 00 register 76 00 00 00 00 00 00 00 00 register 77 00 00 00 00 00 00 00 00 register 78 00 00 00 00 00 00 00 00 register 79 00 00 00 00 00 00 00 00 register 7A 00 00 00 00 00 00 00 00 register 7B 00 00 00 00 00 00 00 00 register 7C 00 00 00 00 00 00 00 00 register 7D 00 00 00 00 00 00 00 00 register 7E 00 00 00 00 00 00 00 00 register 7F 00 00 00 00 00 00 00 00 register 80 00 00 00 00 00 00 00 00 register 81 00 00 00 00 00 00 00 00 register 82 00 00 00 00 00 00 00 00 register 83 00 00 00 00 00 00 00 00 register 84 00 00 00 00 00 00 00 00 register 85 00 00 00 00 00 00 00 00 register 86 00 00 00 00 00 00 00 00 register 87 00 00 00 00 00 00 00 00 register 88 00 00 00 00 00 00 00 00 register 89 00 00 00 00 00 00 00 00 register 8A 00 00 00 00 00 00 00 00 register 8B 00 00 00 00 00 00 00 00 register 8C 00 00 00 00 00 00 00 00 register 8D 00 00 00 00 00 00 00 00 register 8E 00 00 00 00 00 00 00 00 register 8F 00 00 00 00 00 00 00 00 register 90 00 00 00 00 00 00 00 00 register 91 00 00 00 00 00 00 00 00 register 92 00 00 00 00 00 00 00 00 register 93 00 00 00 00 00 00 00 00 register 94 00 00 00 00 00 00 00 00 register 95 00 00 00 00 00 00 00 00 register 96 00 00 00 00 00 00 00 00 register 97 00 00 00 00 00 00 00 00 register 98 00 00 00 00 00 00 00 00 register 99 00 00 00 00 00 00 00 00 register 9A 00 00 00 00 00 00 00 00 register 9B 00 00 00 00 00 00 00 00 register 9C 00 00 00 00 00 00 00 00 register 9D 00 00 00 00 00 00 00 00 register 9E 00 00 00 00 00 00 00 00 register 9F 00 00 00 00 00 00 00 00 register A0 00 00 00 00 00 00 00 00 register A1 00 00 00 00 00 00 00 00 register A2 00 00 00 00 00 00 00 00 register A3 00 00 00 00 00 00 00 00 register A4 00 00 00 00 00 00 00 00 register A5 00 00 00 00 00 00 00 00 register A6 00 00 00 00 00 00 00 00 register A7 00 00 00 00 00 00 00 00 register A8 00 00 00 00 00 00 00 00 register A9 00 00 00 00 00 00 00 00 register AA 00 00 00 00 00 00 00 00 register AB 00 00 00 00 00 00 00 00 register AC 00 00 00 00 00 00 00 00 register AD 00 00 00 00 00 00 00 00 register AE 00 00 00 00 00 00 00 00 register AF 00 00 00 00 00 00 00 00 register B0 00 00 00 00 00 00 00 00 register B1 B0 01 00 00 00 00 00 00 register B2 00 00 11 00 00 00 00 00 register B3 00 00 15 00 00 00 00 00 register B4 00 00 00 00 00 00 00 00 register B5 02 02 02 0A 00 00 00 00 register B6 02 02 02 00 00 00 00 00 register B7 06 06 06 06 06 06 06 06 register B8 00 00 00 00 00 00 00 00 register B9 00 00 00 00 00 00 00 00 register BA 00 00 00 00 00 00 00 00 register BB 00 00 00 00 00 00 00 00 register BC 00 00 00 00 00 00 00 00 register BD 00 00 00 00 00 00 00 00 register BE 00 00 00 00 00 00 00 00 register BF FF 14 00 00 00 00 00 00 * register C0 0E 00 00 00 00 00 00 00 register C1 04 04 00 00 00 00 00 00 register C2 33 33 33 33 33 33 33 33 register C3 33 33 33 33 33 33 33 33 register C4 33 33 33 33 33 33 33 33 register C5 00 00 00 00 00 00 00 00 register C6 00 00 00 00 00 00 00 00 register C7 00 00 00 00 00 00 00 00 register C8 00 00 00 00 00 00 00 00 register C9 00 00 00 00 00 00 00 00 register CA 00 00 00 00 00 00 00 00 register CB 00 00 00 00 00 00 00 00 register CC 00 00 00 00 00 00 00 00 register CD 00 00 00 00 00 00 00 00 register CE 00 00 00 00 00 00 00 00 register CF 00 00 00 00 00 00 00 00 register D0 00 00 00 00 00 00 00 00 register D1 00 00 00 00 00 00 00 00 register D2 00 00 00 00 00 00 00 00 register D3 00 00 86 00 00 00 00 00 * register D4 00 00 00 00 00 00 00 00 register D5 00 00 00 00 00 00 00 00 register D6 00 00 00 00 00 00 00 00 register D7 00 00 00 00 00 00 00 00 register D8 00 00 00 00 00 00 00 00 register D9 00 00 00 00 00 00 00 00 register DA 54 54 54 54 54 54 54 54 register DB 80 80 80 80 80 80 80 80 register DC 66 66 66 66 66 66 66 66 register DD 00 00 00 00 00 00 00 00 register DE 00 00 00 00 00 00 00 00 register DF 00 00 00 00 00 00 00 00 register E0 00 00 07 05 08 00 07 05 register E1 00 00 00 00 00 00 00 00 register E2 00 00 00 00 00 00 00 00 register E3 00 00 00 00 00 00 00 00 register E4 00 00 00 00 00 00 00 00 register E5 00 00 00 00 00 00 00 00 register E6 00 00 00 00 00 00 00 00 register E7 00 00 00 00 00 00 00 00 register E8 00 00 00 00 00 00 00 00 register E9 00 00 00 00 00 00 00 00 register EA 00 00 00 00 00 00 00 00 register EB 00 00 00 00 00 00 00 00 register EC 00 00 00 00 00 00 00 00 register ED 00 00 00 00 00 00 00 00 register EE 00 00 00 00 00 00 00 00 register EF 00 00 00 00 00 00 00 00 * register F0 00 00 00 00 00 00 00 00 register F1 00 00 00 00 00 00 00 00 register F2 00 00 00 00 00 00 00 00 register F3 00 00 00 00 00 00 00 00 register F4 00 00 00 00 00 00 00 00 register F5 00 00 00 00 00 00 00 00 register F6 00 00 00 00 00 00 00 00 register F7 00 00 00 00 00 00 00 00 register F8 00 00 00 00 00 00 00 00 register F9 00 00 00 00 00 00 00 00 register FA 00 00 00 00 00 00 00 00 register FB 00 00 00 00 00 00 00 00 register FC 00 00 00 00 00 00 00 00 register FD 00 00 00 00 00 00 00 00 register FE 00 00 00 00 00 00 00 00 register FF 01 01 00 00 00 00 00 00хотелось бы подключить 5.6".
в инете эти надписи на шлейфе не нашел.
таобао закрыли для посторонних . надо регаться.
нашел здесь рабочий поиск ,
попробуйте поскать на TFT LCD 5.6"
https://taobao-0.com/catalog.php?q=tft%20lcd%205.6"
https://www.baidu.com/s?ie=utf-8&f=8&rsv_bp=0&rsv_idx=1&tn=baidu&wd=tft%20lcd%205.6
где то в форуме мы выкладывали кто что нашел ссылки на сайты и продавцов на Али, где большой выбор голых диспов с документацией (там можно и по примерному размеру матрицы поискать, такой драйвер на разных рядом размерах может стоять). И если что, то даташит и инициализацию можно спросить у китайцев , а то с китайского хранилища они не доступны для скачивания (надо рейтинг) . Так что попробуйте поискать еще такими способами.
// найти живой тлф и просканить с него бы. Можно еще поискать на форумах по ремонту китайфонов, м.б. по применяющимся набору микросхем , а там и на выкладываемые прошивки выйти , и глянуть какой драйвер на дисп применяется.
/// киньте полноразмерные фото диспа, телефона , платы . хотелось бы глянуть на сие чудо :))) и что там за процник стоит.
/// и да кстати по поводу того немножко похожего лога,
register 04 54 66 00 00 00 00 00 00 *
среди своих тож нашел похожее
register 04 00 54 80 66
считывал на всяк случай все сразу 16бит
start... 1p 2p 3p 4p 5p 6p 7p 8parameter(byte) register 00 0000 0000 0000 0000 0000 0000 0000 0000 *** register 00 0000 0000 0000 0000 0000 0000 0000 0000 *** register 01 0000 0000 0000 0000 0000 0000 0000 0000 register 02 0000 0000 0000 0000 0000 0000 0000 0000 register 03 0000 0000 0000 0000 0000 0000 0000 0000 register 04 0000 0054 0080 0066 0000 0000 0000 0000 *** register 05 0000 0000 0000 0000 0000 0000 0000 0000 register 06 0000 0000 0000 0000 0000 0000 0000 0000 register 07 0000 0000 0000 0000 0000 0000 0000 0000 register 08 0000 0000 0000 0000 0000 0000 0000 0000 register 09 0000 0000 0061 0000 0000 0000 0000 0000 register 0A 0000 0008 0000 0000 0000 0000 0000 0000 register 0B 0000 0000 0000 0000 0000 0000 0000 0000 register 0C 0000 0066 0000 0000 0000 0000 0000 0000 register 0D 0000 0000 0000 0000 0000 0000 0000 0000 register 0E 0000 0000 0000 0000 0000 0000 0000 0000 register 0F 0000 0000 0000 0000 0000 0000 0000 0000 register 10 0000 0000 0000 0000 0000 0000 0000 0000 register 11 0000 0000 0000 0000 0000 0000 0000 0000 register 12 0000 0000 0000 0000 0000 0000 0000 0000 register 13 0000 0000 0000 0000 0000 0000 0000 0000 register 14 0000 0000 0000 0000 0000 0000 0000 0000 register 15 0000 0000 0000 0000 0000 0000 0000 0000 register 16 0000 0000 0000 0000 0000 0000 0000 0000 register 17 0000 0000 0000 0000 0000 0000 0000 0000 register 18 0000 0000 0000 0000 0000 0000 0000 0000 register 19 0000 0000 0000 0000 0000 0000 0000 0000 register 1A 0000 0000 0000 0000 0000 0000 0000 0000 register 1B 0000 0000 0000 0000 0000 0000 0000 0000 register 1C 0000 0000 0000 0000 0000 0000 0000 0000 register 1D 0000 0000 0000 0000 0000 0000 0000 0000 register 1E 0000 0000 0000 0000 0000 0000 0000 0000 register 1F 0000 0000 0000 0000 0000 0000 0000 0000 register 20 0000 0000 0000 0000 0000 0000 0000 0000 register 21 0000 0000 0000 0000 0000 0000 0000 0000 register 22 0000 0000 0000 0000 0000 0000 0000 0000 register 23 0000 0000 0000 0000 0000 0000 0000 0000 register 24 0000 0000 0000 0000 0000 0000 0000 0000 register 25 0000 0000 0000 0000 0000 0000 0000 0000 register 26 0000 0000 0000 0000 0000 0000 0000 0000 register 27 0000 0000 0000 0000 0000 0000 0000 0000 register 28 0000 0000 0000 0000 0000 0000 0000 0000 register 29 0000 0000 0000 0000 0000 0000 0000 0000 register 2A 0000 0000 0000 0000 0000 0000 0000 0000 register 2B 0000 0000 0000 0000 0000 0000 0000 0000 register 2C 0000 0000 0000 0000 0000 0000 0000 0000 register 2D 0000 0000 0000 0000 0000 0000 0000 0000 register 2E 0000 A8A8 A8A8 A8A8 A8A8 A8A8 A8A8 A8A8 register 2F 0000 0000 0000 0000 0000 0000 0000 0000 register 30 0000 0000 0000 0000 0000 0000 0000 0000 register 31 0000 0000 0000 0000 0000 0000 0000 0000 register 32 0000 0000 0000 0000 0000 0000 0000 0000 register 33 0000 0000 0000 0000 0000 0000 0000 0000 register 34 0000 0000 0000 0000 0000 0000 0000 0000 register 35 0000 0000 0000 0000 0000 0000 0000 0000 register 36 0000 0000 0000 0000 0000 0000 0000 0000 register 37 0000 0000 0000 0000 0000 0000 0000 0000 register 38 0000 0000 0000 0000 0000 0000 0000 0000 register 39 0000 0000 0000 0000 0000 0000 0000 0000 register 3A 0000 0000 0000 0000 0000 0000 0000 0000 register 3B 0000 0000 0000 0000 0000 0000 0000 0000 register 3C 0000 0000 0000 0000 0000 0000 0000 0000 register 3D 0000 0000 0000 0000 0000 0000 0000 0000 register 3E 0000 0000 00A8 A8A8 A8A8 A8A8 A8A8 A8A8 register 3F 0000 0000 0000 0000 0000 0000 0000 0000 register 40 0000 0000 0000 0000 0000 0000 0000 0000 register 41 0000 0000 0000 0000 0000 0000 0000 0000 register 42 0000 0000 0000 0000 0000 0000 0000 0000 register 43 0000 0000 0000 0000 0000 0000 0000 0000 register 44 0000 0000 0000 0000 0000 0000 0000 0000 register 45 0000 0000 0000 0000 0000 0000 0000 0000 register 46 0000 0000 0000 0000 0000 0000 0000 0000 register 47 0000 0000 0000 0000 0000 0000 0000 0000 register 48 0000 0000 0000 0000 0000 0000 0000 0000 register 49 0000 0000 0000 0000 0000 0000 0000 0000 register 4A 0000 0000 0000 0000 0000 0000 0000 0000 register 4B 0000 0000 0000 0000 0000 0000 0000 0000 register 4C 0000 0000 0000 0000 0000 0000 0000 0000 register 4D 0000 0000 0000 0000 0000 0000 0000 0000 register 4E 0000 0000 0000 0000 0000 0000 0000 0000 register 4F 0000 0000 0000 0000 0000 0000 0000 0000 register 50 0000 0000 0000 0000 0000 0000 0000 0000 register 51 0000 0000 0000 0000 0000 0000 0000 0000 register 52 0000 0000 0000 0000 0000 0000 0000 0000 register 53 0000 0000 0000 0000 0000 0000 0000 0000 register 54 0000 0000 0000 0000 0000 0000 0000 0000 register 55 0000 0000 0000 0000 0000 0000 0000 0000 register 56 0000 0000 0000 0000 0000 0000 0000 0000 register 57 0000 0000 0000 0000 0000 0000 0000 0000 register 58 0000 0000 0000 0000 0000 0000 0000 0000 register 59 0000 0000 0000 0000 0000 0000 0000 0000 register 5A 0000 0000 0000 0000 0000 0000 0000 0000 register 5B 0000 0000 0000 0000 0000 0000 0000 0000 register 5C 0000 0000 0000 0000 0000 0000 0000 0000 register 5D 0000 0000 0000 0000 0000 0000 0000 0000 register 5E 0000 0000 0000 0000 0000 0000 0000 0000 register 5F 0000 0000 0000 0000 0000 0000 0000 0000 register 60 0000 0000 0000 0000 0000 0000 0000 0000 register 61 0000 0000 0000 0000 0000 0000 0000 0000 register 62 0000 0000 0000 0000 0000 0000 0000 0000 register 63 0000 0000 0000 0000 0000 0000 0000 0000 register 64 0000 0000 0000 0000 0000 0000 0000 0000 register 65 0000 0000 0000 0000 0000 0000 0000 0000 register 66 0000 0000 0000 0000 0000 0000 0000 0000 register 67 0000 0000 0000 0000 0000 0000 0000 0000 register 68 0000 0000 0000 0000 0000 0000 0000 0000 register 69 0000 0000 0000 0000 0000 0000 0000 0000 register 6A 0000 0000 0000 0000 0000 0000 0000 0000 register 6B 0000 0000 0000 0000 0000 0000 0000 0000 register 6C 0000 0000 0000 0000 0000 0000 0000 0000 register 6D 0000 0000 0000 0000 0000 0000 0000 0000 register 6E 0000 0000 0000 0000 0000 0000 0000 0000 register 6F 0000 0000 0000 0000 0000 0000 0000 0000 register 70 0000 0000 0000 0000 0000 0000 0000 0000 register 71 0000 0000 0000 0000 0000 0000 0000 0000 register 72 0000 0000 0000 0000 0000 0000 0000 0000 register 73 0000 0000 0000 0000 0000 0000 0000 0000 register 74 0000 0000 0000 0000 0000 0000 0000 0000 register 75 0000 0000 0000 0000 0000 0000 0000 0000 register 76 0000 0000 0000 0000 0000 0000 0000 0000 register 77 0000 0000 0000 0000 0000 0000 0000 0000 register 78 0000 0000 0000 0000 0000 0000 0000 0000 register 79 0000 0000 0000 0000 0000 0000 0000 0000 register 7A 0000 0000 0000 0000 0000 0000 0000 0000 register 7B 0000 0000 0000 0000 0000 0000 0000 0000 register 7C 0000 0000 0000 0000 0000 0000 0000 0000 register 7D 0000 0000 0000 0000 0000 0000 0000 0000 register 7E 0000 0000 0000 0000 0000 0000 0000 0000 register 7F 0000 0000 0000 0000 0000 0000 0000 0000 register 80 0000 0000 0000 0000 0000 0000 0000 0000 register 81 0000 0000 0000 0000 0000 0000 0000 0000 register 82 0000 0000 0000 0000 0000 0000 0000 0000 register 83 0000 0000 0000 0000 0000 0000 0000 0000 register 84 0000 0000 0000 0000 0000 0000 0000 0000 register 85 0000 0000 0000 0000 0000 0000 0000 0000 register 86 0000 0000 0000 0000 0000 0000 0000 0000 register 87 0000 0000 0000 0000 0000 0000 0000 0000 register 88 0000 0000 0000 0000 0000 0000 0000 0000 register 89 0000 0000 0000 0000 0000 0000 0000 0000 register 8A 0000 0000 0000 0000 0000 0000 0000 0000 register 8B 0000 0000 0000 0000 0000 0000 0000 0000 register 8C 0000 0000 0000 0000 0000 0000 0000 0000 register 8D 0000 0000 0000 0000 0000 0000 0000 0000 register 8E 0000 0000 0000 0000 0000 0000 0000 0000 register 8F 0000 0000 0000 0000 0000 0000 0000 0000 register 90 0000 0000 0000 0000 0000 0000 0000 0000 register 91 0000 0000 0000 0000 0000 0000 0000 0000 register 92 0000 0000 0000 0000 0000 0000 0000 0000 register 93 0000 0000 0000 0000 0000 0000 0000 0000 register 94 0000 0000 0000 0000 0000 0000 0000 0000 register 95 0000 0000 0000 0000 0000 0000 0000 0000 register 96 0000 0000 0000 0000 0000 0000 0000 0000 register 97 0000 0000 0000 0000 0000 0000 0000 0000 register 98 0000 0000 0000 0000 0000 0000 0000 0000 register 99 0000 0000 0000 0000 0000 0000 0000 0000 register 9A 0000 0000 0000 0000 0000 0000 0000 0000 register 9B 0000 0000 0000 0000 0000 0000 0000 0000 register 9C 0000 0000 0000 0000 0000 0000 0000 0000 register 9D 0000 0000 0000 0000 0000 0000 0000 0000 register 9E 0000 0000 0000 0000 0000 0000 0000 0000 register 9F 0000 0000 0000 0000 0000 0000 0000 0000 register A0 0000 0000 0000 0000 0000 0000 0000 0000 register A1 0000 0093 0030 0093 0030 00FF 00FF 00FF register A2 0000 0000 0000 0000 0000 0000 0000 0000 register A3 0000 0000 0000 0000 0000 0000 0000 0000 register A4 0000 0000 0000 0000 0000 0000 0000 0000 register A5 0000 0000 0000 0000 0000 0000 0000 0000 register A6 0000 0000 0000 0000 0000 0000 0000 0000 register A7 0000 0000 0000 0000 0000 0000 0000 0000 register A8 0000 0000 0000 0000 0000 00FF 00FF 00FF register A9 0000 0000 0000 0000 0000 0000 0000 0000 register AA 0000 0000 0000 0000 0000 0000 0000 0000 register AB 0000 0000 0000 0000 0000 0000 0000 0000 register AC 0000 0000 0000 0000 0000 0000 0000 0000 register AD 0000 0000 0000 0000 0000 0000 0000 0000 register AE 0000 0000 0000 0000 0000 0000 0000 0000 register AF 0000 0000 0000 0000 0000 0000 0000 0000 register B0 0000 0000 0000 0000 0000 0000 0000 0000 register B1 0000 00B0 0011 0011 0011 0011 0011 0011 register B2 0000 0000 0011 0011 0011 0011 0011 0011 register B3 0000 0000 0011 0011 0011 0011 0011 0011 register B4 0000 0000 0000 0000 0000 0000 0000 0000 register B5 0000 0002 0002 000A 0004 0004 0004 0004 register B6 0000 0002 0002 003B 003B 003B 003B 003B register B7 0000 0006 0006 0006 0006 0006 0006 0006 register B8 0000 0000 0000 0000 0000 0000 0000 0000 register B9 0000 0000 0000 0000 0000 0000 0000 0000 register BA 0000 0000 0000 0000 0000 0000 0000 0000 register BB 0000 0000 0000 0000 0000 0000 0000 0000 register BC 0000 0000 0000 0000 0000 0000 0000 0000 register BD 0000 0000 0000 0000 0000 0000 0000 0000 register BE 0000 0000 0000 0000 0000 0000 0000 0000 register BF 0000 0000 0000 0000 0000 0000 0000 0000 *** register C0 0000 000E 000E 000E 000E 000E 000E 000E register C1 0000 0044 0000 0000 0000 0000 0000 0000 register C2 0000 0033 0033 0033 0033 0033 0033 0033 register C3 0000 0033 0033 0033 0033 0033 0033 0033 register C4 0000 0033 0033 0033 0033 0033 0033 0033 register C5 0000 0000 0060 0000 0060 0060 0060 0060 register C6 0000 00E0 0001 0001 0001 0001 0001 0001 register C7 0000 00FF 00FF 00FF 00FF 00FF 00FF 00FF register C8 0000 0000 0000 0000 0000 0000 0000 0000 register C9 0000 00BB 00BB 00BB 00BB 00BB 00BB 00BB register CA 0000 000B 000B 000B 000B 000B 000B 000B register CB 0000 00A8 00A8 00A8 00A8 00A8 00A8 00A8 register CC 0000 0004 0004 0004 0004 0004 0004 0004 register CD 0000 0043 0043 0043 0043 0043 0043 0043 register CE 0000 0002 0002 0002 0002 0002 0002 0002 register CF 0000 0018 0018 0018 0018 0018 0018 0018 register D0 0000 0000 0000 0000 0000 0000 0000 0000 register D1 0000 0000 0000 0000 0000 0000 0000 0000 register D2 0000 0000 0000 0000 0000 0000 0000 0000 register D3 0000 0000 0094 0086 0086 0086 0086 0086 *** register D4 0000 0000 0000 0000 0000 0000 0000 0000 register D5 0000 0000 0000 0000 0000 0000 0000 0000 register D6 0000 0000 0000 0000 0000 0000 0000 0000 register D7 0000 0000 0000 0000 0000 0000 0000 0000 register D8 0000 0000 0000 0000 0000 0000 0000 0000 register D9 0000 0000 0000 0000 0000 0000 0000 0000 register DA 0000 0054 0000 0000 0000 0000 0000 0000 *** register DB 0000 0080 0000 0000 0000 0000 0000 0000 *** register DC 0000 0066 0000 0000 0000 0000 0000 0000 *** register DD 0000 0000 0000 0000 0000 0000 0000 0000 register DE 0000 0000 0000 0000 0000 0000 0000 0000 register DF 0000 0000 0000 0000 0000 0000 0000 0000 register E0 0000 000F 0024 001C 000A 000F 0008 0043 register E1 0000 000F 0038 0030 0009 000F 000F 004E register E2 0000 0000 0000 0000 0000 0000 0000 0000 register E3 0000 0000 0000 0000 0000 0000 0000 0000 register E4 0000 0003 0003 0003 0003 0003 0003 0003 register E5 0000 0070 0070 0070 0070 0070 0070 0070 register E6 0000 0000 0000 0000 0000 0000 0000 0000 register E7 0000 004C 004C 004C 004C 004C 004C 004C register E8 0000 0044 0044 0044 0044 0044 0044 0044 register E9 0000 0000 0000 0000 0000 0000 0000 0000 register EA 0000 0004 0004 0004 0004 0004 0004 0004 register EB 0000 0000 0080 0001 0001 0001 0001 0001 register EC 0000 0000 0000 0000 0000 0000 0000 0000 register ED 0000 0000 0000 0000 0000 0000 0000 0000 register EE 0000 002A 002A 002A 002A 002A 002A 002A register EF 0000 0080 0000 0010 0060 0040 0010 0000 *** register F0 0000 000A 0007 0007 0007 0007 0007 0007 register F1 0000 0036 0004 0000 003C 000F 008F 0004 register F2 0000 0018 00A3 0012 0002 00B2 0012 00FF register F3 0000 0012 0040 0000 0000 0000 0000 0000 register F4 0000 0000 0000 0008 0091 0004 0004 0004 register F5 0000 0000 0000 0000 0000 0000 0000 0088 register F6 0000 0054 0080 0066 0066 0066 0066 0066 register F7 0000 00A9 0091 002D 000A 004C 0000 0000 register F8 0000 0021 0007 0002 0000 0000 0000 0000 register F9 0000 0000 0000 0000 0000 0000 0000 0000 register FA 0000 0000 0000 0000 0000 0000 0000 0000 register FB 0000 0000 0000 0000 0000 0000 0000 0000 register FC 0000 0000 0009 0080 0007 0007 0007 0007 register FD 0000 0001 00FF 0001 00FF 0001 00FF 0001 register FE 0000 0001 00FF 0001 00FF 0001 00FF 0001 register FF 0000 0000 0000 0000 0000 0000 0000 0000 1p 2p 3p 4p 5p 6p 7p 8parameter(byte) register 00 00 00 00 00 00 00 00 00 *** register 00 00 00 00 00 00 00 00 00 *** register 01 00 00 00 00 00 00 00 00 register 02 00 00 00 00 00 00 00 00 register 03 00 00 00 00 00 00 00 00 register 04 00 00 80 00 00 00 00 00 *** register 05 00 00 00 00 00 00 00 00 register 06 00 00 00 00 00 00 00 00 register 07 00 00 00 00 00 00 00 00 register 08 00 00 00 00 00 00 00 00 register 09 00 00 71 00 00 00 00 00 register 0A 00 08 00 00 00 00 00 00 register 0B 00 00 00 00 00 00 00 00 register 0C 00 07 00 00 00 00 00 00 register 0D 00 00 00 00 00 00 00 00 register 0E 00 00 00 00 00 00 00 00 register 0F 00 00 00 00 00 00 00 00 register 10 00 00 00 00 00 00 00 00 register 11 00 00 00 00 00 00 00 00 register 12 00 00 00 00 00 00 00 00 register 13 00 00 00 00 00 00 00 00 register 14 00 00 00 00 00 00 00 00 register 15 00 00 00 00 00 00 00 00 register 16 00 00 00 00 00 00 00 00 register 17 00 00 00 00 00 00 00 00 register 18 00 00 00 00 00 00 00 00 register 19 00 00 00 00 00 00 00 00 register 1A 00 00 00 00 00 00 00 00 register 1B 00 00 00 00 00 00 00 00 register 1C 00 00 00 00 00 00 00 00 register 1D 00 00 00 00 00 00 00 00 register 1E 00 00 00 00 00 00 00 00 register 1F 00 00 00 00 00 00 00 00 register 20 00 00 00 00 00 00 00 00 register 21 00 00 00 00 00 00 00 00 register 22 00 00 00 00 00 00 00 00 register 23 00 00 00 00 00 00 00 00 register 24 00 00 00 00 00 00 00 00 register 25 00 00 00 00 00 00 00 00 register 26 00 00 00 00 00 00 00 00 register 27 00 00 00 00 00 00 00 00 register 28 00 00 00 00 00 00 00 00 register 29 00 00 00 00 00 00 00 00 register 2A 00 00 00 00 00 00 00 00 register 2B 00 00 00 00 00 00 00 00 register 2C 00 00 00 00 00 00 00 00 register 2D 00 00 00 00 00 00 00 00 register 2E 00 1C 5A DC 93 DA B3 E0 register 2F 00 00 00 00 00 00 00 00 register 30 00 00 00 00 00 00 00 00 register 31 00 00 00 00 00 00 00 00 register 32 00 00 00 00 00 00 00 00 register 33 00 00 00 00 00 00 00 00 register 34 00 00 00 00 00 00 00 00 register 35 00 00 00 00 00 00 00 00 register 36 00 00 00 00 00 00 00 00 register 37 00 00 00 00 00 00 00 00 register 38 00 00 00 00 00 00 00 00 register 39 00 00 00 00 00 00 00 00 register 3A 00 00 00 00 00 00 00 00 register 3B 00 00 00 00 00 00 00 00 register 3C 00 00 00 00 00 00 00 00 register 3D 00 00 00 00 00 00 00 00 register 3E 00 1C 5A DC 93 DA B3 E0 register 3F 00 00 00 00 00 00 00 00 register 40 00 00 00 00 00 00 00 00 register 41 00 00 00 00 00 00 00 00 register 42 00 00 00 00 00 00 00 00 register 43 00 00 00 00 00 00 00 00 register 44 00 00 00 00 00 00 00 00 register 45 00 00 00 00 00 00 00 00 register 46 00 00 00 00 00 00 00 00 register 47 00 00 00 00 00 00 00 00 register 48 00 00 00 00 00 00 00 00 register 49 00 00 00 00 00 00 00 00 register 4A 00 00 00 00 00 00 00 00 register 4B 00 00 00 00 00 00 00 00 register 4C 00 00 00 00 00 00 00 00 register 4D 00 00 00 00 00 00 00 00 register 4E 00 00 00 00 00 00 00 00 register 4F 00 00 00 00 00 00 00 00 register 50 00 00 00 00 00 00 00 00 register 51 00 00 00 00 00 00 00 00 register 52 00 00 00 00 00 00 00 00 register 53 00 00 00 00 00 00 00 00 register 54 00 00 00 00 00 00 00 00 register 55 00 00 00 00 00 00 00 00 register 56 00 00 00 00 00 00 00 00 register 57 00 00 00 00 00 00 00 00 register 58 00 00 00 00 00 00 00 00 register 59 00 00 00 00 00 00 00 00 register 5A 00 00 00 00 00 00 00 00 register 5B 00 00 00 00 00 00 00 00 register 5C 00 00 00 00 00 00 00 00 register 5D 00 00 00 00 00 00 00 00 register 5E 00 00 00 00 00 00 00 00 register 5F 00 00 00 00 00 00 00 00 register 60 00 00 00 00 00 00 00 00 register 61 00 00 00 00 00 00 00 00 register 62 00 00 00 00 00 00 00 00 register 63 00 00 00 00 00 00 00 00 register 64 00 00 00 00 00 00 00 00 register 65 00 00 00 00 00 00 00 00 register 66 00 00 00 00 00 00 00 00 register 67 00 00 00 00 00 00 00 00 register 68 00 00 00 00 00 00 00 00 register 69 00 00 00 00 00 00 00 00 register 6A 00 00 00 00 00 00 00 00 register 6B 00 00 00 00 00 00 00 00 register 6C 00 00 00 00 00 00 00 00 register 6D 00 00 00 00 00 00 00 00 register 6E 00 00 00 00 00 00 00 00 register 6F 00 00 00 00 00 00 00 00 register 70 00 00 00 00 00 00 00 00 register 71 00 00 00 00 00 00 00 00 register 72 00 00 00 00 00 00 00 00 register 73 00 00 00 00 00 00 00 00 register 74 00 00 00 00 00 00 00 00 register 75 00 00 00 00 00 00 00 00 register 76 00 00 00 00 00 00 00 00 register 77 00 00 00 00 00 00 00 00 register 78 00 00 00 00 00 00 00 00 register 79 00 00 00 00 00 00 00 00 register 7A 00 00 00 00 00 00 00 00 register 7B 00 00 00 00 00 00 00 00 register 7C 00 00 00 00 00 00 00 00 register 7D 00 00 00 00 00 00 00 00 register 7E 00 00 00 00 00 00 00 00 register 7F 00 00 00 00 00 00 00 00 register 80 00 00 00 00 00 00 00 00 register 81 00 00 00 00 00 00 00 00 register 82 00 00 00 00 00 00 00 00 register 83 00 00 00 00 00 00 00 00 register 84 00 00 00 00 00 00 00 00 register 85 00 00 00 00 00 00 00 00 register 86 00 00 00 00 00 00 00 00 register 87 00 00 00 00 00 00 00 00 register 88 00 00 00 00 00 00 00 00 register 89 00 00 00 00 00 00 00 00 register 8A 00 00 00 00 00 00 00 00 register 8B 00 00 00 00 00 00 00 00 register 8C 00 00 00 00 00 00 00 00 register 8D 00 00 00 00 00 00 00 00 register 8E 00 00 00 00 00 00 00 00 register 8F 00 00 00 00 00 00 00 00 register 90 00 00 00 00 00 00 00 00 register 91 00 00 00 00 00 00 00 00 register 92 00 00 00 00 00 00 00 00 register 93 00 00 00 00 00 00 00 00 register 94 00 00 00 00 00 00 00 00 register 95 00 00 00 00 00 00 00 00 register 96 00 00 00 00 00 00 00 00 register 97 00 00 00 00 00 00 00 00 register 98 00 00 00 00 00 00 00 00 register 99 00 00 00 00 00 00 00 00 register 9A 00 00 00 00 00 00 00 00 register 9B 00 00 00 00 00 00 00 00 register 9C 00 00 00 00 00 00 00 00 register 9D 00 00 00 00 00 00 00 00 register 9E 00 00 00 00 00 00 00 00 register 9F 00 00 00 00 00 00 00 00 register A0 00 00 00 00 00 00 00 00 register A1 00 00 00 00 00 FF FF FF register A2 00 00 00 00 00 00 00 00 register A3 00 00 00 00 00 00 00 00 register A4 00 00 00 00 00 00 00 00 register A5 00 00 00 00 00 00 00 00 register A6 00 00 00 00 00 00 00 00 register A7 00 00 00 00 00 00 00 00 register A8 00 00 00 00 00 FF FF FF register A9 00 00 00 00 00 00 00 00 register AA 00 00 00 00 00 00 00 00 register AB 00 00 00 00 00 00 00 00 register AC 00 00 00 00 00 00 00 00 register AD 00 00 00 00 00 00 00 00 register AE 00 00 00 00 00 00 00 00 register AF 00 00 00 00 00 00 00 00 register B0 B0 B0 B0 B0 B0 B0 B0 B0 register B1 B1 B1 B1 B1 B1 B1 B1 B1 register B2 B2 B2 B2 B2 B2 B2 B2 B2 register B3 B3 B3 B3 B3 B3 B3 B3 B3 register B4 B4 B4 B4 B4 B4 B4 B4 B4 register B5 B5 B5 B5 B5 B5 B5 B5 B5 register B6 B6 B6 B6 B6 B6 B6 B6 B6 register B7 B7 B7 B7 B7 B7 B7 B7 B7 register B8 B8 B8 B8 B8 B8 B8 B8 B8 register B9 B9 B9 B9 B9 B9 B9 B9 B9 register BA BA BA BA BA BA BA BA BA register BB BB BB BB BB BB BB BB BB register BC BC BC BC BC BC BC BC BC register BD BD BD BD BD BD BD BD BD register BE BE BE BE BE BE BE BE BE register BF BF BF BF BF BF BF BF BF *** register C0 C0 C0 C0 C0 C0 C0 C0 C0 register C1 C1 C1 C1 C1 C1 C1 C1 C1 register C2 C2 C2 C2 C2 C2 C2 C2 C2 register C3 C3 C3 C3 C3 C3 C3 C3 C3 register C4 C4 C4 C4 C4 C4 C4 C4 C4 register C5 C5 C5 C5 C5 C5 C5 C5 C5 register C6 C6 C6 C6 C6 C6 C6 C6 C6 register C7 C7 C7 C7 C7 C7 C7 C7 C7 register C8 C8 C8 C8 C8 C8 C8 C8 C8 register C9 C9 C9 C9 C9 C9 C9 C9 C9 register CA CA CA CA CA CA CA CA CA register CB CB CB CB CB CB CB CB CB register CC CC CC CC CC CC CC CC CC register CD CD CD CD CD CD CD CD CD register CE CE CE CE CE CE CE CE CE register CF CF CF CF CF CF CF CF CF register D0 D0 D0 D0 D0 D0 D0 D0 D0 register D1 D1 D1 D1 D1 D1 D1 D1 D1 register D2 D2 D2 D2 D2 D2 D2 D2 D2 register D3 00 00 98 26 00 00 00 00 *** register D4 D4 D4 D4 D4 D4 D4 D4 D4 register D5 D5 D5 D5 D5 D5 D5 D5 D5 register D6 D6 D6 D6 D6 D6 D6 D6 D6 register D7 D7 D7 D7 D7 D7 D7 D7 D7 register D8 D8 D8 D8 D8 D8 D8 D8 D8 register D9 D9 D9 D9 D9 D9 D9 D9 D9 register DA 00 00 00 00 00 00 00 00 *** register DB 00 80 00 00 00 00 00 00 *** register DC 00 00 00 00 00 00 00 00 *** register DD DD DD DD DD DD DD DD DD register DE DE DE DE DE DE DE DE DE register DF DF DF DF DF DF DF DF DF register E0 E0 E0 E0 E0 E0 E0 E0 E0 register E1 E1 E1 E1 E1 E1 E1 E1 E1 register E2 E2 E2 E2 E2 E2 E2 E2 E2 register E3 E3 E3 E3 E3 E3 E3 E3 E3 register E4 E4 E4 E4 E4 E4 E4 E4 E4 register E5 E5 E5 E5 E5 E5 E5 E5 E5 register E6 E6 E6 E6 E6 E6 E6 E6 E6 register E7 E7 E7 E7 E7 E7 E7 E7 E7 register E8 E8 E8 E8 E8 E8 E8 E8 E8 register E9 E9 E9 E9 E9 E9 E9 E9 E9 register EA EA EA EA EA EA EA EA EA register EB EB EB EB EB EB EB EB EB register EC EC EC EC EC EC EC EC EC register ED ED ED ED ED ED ED ED ED register EE EE EE EE EE EE EE EE EE register EF EF EF EF EF EF EF EF EF *** register F0 F0 F0 F0 F0 F0 F0 F0 F0 register F1 F1 F1 F1 F1 F1 F1 F1 F1 register F2 F2 F2 F2 F2 F2 F2 F2 F2 register F3 F3 F3 F3 F3 F3 F3 F3 F3 register F4 F4 F4 F4 F4 F4 F4 F4 F4 register F5 F5 F5 F5 F5 F5 F5 F5 F5 register F6 F6 F6 F6 F6 F6 F6 F6 F6 register F7 F7 F7 F7 F7 F7 F7 F7 F7 register F8 F8 F8 F8 F8 F8 F8 F8 F8 register F9 F9 F9 F9 F9 F9 F9 F9 F9 register FA FA FA FA FA FA FA FA FA register FB FB FB FB FB FB FB FB FB register FC FC FC FC FC FC FC FC FC register FD FD FD FD FD FD FD FD FD register FE FE FE FE FE FE FE FE FE register FF 00 00 00 00 00 00 00 00поиcкал теперь в гугле 0x548066 и столько всего нашел , даже ардуино скетч для разного железа
https://github.com/Bodmer/TFT_eSPI/blob/master/examples/320%20x%20240/Read_ID_bitbash/Read_ID_bitbash.ino
и буквально месяц назад инфа про 0x548066 ili9488 320x480 :
http://forum.armfly.com/forum.php?mod=viewthread&tid=89735 , (а ранее ILI9163C 128x128 0x548066)
Смысл того , что если ничего не получиться , то можно отложить на полгодика , и попробовать потом еще поискать , мож кто чего уже выложит в инет.
Если есть тело телефона, то посмотри какой процессор на нем стоит. Поищи в нете даташит на процессор. Если
даташит найдется, то сдувай процессор и прозванивай плату. Пару раз так делал.
croc19 Плата есть. Стоит процессор Spreadtrum SC6531C. Рядом с ним обычная флешка 25Q128FWPM. Вот у меня мысль возникла, если флешка рабочая, то на ней должна быть прошивка, верно? Может попробовать прочитать содержимое флешки и попробовать поковырять прошивку в поисках инита?
Кстати, а если сдуть процессор то что это даст? Как прозвонка поможет? Просто я не знаю что это даст.
Фото платы телефона (сенсор временно отпаял, чтобы не мешал):
На экране проца была наклейка. На ней надписи:
P1302 DHX V1.1 20140117 3324
JR1402019 4+BT+FM+R+6531C
P1302 SMT 4BAND (?) дальше не разобрать... и в конце: 128+0
slider, вот это ты даешь! В хорошем смысле :) Я перешел по твоим ссылкам... как ты там разбираешься??? Понимаю, опыт... у меня его нет, по этому ни на Таобао ни на Байду я не нашел ничего похожего на мой дисплей...
по поводу ранее сохраненного лога, то скорее всего это был 4" дисплей с контроллером ILI9488: http://arduino.ru/forum/apparatnye-voprosy/arduino-i-displei-ot-sotikov-mobilnykh-telefonov?page=6#comment-272285
Но могу и ошибаться...
Во... , с фото и надо было начитать !!!
эт же RM68180 480x800 !!! ( м.б. с родни NT35510, NT35510S, HX8379-A, NT35512, OTM8009A, OTM8018B, RM68171, RM68180 )
https://www.google.ru/search?q=rm68180&oq=rm68180&aqs=chrome..69i57.9263j0j7&sourceid=chrome&ie=UTF-8
инит если pdf не найдется , то можно у продавца спросить https://ru.aliexpress.com/item/3-97-inch-38PIN-TFT-LCD-Screen-COG-RM68180-Drive-IC-480-800-No-Touch/32601017470.html
// а что там понимать то , в Хроме , правой кнопкой мышки - Перевести на русский . и вверху справа есть
//// RM68180 init code
www.pudn.com > LM68180driver.zip > lcd_rm68180_wvga.c, change:2015-05-18,size:28278b
/* * Copyright (C) 2012 Spreadtrum Communications Inc. * * This software is licensed under the terms of the GNU General Public * License version 2, as published by the Free Software Foundation, and * may be copied, distributed, and modified under those terms. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. */ #include "boat_lcdc_inc.h" #define LCD_PANEL_ID_RM68180 0x1868 #define BOAT_CODE 1 //#define LCD_DEBUG #ifdef LCD_DEBUG #ifdef BOAR_DRV_LCD_IN_KERNEL #define LCD_PRINT printk #else #define LCD_PRINT printf #endif #else #define LCD_PRINT(...) #endif static int32_t rm68180_init(struct panel_spec *self) { send_cmd_t write_command=self->info.mcu->ops->send_cmd; //send_data_t write_data=self->info.mcu->ops->send_data; send_cmd_data_t write_cmd_data = self->info.mcu->ops->send_cmd_data; //read_data_t read_data = self->info.mcu->ops->read_data; #if BOAT_CODE printf("This is test node\n"); write_cmd_data(0xF000,0x55); write_cmd_data(0xF001,0xAA); write_cmd_data(0xF002,0x52); write_cmd_data(0xF003,0x08); write_cmd_data(0xF004,0x01); write_cmd_data(0xB000,0x0d); write_cmd_data(0xB001,0x0d); write_cmd_data(0xB002,0x0d); write_cmd_data(0xB100,0x0c); write_cmd_data(0xB101,0x0c); write_cmd_data(0xB600,0x34); write_cmd_data(0xB601,0x34); write_cmd_data(0xB602,0x34); write_cmd_data(0xB700,0x34); write_cmd_data(0xB701,0x34); write_cmd_data(0xB702,0x34); write_cmd_data(0xB800,0x24); write_cmd_data(0xB801,0x24); write_cmd_data(0xB802,0x24); write_cmd_data(0xB900,0x34); write_cmd_data(0xB901,0x34); write_cmd_data(0xB902,0x34); write_cmd_data(0xBA00,0x14); write_cmd_data(0xBA01,0x14); write_cmd_data(0xBA02,0x14); write_cmd_data(0xBC00,0x00); write_cmd_data(0xBC01,0x98); write_cmd_data(0xBC02,0x00); write_cmd_data(0xBD00,0x00); write_cmd_data(0xBD01,0x98); write_cmd_data(0xBD02,0x00); write_cmd_data(0xBE00,0x00); write_cmd_data(0xBE01,0X68); write_cmd_data(0xCC00,0x05); write_cmd_data(0xD100,0x00); write_cmd_data(0xD101,0x00); write_cmd_data(0xD102,0x00); write_cmd_data(0xD103,0x06); write_cmd_data(0xD104,0x00); write_cmd_data(0xD105,0x1A); write_cmd_data(0xD106,0x00); write_cmd_data(0xD107,0x3F); write_cmd_data(0xD108,0x00); write_cmd_data(0xD109,0x66); write_cmd_data(0xD10A,0x00); write_cmd_data(0xD10B,0xAD); write_cmd_data(0xD10C,0x00); write_cmd_data(0xD10D,0xE1); write_cmd_data(0xD10E,0x01); write_cmd_data(0xD10F,0x29); write_cmd_data(0xD110,0x01); write_cmd_data(0xD111,0x58); write_cmd_data(0xD112,0x01); write_cmd_data(0xD113,0x97); write_cmd_data(0xD114,0x01); write_cmd_data(0xD115,0xC2); write_cmd_data(0xD116,0x01); write_cmd_data(0xD117,0xFF); write_cmd_data(0xD118,0x02); write_cmd_data(0xD119,0x2D); write_cmd_data(0xD11A,0x02); write_cmd_data(0xD11B,0x2F); write_cmd_data(0xD11C,0x02); write_cmd_data(0xD11D,0x58); write_cmd_data(0xD11E,0x02); write_cmd_data(0xD11F,0x81); write_cmd_data(0xD120,0x02); write_cmd_data(0xD121,0x98); write_cmd_data(0xD122,0x02); write_cmd_data(0xD123,0xB3); write_cmd_data(0xD124,0x02); write_cmd_data(0xD125,0xC4); write_cmd_data(0xD126,0x02); write_cmd_data(0xD127,0xDB); write_cmd_data(0xD128,0x02); write_cmd_data(0xD129,0xE9); write_cmd_data(0xD12A,0x02); write_cmd_data(0xD12B,0xFD); write_cmd_data(0xD12C,0x03); write_cmd_data(0xD12D,0x0B); write_cmd_data(0xD12E,0x03); write_cmd_data(0xD12F,0x21); write_cmd_data(0xD130,0x03); write_cmd_data(0xD131,0x55); write_cmd_data(0xD132,0x03); write_cmd_data(0xD133,0xF8); write_cmd_data(0xD200,0x00); write_cmd_data(0xD201,0x00); write_cmd_data(0xD202,0x00); write_cmd_data(0xD203,0x06); write_cmd_data(0xD204,0x00); write_cmd_data(0xD205,0x1A); write_cmd_data(0xD206,0x00); write_cmd_data(0xD207,0x3F); write_cmd_data(0xD208,0x00); write_cmd_data(0xD209,0x66); write_cmd_data(0xD20A,0x00); write_cmd_data(0xD20B,0xAD); write_cmd_data(0xD20C,0x00); write_cmd_data(0xD20D,0xE1); write_cmd_data(0xD20E,0x01); write_cmd_data(0xD20F,0x29); write_cmd_data(0xD210,0x01); write_cmd_data(0xD211,0x58); write_cmd_data(0xD212,0x01); write_cmd_data(0xD213,0x97); write_cmd_data(0xD214,0x01); write_cmd_data(0xD215,0xC2); write_cmd_data(0xD216,0x01); write_cmd_data(0xD217,0xFF); write_cmd_data(0xD218,0x02); write_cmd_data(0xD219,0x2D); write_cmd_data(0xD21A,0x02); write_cmd_data(0xD21B,0x2F); write_cmd_data(0xD21C,0x02); write_cmd_data(0xD21D,0x58); write_cmd_data(0xD21E,0x02); write_cmd_data(0xD21F,0x81); write_cmd_data(0xD220,0x02); write_cmd_data(0xD221,0x98); write_cmd_data(0xD222,0x02); write_cmd_data(0xD223,0xB3); write_cmd_data(0xD224,0x02); write_cmd_data(0xD225,0xC4); write_cmd_data(0xD226,0x02); write_cmd_data(0xD227,0xDB); write_cmd_data(0xD228,0x02); write_cmd_data(0xD229,0xE9); write_cmd_data(0xD22A,0x02); write_cmd_data(0xD22B,0xFD); write_cmd_data(0xD22C,0x03); write_cmd_data(0xD22D,0x0B); write_cmd_data(0xD22E,0x03); write_cmd_data(0xD22F,0x21); write_cmd_data(0xD230,0x03); write_cmd_data(0xD231,0x55); write_cmd_data(0xD232,0x03); write_cmd_data(0xD233,0xF8); write_cmd_data(0xD300,0x00); write_cmd_data(0xD301,0x00); write_cmd_data(0xD302,0x00); write_cmd_data(0xD303,0x06); write_cmd_data(0xD304,0x00); write_cmd_data(0xD305,0x1A); write_cmd_data(0xD306,0x00); write_cmd_data(0xD307,0x3F); write_cmd_data(0xD308,0x00); write_cmd_data(0xD309,0x66); write_cmd_data(0xD30A,0x00); write_cmd_data(0xD30B,0xAD); write_cmd_data(0xD30C,0x00); write_cmd_data(0xD30D,0xE1); write_cmd_data(0xD30E,0x01); write_cmd_data(0xD30F,0x29); write_cmd_data(0xD310,0x01); write_cmd_data(0xD311,0x58); write_cmd_data(0xD312,0x01); write_cmd_data(0xD313,0x97); write_cmd_data(0xD314,0x01); write_cmd_data(0xD315,0xC2); write_cmd_data(0xD316,0x01); write_cmd_data(0xD317,0xFF); write_cmd_data(0xD318,0x02); write_cmd_data(0xD319,0x2D); write_cmd_data(0xD31A,0x02); write_cmd_data(0xD31B,0x2F); write_cmd_data(0xD31C,0x02); write_cmd_data(0xD31D,0x58); write_cmd_data(0xD31E,0x02); write_cmd_data(0xD31F,0x81); write_cmd_data(0xD320,0x02); write_cmd_data(0xD321,0x98); write_cmd_data(0xD322,0x02); write_cmd_data(0xD323,0xB3); write_cmd_data(0xD324,0x02); write_cmd_data(0xD325,0xC4); write_cmd_data(0xD326,0x02); write_cmd_data(0xD327,0xDB); write_cmd_data(0xD328,0x02); write_cmd_data(0xD329,0xE9); write_cmd_data(0xD32A,0x02); write_cmd_data(0xD32B,0xFD); write_cmd_data(0xD32C,0x03); write_cmd_data(0xD32D,0x0B); write_cmd_data(0xD32E,0x03); write_cmd_data(0xD32F,0x21); write_cmd_data(0xD330,0x03); write_cmd_data(0xD331,0x55); write_cmd_data(0xD332,0x03); write_cmd_data(0xD333,0xF8); write_cmd_data(0xD400,0x00); write_cmd_data(0xD401,0x00); write_cmd_data(0xD402,0x00); write_cmd_data(0xD403,0x06); write_cmd_data(0xD404,0x00); write_cmd_data(0xD405,0x1A); write_cmd_data(0xD406,0x00); write_cmd_data(0xD407,0x3F); write_cmd_data(0xD408,0x00); write_cmd_data(0xD409,0x66); write_cmd_data(0xD40A,0x00); write_cmd_data(0xD40B,0xAD); write_cmd_data(0xD40C,0x00); write_cmd_data(0xD40D,0xE1); write_cmd_data(0xD40E,0x01); write_cmd_data(0xD40F,0x29); write_cmd_data(0xD410,0x01); write_cmd_data(0xD411,0x58); write_cmd_data(0xD412,0x01); write_cmd_data(0xD413,0x97); write_cmd_data(0xD414,0x01); write_cmd_data(0xD415,0xC2); write_cmd_data(0xD416,0x01); write_cmd_data(0xD417,0xFF); write_cmd_data(0xD418,0x02); write_cmd_data(0xD419,0x2D); write_cmd_data(0xD41A,0x02); write_cmd_data(0xD41B,0x2F); write_cmd_data(0xD41C,0x02); write_cmd_data(0xD41D,0x58); write_cmd_data(0xD41E,0x02); write_cmd_data(0xD41F,0x81); write_cmd_data(0xD420,0x02); write_cmd_data(0xD421,0x98); write_cmd_data(0xD422,0x02); write_cmd_data(0xD423,0xB3); write_cmd_data(0xD424,0x02); write_cmd_data(0xD425,0xC4); write_cmd_data(0xD426,0x02); write_cmd_data(0xD427,0xDB); write_cmd_data(0xD428,0x02); write_cmd_data(0xD429,0xE9); write_cmd_data(0xD42A,0x02); write_cmd_data(0xD42B,0xFD); write_cmd_data(0xD42C,0x03); write_cmd_data(0xD42D,0x0B); write_cmd_data(0xD42E,0x03); write_cmd_data(0xD42F,0x21); write_cmd_data(0xD430,0x03); write_cmd_data(0xD431,0x55); write_cmd_data(0xD432,0x03); write_cmd_data(0xD433,0xF8); write_cmd_data(0xD500,0x00); write_cmd_data(0xD501,0x00); write_cmd_data(0xD502,0x00); write_cmd_data(0xD503,0x06); write_cmd_data(0xD504,0x00); write_cmd_data(0xD505,0x1A); write_cmd_data(0xD506,0x00); write_cmd_data(0xD507,0x3F); write_cmd_data(0xD508,0x00); write_cmd_data(0xD509,0x66); write_cmd_data(0xD50A,0x00); write_cmd_data(0xD50B,0xAD); write_cmd_data(0xD50C,0x00); write_cmd_data(0xD50D,0xE1); write_cmd_data(0xD50E,0x01); write_cmd_data(0xD50F,0x29); write_cmd_data(0xD510,0x01); write_cmd_data(0xD511,0x58); write_cmd_data(0xD512,0x01); write_cmd_data(0xD513,0x97); write_cmd_data(0xD514,0x01); write_cmd_data(0xD515,0xC2); write_cmd_data(0xD516,0x01); write_cmd_data(0xD517,0xFF); write_cmd_data(0xD518,0x02); write_cmd_data(0xD519,0x2D); write_cmd_data(0xD51A,0x02); write_cmd_data(0xD51B,0x2F); write_cmd_data(0xD51C,0x02); write_cmd_data(0xD51D,0x58); write_cmd_data(0xD51E,0x02); write_cmd_data(0xD51F,0x81); write_cmd_data(0xD520,0x02); write_cmd_data(0xD521,0x98); write_cmd_data(0xD522,0x02); write_cmd_data(0xD523,0xB3); write_cmd_data(0xD524,0x02); write_cmd_data(0xD525,0xC4); write_cmd_data(0xD526,0x02); write_cmd_data(0xD527,0xDB); write_cmd_data(0xD528,0x02); write_cmd_data(0xD529,0xE9); write_cmd_data(0xD52A,0x02); write_cmd_data(0xD52B,0xFD); write_cmd_data(0xD52C,0x03); write_cmd_data(0xD52D,0x0B); write_cmd_data(0xD52E,0x03); write_cmd_data(0xD52F,0x21); write_cmd_data(0xD530,0x03); write_cmd_data(0xD531,0x55); write_cmd_data(0xD532,0x03); write_cmd_data(0xD533,0xF8); write_cmd_data(0xD600,0x00); write_cmd_data(0xD601,0x00); write_cmd_data(0xD602,0x00); write_cmd_data(0xD603,0x06); write_cmd_data(0xD604,0x00); write_cmd_data(0xD605,0x1A); write_cmd_data(0xD606,0x00); write_cmd_data(0xD607,0x3F); write_cmd_data(0xD608,0x00); write_cmd_data(0xD609,0x66); write_cmd_data(0xD60A,0x00); write_cmd_data(0xD60B,0xAD); write_cmd_data(0xD60C,0x00); write_cmd_data(0xD60D,0xE1); write_cmd_data(0xD60E,0x01); write_cmd_data(0xD60F,0x29); write_cmd_data(0xD610,0x01); write_cmd_data(0xD611,0x58); write_cmd_data(0xD612,0x01); write_cmd_data(0xD613,0x97); write_cmd_data(0xD614,0x01); write_cmd_data(0xD615,0xC2); write_cmd_data(0xD616,0x01); write_cmd_data(0xD617,0xFF); write_cmd_data(0xD618,0x02); write_cmd_data(0xD619,0x2D); write_cmd_data(0xD61A,0x02); write_cmd_data(0xD61B,0x2F); write_cmd_data(0xD61C,0x02); write_cmd_data(0xD61D,0x58); write_cmd_data(0xD61E,0x02); write_cmd_data(0xD61F,0x81); write_cmd_data(0xD620,0x02); write_cmd_data(0xD621,0x98); write_cmd_data(0xD622,0x02); write_cmd_data(0xD623,0xB3); write_cmd_data(0xD624,0x02); write_cmd_data(0xD625,0xC4); write_cmd_data(0xD626,0x02); write_cmd_data(0xD627,0xDB); write_cmd_data(0xD628,0x02); write_cmd_data(0xD629,0xE9); write_cmd_data(0xD62A,0x02); write_cmd_data(0xD62B,0xFD); write_cmd_data(0xD62C,0x03); write_cmd_data(0xD62D,0x0B); write_cmd_data(0xD62E,0x03); write_cmd_data(0xD62F,0x21); write_cmd_data(0xD630,0x03); write_cmd_data(0xD631,0x55); write_cmd_data(0xD632,0x03); write_cmd_data(0xD633,0xF8); write_cmd_data(0xF000,0x55); write_cmd_data(0xF001,0xAA); write_cmd_data(0xF002,0x52); write_cmd_data(0xF003,0x08); write_cmd_data(0xF004,0x00); write_cmd_data(0xB400,0x10); write_cmd_data(0xB600,0x01); write_cmd_data(0xBA00,0x01); write_cmd_data(0xB100,0xFC); write_cmd_data(0xB800,0x01); write_cmd_data(0xB801,0x04); write_cmd_data(0xB802,0x04); write_cmd_data(0xB803,0x04); write_cmd_data(0xBC00,0x00); write_cmd_data(0xBC01,0x00); write_cmd_data(0xBC02,0x00); write_cmd_data(0xC900,0xC0); write_cmd_data(0xC901,0x01); write_cmd_data(0x3A00,0x55); write_cmd_data(0xF000,0x55); write_cmd_data(0xF001,0xAA); write_cmd_data(0xF002,0x52); write_cmd_data(0xF003,0x08); write_cmd_data(0xF004,0x02); write_cmd_data(0xF600,0x60); write_cmd_data(0x3500,0x00); write_cmd_data(0x3600,0x00); write_cmd_data(0x4400,0x01); write_cmd_data(0x4401,0x22); write_cmd_data(0x1100,0x00); LCD_DelayMS(120); write_cmd_data(0x2900,0x00); LCD_DelayMS(120); printf("Buddy[%s]The end init\n",__FUNCTION__); #else write_cmd_data(0xF000,0x55); write_cmd_data(0xF001,0xAA); write_cmd_data(0xF002,0x52); write_cmd_data(0xF003,0x08); write_cmd_data(0xF004,0x01); write_cmd_data(0xB000,0x0d); write_cmd_data(0xB001,0x0d); write_cmd_data(0xB002,0x0d); write_cmd_data(0xB100,0x0c); write_cmd_data(0xB101,0x0c); write_cmd_data(0xB600,0x34); write_cmd_data(0xB601,0x34); write_cmd_data(0xB602,0x34); write_cmd_data(0xB700,0x34); write_cmd_data(0xB701,0x34); write_cmd_data(0xB702,0x34); write_cmd_data(0xB800,0x24); write_cmd_data(0xB801,0x24); write_cmd_data(0xB802,0x24); write_cmd_data(0xB900,0x34); write_cmd_data(0xB901,0x34); write_cmd_data(0xB902,0x34); write_cmd_data(0xBA00,0x14); write_cmd_data(0xBA01,0x14); write_cmd_data(0xBA02,0x14); write_cmd_data(0xBC00,0x00); write_cmd_data(0xBC01,0x98); write_cmd_data(0xBC02,0x00); write_cmd_data(0xBD00,0x00); write_cmd_data(0xBD01,0x98); write_cmd_data(0xBD02,0x00); write_cmd_data(0xBE00,0x00); write_cmd_data(0xBE01,0X68); write_cmd_data(0xCC00,0x05); write_cmd_data(0xD100,0x00); write_cmd_data(0xD101,0x00); write_cmd_data(0xD102,0x00); write_cmd_data(0xD103,0x06); write_cmd_data(0xD104,0x00); write_cmd_data(0xD105,0x1A); write_cmd_data(0xD106,0x00); write_cmd_data(0xD107,0x3F); write_cmd_data(0xD108,0x00); write_cmd_data(0xD109,0x66); write_cmd_data(0xD10A,0x00); write_cmd_data(0xD10B,0xAD); write_cmd_data(0xD10C,0x00); write_cmd_data(0xD10D,0xE1); write_cmd_data(0xD10E,0x01); write_cmd_data(0xD10F,0x29); write_cmd_data(0xD110,0x01); write_cmd_data(0xD111,0x58); write_cmd_data(0xD112,0x01); write_cmd_data(0xD113,0x97); write_cmd_data(0xD114,0x01); write_cmd_data(0xD115,0xC2); write_cmd_data(0xD116,0x01); write_cmd_data(0xD117,0xFF); write_cmd_data(0xD118,0x02); write_cmd_data(0xD119,0x2D); write_cmd_data(0xD11A,0x02); write_cmd_data(0xD11B,0x2F); write_cmd_data(0xD11C,0x02); write_cmd_data(0xD11D,0x58); write_cmd_data(0xD11E,0x02); write_cmd_data(0xD11F,0x81); write_cmd_data(0xD120,0x02); write_cmd_data(0xD121,0x98); write_cmd_data(0xD122,0x02); write_cmd_data(0xD123,0xB3); write_cmd_data(0xD124,0x02); write_cmd_data(0xD125,0xC4); write_cmd_data(0xD126,0x02); write_cmd_data(0xD127,0xDB); write_cmd_data(0xD128,0x02); write_cmd_data(0xD129,0xE9); write_cmd_data(0xD12A,0x02); write_cmd_data(0xD12B,0xFD); write_cmd_data(0xD12C,0x03); write_cmd_data(0xD12D,0x0B); write_cmd_data(0xD12E,0x03); write_cmd_data(0xD12F,0x21); write_cmd_data(0xD130,0x03); write_cmd_data(0xD131,0x55); write_cmd_data(0xD132,0x03); write_cmd_data(0xD133,0xF8); write_cmd_data(0xD200,0x00); write_cmd_data(0xD201,0x00); write_cmd_data(0xD202,0x00); write_cmd_data(0xD203,0x06); write_cmd_data(0xD204,0x00); write_cmd_data(0xD205,0x1A); write_cmd_data(0xD206,0x00); write_cmd_data(0xD207,0x3F); write_cmd_data(0xD208,0x00); write_cmd_data(0xD209,0x66); write_cmd_data(0xD20A,0x00); write_cmd_data(0xD20B,0xAD); write_cmd_data(0xD20C,0x00); write_cmd_data(0xD20D,0xE1); write_cmd_data(0xD20E,0x01); write_cmd_data(0xD20F,0x29); write_cmd_data(0xD210,0x01); write_cmd_data(0xD211,0x58); write_cmd_data(0xD212,0x01); write_cmd_data(0xD213,0x97); write_cmd_data(0xD214,0x01); write_cmd_data(0xD215,0xC2); write_cmd_data(0xD216,0x01); write_cmd_data(0xD217,0xFF); write_cmd_data(0xD218,0x02); write_cmd_data(0xD219,0x2D); write_cmd_data(0xD21A,0x02); write_cmd_data(0xD21B,0x2F); write_cmd_data(0xD21C,0x02); write_cmd_data(0xD21D,0x58); write_cmd_data(0xD21E,0x02); write_cmd_data(0xD21F,0x81); write_cmd_data(0xD220,0x02); write_cmd_data(0xD221,0x98); write_cmd_data(0xD222,0x02); write_cmd_data(0xD223,0xB3); write_cmd_data(0xD224,0x02); write_cmd_data(0xD225,0xC4); write_cmd_data(0xD226,0x02); write_cmd_data(0xD227,0xDB); write_cmd_data(0xD228,0x02); write_cmd_data(0xD229,0xE9); write_cmd_data(0xD22A,0x02); write_cmd_data(0xD22B,0xFD); write_cmd_data(0xD22C,0x03); write_cmd_data(0xD22D,0x0B); write_cmd_data(0xD22E,0x03); write_cmd_data(0xD22F,0x21); write_cmd_data(0xD230,0x03); write_cmd_data(0xD231,0x55); write_cmd_data(0xD232,0x03); write_cmd_data(0xD233,0xF8); write_cmd_data(0xD300,0x00); write_cmd_data(0xD301,0x00); write_cmd_data(0xD302,0x00); write_cmd_data(0xD303,0x06); write_cmd_data(0xD304,0x00); write_cmd_data(0xD305,0x1A); write_cmd_data(0xD306,0x00); write_cmd_data(0xD307,0x3F); write_cmd_data(0xD308,0x00); write_cmd_data(0xD309,0x66); write_cmd_data(0xD30A,0x00); write_cmd_data(0xD30B,0xAD); write_cmd_data(0xD30C,0x00); write_cmd_data(0xD30D,0xE1); write_cmd_data(0xD30E,0x01); write_cmd_data(0xD30F,0x29); write_cmd_data(0xD310,0x01); write_cmd_data(0xD311,0x58); write_cmd_data(0xD312,0x01); write_cmd_data(0xD313,0x97); write_cmd_data(0xD314,0x01); write_cmd_data(0xD315,0xC2); write_cmd_data(0xD316,0x01); write_cmd_data(0xD317,0xFF); write_cmd_data(0xD318,0x02); write_cmd_data(0xD319,0x2D); write_cmd_data(0xD31A,0x02); write_cmd_data(0xD31B,0x2F); write_cmd_data(0xD31C,0x02); write_cmd_data(0xD31D,0x58); write_cmd_data(0xD31E,0x02); write_cmd_data(0xD31F,0x81); write_cmd_data(0xD320,0x02); write_cmd_data(0xD321,0x98); write_cmd_data(0xD322,0x02); write_cmd_data(0xD323,0xB3); write_cmd_data(0xD324,0x02); write_cmd_data(0xD325,0xC4); write_cmd_data(0xD326,0x02); write_cmd_data(0xD327,0xDB); write_cmd_data(0xD328,0x02); write_cmd_data(0xD329,0xE9); write_cmd_data(0xD32A,0x02); write_cmd_data(0xD32B,0xFD); write_cmd_data(0xD32C,0x03); write_cmd_data(0xD32D,0x0B); write_cmd_data(0xD32E,0x03); write_cmd_data(0xD32F,0x21); write_cmd_data(0xD330,0x03); write_cmd_data(0xD331,0x55); write_cmd_data(0xD332,0x03); write_cmd_data(0xD333,0xF8); write_cmd_data(0xD400,0x00); write_cmd_data(0xD401,0x00); write_cmd_data(0xD402,0x00); write_cmd_data(0xD403,0x06); write_cmd_data(0xD404,0x00); write_cmd_data(0xD405,0x1A); write_cmd_data(0xD406,0x00); write_cmd_data(0xD407,0x3F); write_cmd_data(0xD408,0x00); write_cmd_data(0xD409,0x66); write_cmd_data(0xD40A,0x00); write_cmd_data(0xD40B,0xAD); write_cmd_data(0xD40C,0x00); write_cmd_data(0xD40D,0xE1); write_cmd_data(0xD40E,0x01); write_cmd_data(0xD40F,0x29); write_cmd_data(0xD410,0x01); write_cmd_data(0xD411,0x58); write_cmd_data(0xD412,0x01); write_cmd_data(0xD413,0x97); write_cmd_data(0xD414,0x01); write_cmd_data(0xD415,0xC2); write_cmd_data(0xD416,0x01); write_cmd_data(0xD417,0xFF); write_cmd_data(0xD418,0x02); write_cmd_data(0xD419,0x2D); write_cmd_data(0xD41A,0x02); write_cmd_data(0xD41B,0x2F); write_cmd_data(0xD41C,0x02); write_cmd_data(0xD41D,0x58); write_cmd_data(0xD41E,0x02); write_cmd_data(0xD41F,0x81); write_cmd_data(0xD420,0x02); write_cmd_data(0xD421,0x98); write_cmd_data(0xD422,0x02); write_cmd_data(0xD423,0xB3); write_cmd_data(0xD424,0x02); write_cmd_data(0xD425,0xC4); write_cmd_data(0xD426,0x02); write_cmd_data(0xD427,0xDB); write_cmd_data(0xD428,0x02); write_cmd_data(0xD429,0xE9); write_cmd_data(0xD42A,0x02); write_cmd_data(0xD42B,0xFD); write_cmd_data(0xD42C,0x03); write_cmd_data(0xD42D,0x0B); write_cmd_data(0xD42E,0x03); write_cmd_data(0xD42F,0x21); write_cmd_data(0xD430,0x03); write_cmd_data(0xD431,0x55); write_cmd_data(0xD432,0x03); write_cmd_data(0xD433,0xF8); write_cmd_data(0xD500,0x00); write_cmd_data(0xD501,0x00); write_cmd_data(0xD502,0x00); write_cmd_data(0xD503,0x06); write_cmd_data(0xD504,0x00); write_cmd_data(0xD505,0x1A); write_cmd_data(0xD506,0x00); write_cmd_data(0xD507,0x3F); write_cmd_data(0xD508,0x00); write_cmd_data(0xD509,0x66); write_cmd_data(0xD50A,0x00); write_cmd_data(0xD50B,0xAD); write_cmd_data(0xD50C,0x00); write_cmd_data(0xD50D,0xE1); write_cmd_data(0xD50E,0x01); write_cmd_data(0xD50F,0x29); write_cmd_data(0xD510,0x01); write_cmd_data(0xD511,0x58); write_cmd_data(0xD512,0x01); write_cmd_data(0xD513,0x97); write_cmd_data(0xD514,0x01); write_cmd_data(0xD515,0xC2); write_cmd_data(0xD516,0x01); write_cmd_data(0xD517,0xFF); write_cmd_data(0xD518,0x02); write_cmd_data(0xD519,0x2D); write_cmd_data(0xD51A,0x02); write_cmd_data(0xD51B,0x2F); write_cmd_data(0xD51C,0x02); write_cmd_data(0xD51D,0x58); write_cmd_data(0xD51E,0x02); write_cmd_data(0xD51F,0x81); write_cmd_data(0xD520,0x02); write_cmd_data(0xD521,0x98); write_cmd_data(0xD522,0x02); write_cmd_data(0xD523,0xB3); write_cmd_data(0xD524,0x02); write_cmd_data(0xD525,0xC4); write_cmd_data(0xD526,0x02); write_cmd_data(0xD527,0xDB); write_cmd_data(0xD528,0x02); write_cmd_data(0xD529,0xE9); write_cmd_data(0xD52A,0x02); write_cmd_data(0xD52B,0xFD); write_cmd_data(0xD52C,0x03); write_cmd_data(0xD52D,0x0B); write_cmd_data(0xD52E,0x03); write_cmd_data(0xD52F,0x21); write_cmd_data(0xD530,0x03); write_cmd_data(0xD531,0x55); write_cmd_data(0xD532,0x03); write_cmd_data(0xD533,0xF8); write_cmd_data(0xD600,0x00); write_cmd_data(0xD601,0x00); write_cmd_data(0xD602,0x00); write_cmd_data(0xD603,0x06); write_cmd_data(0xD604,0x00); write_cmd_data(0xD605,0x1A); write_cmd_data(0xD606,0x00); write_cmd_data(0xD607,0x3F); write_cmd_data(0xD608,0x00); write_cmd_data(0xD609,0x66); write_cmd_data(0xD60A,0x00); write_cmd_data(0xD60B,0xAD); write_cmd_data(0xD60C,0x00); write_cmd_data(0xD60D,0xE1); write_cmd_data(0xD60E,0x01); write_cmd_data(0xD60F,0x29); write_cmd_data(0xD610,0x01); write_cmd_data(0xD611,0x58); write_cmd_data(0xD612,0x01); write_cmd_data(0xD613,0x97); write_cmd_data(0xD614,0x01); write_cmd_data(0xD615,0xC2); write_cmd_data(0xD616,0x01); write_cmd_data(0xD617,0xFF); write_cmd_data(0xD618,0x02); write_cmd_data(0xD619,0x2D); write_cmd_data(0xD61A,0x02); write_cmd_data(0xD61B,0x2F); write_cmd_data(0xD61C,0x02); write_cmd_data(0xD61D,0x58); write_cmd_data(0xD61E,0x02); write_cmd_data(0xD61F,0x81); write_cmd_data(0xD620,0x02); write_cmd_data(0xD621,0x98); write_cmd_data(0xD622,0x02); write_cmd_data(0xD623,0xB3); write_cmd_data(0xD624,0x02); write_cmd_data(0xD625,0xC4); write_cmd_data(0xD626,0x02); write_cmd_data(0xD627,0xDB); write_cmd_data(0xD628,0x02); write_cmd_data(0xD629,0xE9); write_cmd_data(0xD62A,0x02); write_cmd_data(0xD62B,0xFD); write_cmd_data(0xD62C,0x03); write_cmd_data(0xD62D,0x0B); write_cmd_data(0xD62E,0x03); write_cmd_data(0xD62F,0x21); write_cmd_data(0xD630,0x03); write_cmd_data(0xD631,0x55); write_cmd_data(0xD632,0x03); write_cmd_data(0xD633,0xF8); write_cmd_data(0xF000,0x55); write_cmd_data(0xF001,0xAA); write_cmd_data(0xF002,0x52); write_cmd_data(0xF003,0x08); write_cmd_data(0xF004,0x00); write_cmd_data(0xB400,0x10); write_cmd_data(0xB600,0x01); write_cmd_data(0xBA00,0x01); write_cmd_data(0xB100,0xFC); write_cmd_data(0xB800,0x01); write_cmd_data(0xB801,0x04); write_cmd_data(0xB802,0x04); write_cmd_data(0xB803,0x04); write_cmd_data(0xBC00,0x00); write_cmd_data(0xBC01,0x00); write_cmd_data(0xBC02,0x00); write_cmd_data(0xC900,0xC0); write_cmd_data(0xC901,0x01); write_cmd_data(0x3A00,0x77); write_cmd_data(0xF000,0x55); write_cmd_data(0xF001,0xAA); write_cmd_data(0xF002,0x52); write_cmd_data(0xF003,0x08); write_cmd_data(0xF004,0x02); write_cmd_data(0xF600,0x60); write_cmd_data(0x3500,0x00); write_cmd_data(0x3600,0x00); write_cmd_data(0x4400,0x01); write_cmd_data(0x4401,0x22); write_cmd_data(0x1100,0x00); LCD_DelayMS(120); write_cmd_data(0x2900,0x00); LCD_DelayMS(120); write_command(0x2c00); LCD_DelayMS(50); #endif return 0; } static int32_t rm68180_enter_sleep(struct panel_spec *self, uint8_t is_sleep) { send_cmd_t write_command=self->info.mcu->ops->send_cmd; //send_data_t write_data=self->info.mcu->ops->send_data; //send_cmd_data_t write_cmd_data = self->info.mcu->ops->send_cmd_data; //read_data_t read_data = self->info.mcu->ops->read_data; printf("Buddy[%s]The end init\n",__FUNCTION__); LCD_PRINT("rm68180_enter_sleep is_sleep=%x\n",is_sleep); if(is_sleep==1){ //Sleep In write_command(0x2800); LCD_DelayMS(50); write_command(0x1000); }else{ //Sleep Out #if 0 write_command(0x1100); LCD_DelayMS(120); write_command(0x2900); LCD_DelayMS(10); #else self->ops->panel_init(self); #endif } //self->ops->panel_readid(self); return 0; } static int32_t rm68180_set_window(struct panel_spec *self, uint16_t left, uint16_t top, uint16_t right, uint16_t bottom) { send_cmd_t write_command=self->info.mcu->ops->send_cmd; //send_data_t write_data=self->info.mcu->ops->send_data; send_cmd_data_t write_cmd_data = self->info.mcu->ops->send_cmd_data; //read_data_t read_data = self->info.mcu->ops->read_data; printf("Buddy[%s]The end init\n",__FUNCTION__); write_cmd_data( 0x2A00,(left >> 8)); write_cmd_data( 0x2A01,(left & 0xff)); write_cmd_data( 0x2A02,(right >> 8)); write_cmd_data( 0x2A03,(right & 0xff)); write_cmd_data( 0x2B00,(top >> 8)); write_cmd_data( 0x2B01,(top & 0xff)); write_cmd_data( 0x2B02,(bottom >> 8)); write_cmd_data( 0x2B03,(bottom & 0xff)); write_command( 0x2C00); return 0; } static int32_t rm68180_invalidate(struct panel_spec *self) { printf("Buddy[%s]The end init\n",__FUNCTION__); return self->ops->panel_set_window(self, 0, 0, self->width - 1, self->height - 1); } static int32_t rm68180_invalidate_rect(struct panel_spec *self, uint16_t left, uint16_t top, uint16_t right, uint16_t bottom) { printf("Buddy[%s]The end init\n",__FUNCTION__); return self->ops->panel_set_window(self, left, top, right, bottom); } static uint32_t rm68180_read_id(struct panel_spec *self) { uint8_t id[6]; uint32_t dev_id; #if 0 printf("Buddy[%s]The end init\n",__FUNCTION__); send_cmd_t write_command=self->info.mcu->ops->send_cmd; //send_data_t write_data=self->info.mcu->ops->send_data; send_cmd_data_t write_cmd_data = self->info.mcu->ops->send_cmd_data; read_data_t read_data = self->info.mcu->ops->read_data; write_cmd_data( 0xf000,0x55); write_cmd_data( 0xf001,0xaa); write_cmd_data( 0xf002,0x52); write_cmd_data( 0xf003,0x08); // D3 Mannfacture command enable write_cmd_data( 0xf004,0x01); // D0 Page LCD_DelayMS(10); /* C500h :ID41 0x18 C501h :ID42 0x68 */ write_command(0xc500); id[0] = read_data(); id[1] = read_data(); write_command(0xc501); id[2] = read_data(); id[3] = read_data(); dev_id = (id[3]<<8)|id[1]; // 0x6818 printf(" rm68180_read dev_id=0x%04x id[4]={0x%02x,0x%02x,0x%02x,0x%02x}\n",dev_id,id[0],id[1],id[2],id[3]); //dev_id = LCD_PANEL_ID_RM68180; return dev_id; #endif return 0x1868; } static struct panel_operations lcd_rm68180_mcu_operations = { .panel_init = rm68180_init, .panel_set_window = rm68180_set_window, .panel_invalidate_rect= rm68180_invalidate_rect, .panel_invalidate = rm68180_invalidate, .panel_enter_sleep = rm68180_enter_sleep, .panel_readid = rm68180_read_id }; static struct timing_mcu lcd_rm68180_mcu_timing[] = { [0] = { // read/write register timing .rcss = 50, .rlpw = 100, .rhpw = 100, .wcss = 30, .wlpw = 50, .whpw = 50, }, [1] = { // read/write gram timing .rcss = 25, .rlpw = 70, .rhpw = 70, .wcss = 10, .wlpw = 10, .whpw = 10, }, }; static struct info_mcu lcd_rm68180_mcu_info = { .bus_mode = LCD_BUS_8080, .bus_width = 16, .bpp = 16, .timing =lcd_rm68180_mcu_timing, .ops = NULL, }; struct panel_spec lcd_rm68180_mcu_spec = { .width = 480, .height = 800, .fps = 60, .type = LCD_MODE_MCU, .direction = LCD_DIRECT_NORMAL, .info = {.mcu = &lcd_rm68180_mcu_info}, .ops = &lcd_rm68180_mcu_operations, };http://read.pudn.com/downloads703/sourcecode/embedded/2827900/kernel/drivers/video/sprdfb/lcd/lcd_rm68180_wvga.c__.htm
нашел инит через гугл и дальше по файлам прошивки
http://en.pudn.com/Download/item/id/2827900.html http://en.pudn.com/Download/item/id/1934785.html
// м.б. в этот конфиг для mipi, надо проверять на диспе.
//// еще init code rm68180 у народа получилось
http://bbs.elecfans.com/jishu_521566_1_8.html
Ну вот и сдвинулось. Смотри даташит на контроллер дисплея и подключай. Пробуй инит.
В крайнем случае сдувай кирпич с платы. Под ним контакты. Если найдешь даташит на кирпич, то
в нем есть распиновка, какие ноги за что отвечают. И прозваниваешь их и контакты дисплея на плате.
Соответственно получаешь распиновку дисплея.
спросил доки RM68180 pdf datasheet 480x800 480x864 у продавца на его дисп с темже контроллером (брал у него как-то разные микро диспы OLED для интересненького проекта)
он прислал, файлы скопировал сюда https://yadi.sk/d/4AekYUdLCvyk2Q
rm68180 code init
/* Copyright Statement: * * This software/firmware and related documentation ("MediaTek Software") are * protected under relevant copyright laws. The information contained herein * is confidential and proprietary to MediaTek Inc. and/or its licensors. * Without the prior written permission of MediaTek inc. and/or its licensors, * any reproduction, modification, use or disclosure of MediaTek Software, * and information contained herein, in whole or in part, shall be strictly prohibited. */ /* MediaTek Inc. (C) 2010. All rights reserved. * * BY OPENING THIS FILE, RECEIVER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES * THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE") * RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO RECEIVER ON * AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES, * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT. * NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE * SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR * SUPPLIED WITH THE MEDIATEK SOFTWARE, AND RECEIVER AGREES TO LOOK ONLY TO SUCH * THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. RECEIVER EXPRESSLY ACKNOWLEDGES * THAT IT IS RECEIVER'S SOLE RESPONSIBILITY TO OBTAIN FROM ANY THIRD PARTY ALL PROPER LICENSES * CONTAINED IN MEDIATEK SOFTWARE. MEDIATEK SHALL ALSO NOT BE RESPONSIBLE FOR ANY MEDIATEK * SOFTWARE RELEASES MADE TO RECEIVER'S SPECIFICATION OR TO CONFORM TO A PARTICULAR * STANDARD OR OPEN FORUM. RECEIVER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND * CUMULATIVE LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE, * AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE, * OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY RECEIVER TO * MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE. * * The following software/firmware and/or related documentation ("MediaTek Software") * have been modified by MediaTek Inc. All revisions are subject to any receiver's * applicable license agreements witsend_ctrl_cmd(0xB000); send_data_cmd(0x0D); send_ctrl_cmd(0xB001); send_data_cmd(0x0D); send_ctrl_cmd(0xB002); send_data_cmd(0x0D);h MediaTek Inc. */ /***************************************************************************** * Copyright Statement: * -------------------- * This software is protected by Copyright and the information contained * herein is confidential. The software may not be copied and the information * contained herein may not be used or disclosed except with the written * permission of MediaTek Inc. (C) 2008 * * BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES * THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE") * RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON * AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES, * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT. * NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE * SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR * SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH * THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO * NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S * SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM. * * BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE * LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE, * AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE, * OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO * MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE. * * THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE * WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF * LAWS PRINCIPLES. ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND * RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER * THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC). * *****************************************************************************/ #if defined(BUILD_LK) #else #include <linux/string.h> #if defined(BUILD_UBOOT) #include <asm/arch/mt_gpio.h> #else #include <mach/mt_gpio.h> #endif #endif #include "lcm_drv.h" #define LCM_DEBUG #if defined(LCM_DEBUG) #if defined(BUILD_LK) #define LCM_LOG(fmt, args...) printf(fmt, ##args) #else #define LCM_LOG(fmt, args...) printk(fmt, ##args) #endif #else #define LCM_LOG(fmt, args...) do {} while (0) #endif // --------------------------------------------------------------------------- // Local Constants // --------------------------------------------------------------------------- #define FRAME_WIDTH (480) #define FRAME_HEIGHT (800) #define LCM_ID (0x1868) // --------------------------------------------------------------------------- // Local Variables // --------------------------------------------------------------------------- static LCM_UTIL_FUNCS lcm_util = {0}; #define SET_RESET_PIN(v) (lcm_util.set_reset_pin((v))) #define UDELAY(n) (lcm_util.udelay(n)) #define MDELAY(n) (lcm_util.mdelay(n)) // --------------------------------------------------------------------------- // Local Functions // --------------------------------------------------------------------------- static __inline unsigned int HIGH_BYTE(unsigned int val) { return (val >> 8) & 0xFF; } static __inline unsigned int LOW_BYTE(unsigned int val) { return (val & 0xFF); } static __inline void send_ctrl_cmd(unsigned int cmd) { lcm_util.send_cmd(cmd); } static __inline void send_data_cmd(unsigned int data) { lcm_util.send_data(data); } static __inline unsigned int read_data_cmd() { return lcm_util.read_data(); } static __inline void set_lcm_register(unsigned int regIndex, unsigned int regData) { send_ctrl_cmd(regIndex); send_data_cmd(regData); } static void LCM_WriteCMD(unsigned int cmd,unsigned int data){ send_ctrl_cmd(cmd); send_data_cmd(data); } unsigned int frame=0; static void init_lcm_registers(void) { #if 1 //RM68180+TM3.97 set_lcm_register(0xF000,0x55); set_lcm_register(0xF001,0xAA); set_lcm_register(0xF002,0x52); set_lcm_register(0xF003,0x08); set_lcm_register(0xF004,0x01); //page 1 set_lcm_register(0xB000,0x08); set_lcm_register(0xB001,0x08); set_lcm_register(0xB002,0x08); set_lcm_register(0xB100,0x08); set_lcm_register(0xB101,0x08); set_lcm_register(0xB102,0x08); set_lcm_register(0xB200,0x00); set_lcm_register(0xB300,0x08); set_lcm_register(0xB301,0x08); set_lcm_register(0xB302,0x08); set_lcm_register(0xB500,0x08); set_lcm_register(0xB501,0x08); set_lcm_register(0xB502,0x08); set_lcm_register(0xB600,0x34); set_lcm_register(0xB601,0x34); set_lcm_register(0xB602,0x34); set_lcm_register(0xB700,0x34); set_lcm_register(0xB701,0x34); set_lcm_register(0xB702,0x34); set_lcm_register(0xB800,0x24); set_lcm_register(0xB801,0x24); set_lcm_register(0xB802,0x24); set_lcm_register(0xB900,0x34); set_lcm_register(0xB901,0x34); set_lcm_register(0xB902,0x34); set_lcm_register(0xBA00,0x04); set_lcm_register(0xBA01,0x04); set_lcm_register(0xBA02,0x04); set_lcm_register(0xBC00,0x00); set_lcm_register(0xBC01,0x68); set_lcm_register(0xBC02,0x00); set_lcm_register(0xBD00,0x00); set_lcm_register(0xBD01,0x68); set_lcm_register(0xBD02,0x00); set_lcm_register(0xBE00,0x00); set_lcm_register(0xBE01,0x50); set_lcm_register(0xBF00,0x01); //************************gamma 2.5********************************// set_lcm_register(0xD100,0x00); set_lcm_register(0xD101,0x00); set_lcm_register(0xD102,0x00); set_lcm_register(0xD103,0x0A); set_lcm_register(0xD104,0x00); set_lcm_register(0xD105,0x23); set_lcm_register(0xD106,0x00); set_lcm_register(0xD107,0x38); set_lcm_register(0xD108,0x00); set_lcm_register(0xD109,0x4C); set_lcm_register(0xD10A,0x00); set_lcm_register(0xD10B,0x6D); set_lcm_register(0xD10C,0x00); set_lcm_register(0xD10D,0x8D); set_lcm_register(0xD10E,0x00); set_lcm_register(0xD10F,0xBD); set_lcm_register(0xD110,0x00); set_lcm_register(0xD111,0xE6); set_lcm_register(0xD112,0x01); set_lcm_register(0xD113,0x2A); set_lcm_register(0xD114,0x01); set_lcm_register(0xD115,0x5F); set_lcm_register(0xD116,0x01); set_lcm_register(0xD117,0xB5); set_lcm_register(0xD118,0x01); set_lcm_register(0xD119,0xFD); set_lcm_register(0xD11A,0x01); set_lcm_register(0xD11B,0xFE); set_lcm_register(0xD11C,0x02); set_lcm_register(0xD11D,0x42); set_lcm_register(0xD11E,0x02); set_lcm_register(0xD11F,0x8E); set_lcm_register(0xD120,0x02); set_lcm_register(0xD121,0xC5); set_lcm_register(0xD122,0x03); set_lcm_register(0xD123,0x15); set_lcm_register(0xD124,0x03); set_lcm_register(0xD125,0x59); set_lcm_register(0xD126,0x03); set_lcm_register(0xD127,0x72); set_lcm_register(0xD128,0x03); set_lcm_register(0xD129,0x92); set_lcm_register(0xD12A,0x03); set_lcm_register(0xD12B,0xB8); set_lcm_register(0xD12C,0x03); set_lcm_register(0xD12D,0xC8); set_lcm_register(0xD12E,0x03); set_lcm_register(0xD12F,0xD8); set_lcm_register(0xD130,0x03); set_lcm_register(0xD131,0xE8); set_lcm_register(0xD132,0x03); set_lcm_register(0xD133,0xFF); set_lcm_register(0xD200,0x00); set_lcm_register(0xD201,0x00); set_lcm_register(0xD202,0x00); set_lcm_register(0xD203,0x0A); set_lcm_register(0xD204,0x00); set_lcm_register(0xD205,0x23); set_lcm_register(0xD206,0x00); set_lcm_register(0xD207,0x38); set_lcm_register(0xD208,0x00); set_lcm_register(0xD209,0x4C); set_lcm_register(0xD20A,0x00); set_lcm_register(0xD20B,0x6D); set_lcm_register(0xD20C,0x00); set_lcm_register(0xD20D,0x8D); set_lcm_register(0xD20E,0x00); set_lcm_register(0xD20F,0xBD); set_lcm_register(0xD210,0x00); set_lcm_register(0xD211,0xE6); set_lcm_register(0xD212,0x01); set_lcm_register(0xD213,0x2A); set_lcm_register(0xD214,0x01); set_lcm_register(0xD215,0x5F); set_lcm_register(0xD216,0x01); set_lcm_register(0xD217,0xB5); set_lcm_register(0xD218,0x01); set_lcm_register(0xD219,0xFD); set_lcm_register(0xD21A,0x01); set_lcm_register(0xD21B,0xFE); set_lcm_register(0xD21C,0x02); set_lcm_register(0xD21D,0x42); set_lcm_register(0xD21E,0x02); set_lcm_register(0xD21F,0x8E); set_lcm_register(0xD220,0x02); set_lcm_register(0xD221,0xC5); set_lcm_register(0xD222,0x03); set_lcm_register(0xD223,0x15); set_lcm_register(0xD224,0x03); set_lcm_register(0xD225,0x59); set_lcm_register(0xD226,0x03); set_lcm_register(0xD227,0x72); set_lcm_register(0xD228,0x03); set_lcm_register(0xD229,0x92); set_lcm_register(0xD22A,0x03); set_lcm_register(0xD22B,0xB8); set_lcm_register(0xD22C,0x03); set_lcm_register(0xD22D,0xC8); set_lcm_register(0xD22E,0x03); set_lcm_register(0xD22F,0xD8); set_lcm_register(0xD230,0x03); set_lcm_register(0xD231,0xE8); set_lcm_register(0xD232,0x03); set_lcm_register(0xD233,0xFF); set_lcm_register(0xD300,0x00); set_lcm_register(0xD301,0x00); set_lcm_register(0xD302,0x00); set_lcm_register(0xD303,0x0A); set_lcm_register(0xD304,0x00); set_lcm_register(0xD305,0x23); set_lcm_register(0xD306,0x00); set_lcm_register(0xD307,0x38); set_lcm_register(0xD308,0x00); set_lcm_register(0xD309,0x4C); set_lcm_register(0xD30A,0x00); set_lcm_register(0xD30B,0x6D); set_lcm_register(0xD30C,0x00); set_lcm_register(0xD30D,0x8D); set_lcm_register(0xD30E,0x00); set_lcm_register(0xD30F,0xBD); set_lcm_register(0xD310,0x00); set_lcm_register(0xD311,0xE6); set_lcm_register(0xD312,0x01); set_lcm_register(0xD313,0x2A); set_lcm_register(0xD314,0x01); set_lcm_register(0xD315,0x5F); set_lcm_register(0xD316,0x01); set_lcm_register(0xD317,0xB5); set_lcm_register(0xD318,0x01); set_lcm_register(0xD319,0xFD); set_lcm_register(0xD31A,0x01); set_lcm_register(0xD31B,0xFE); set_lcm_register(0xD31C,0x02); set_lcm_register(0xD31D,0x42); set_lcm_register(0xD31E,0x02); set_lcm_register(0xD31F,0x8E); set_lcm_register(0xD320,0x02); set_lcm_register(0xD321,0xC5); set_lcm_register(0xD322,0x03); set_lcm_register(0xD323,0x15); set_lcm_register(0xD324,0x03); set_lcm_register(0xD325,0x59); set_lcm_register(0xD326,0x03); set_lcm_register(0xD327,0x72); set_lcm_register(0xD328,0x03); set_lcm_register(0xD329,0x92); set_lcm_register(0xD32A,0x03); set_lcm_register(0xD32B,0xB8); set_lcm_register(0xD32C,0x03); set_lcm_register(0xD32D,0xC8); set_lcm_register(0xD32E,0x03); set_lcm_register(0xD32F,0xD8); set_lcm_register(0xD330,0x03); set_lcm_register(0xD331,0xE8); set_lcm_register(0xD332,0x03); set_lcm_register(0xD333,0xFF); set_lcm_register(0xD400,0x00); set_lcm_register(0xD401,0x00); set_lcm_register(0xD402,0x00); set_lcm_register(0xD403,0x0A); set_lcm_register(0xD404,0x00); set_lcm_register(0xD405,0x23); set_lcm_register(0xD406,0x00); set_lcm_register(0xD407,0x38); set_lcm_register(0xD408,0x00); set_lcm_register(0xD409,0x4C); set_lcm_register(0xD40A,0x00); set_lcm_register(0xD40B,0x6D); set_lcm_register(0xD40C,0x00); set_lcm_register(0xD40D,0x8D); set_lcm_register(0xD40E,0x00); set_lcm_register(0xD40F,0xBD); set_lcm_register(0xD410,0x00); set_lcm_register(0xD411,0xE6); set_lcm_register(0xD412,0x01); set_lcm_register(0xD413,0x2A); set_lcm_register(0xD414,0x01); set_lcm_register(0xD415,0x5F); set_lcm_register(0xD416,0x01); set_lcm_register(0xD417,0xB5); set_lcm_register(0xD418,0x01); set_lcm_register(0xD419,0xFD); set_lcm_register(0xD41A,0x01); set_lcm_register(0xD41B,0xFE); set_lcm_register(0xD41C,0x02); set_lcm_register(0xD41D,0x42); set_lcm_register(0xD41E,0x02); set_lcm_register(0xD41F,0x8E); set_lcm_register(0xD420,0x02); set_lcm_register(0xD421,0xC5); set_lcm_register(0xD422,0x03); set_lcm_register(0xD423,0x15); set_lcm_register(0xD424,0x03); set_lcm_register(0xD425,0x59); set_lcm_register(0xD426,0x03); set_lcm_register(0xD427,0x72); set_lcm_register(0xD428,0x03); set_lcm_register(0xD429,0x92); set_lcm_register(0xD42A,0x03); set_lcm_register(0xD42B,0xB8); set_lcm_register(0xD42C,0x03); set_lcm_register(0xD42D,0xC8); set_lcm_register(0xD42E,0x03); set_lcm_register(0xD42F,0xD8); set_lcm_register(0xD430,0x03); set_lcm_register(0xD431,0xE8); set_lcm_register(0xD432,0x03); set_lcm_register(0xD433,0xFF); set_lcm_register(0xD500,0x00); set_lcm_register(0xD501,0x00); set_lcm_register(0xD502,0x00); set_lcm_register(0xD503,0x0A); set_lcm_register(0xD504,0x00); set_lcm_register(0xD505,0x23); set_lcm_register(0xD506,0x00); set_lcm_register(0xD507,0x38); set_lcm_register(0xD508,0x00); set_lcm_register(0xD509,0x4C); set_lcm_register(0xD50A,0x00); set_lcm_register(0xD50B,0x6D); set_lcm_register(0xD50C,0x00); set_lcm_register(0xD50D,0x8D); set_lcm_register(0xD50E,0x00); set_lcm_register(0xD50F,0xBD); set_lcm_register(0xD510,0x00); set_lcm_register(0xD511,0xE6); set_lcm_register(0xD512,0x01); set_lcm_register(0xD513,0x2A); set_lcm_register(0xD514,0x01); set_lcm_register(0xD515,0x5F); set_lcm_register(0xD516,0x01); set_lcm_register(0xD517,0xB5); set_lcm_register(0xD518,0x01); set_lcm_register(0xD519,0xFD); set_lcm_register(0xD51A,0x01); set_lcm_register(0xD51B,0xFE); set_lcm_register(0xD51C,0x02); set_lcm_register(0xD51D,0x42); set_lcm_register(0xD51E,0x02); set_lcm_register(0xD51F,0x8E); set_lcm_register(0xD520,0x02); set_lcm_register(0xD521,0xC5); set_lcm_register(0xD522,0x03); set_lcm_register(0xD523,0x15); set_lcm_register(0xD524,0x03); set_lcm_register(0xD525,0x59); set_lcm_register(0xD526,0x03); set_lcm_register(0xD527,0x72); set_lcm_register(0xD528,0x03); set_lcm_register(0xD529,0x92); set_lcm_register(0xD52A,0x03); set_lcm_register(0xD52B,0xB8); set_lcm_register(0xD52C,0x03); set_lcm_register(0xD52D,0xC8); set_lcm_register(0xD52E,0x03); set_lcm_register(0xD52F,0xD8); set_lcm_register(0xD530,0x03); set_lcm_register(0xD531,0xE8); set_lcm_register(0xD532,0x03); set_lcm_register(0xD533,0xFF); set_lcm_register(0xD600,0x00); set_lcm_register(0xD601,0x00); set_lcm_register(0xD602,0x00); set_lcm_register(0xD603,0x0A); set_lcm_register(0xD604,0x00); set_lcm_register(0xD605,0x23); set_lcm_register(0xD606,0x00); set_lcm_register(0xD607,0x38); set_lcm_register(0xD608,0x00); set_lcm_register(0xD609,0x4C); set_lcm_register(0xD60A,0x00); set_lcm_register(0xD60B,0x6D); set_lcm_register(0xD60C,0x00); set_lcm_register(0xD60D,0x8D); set_lcm_register(0xD60E,0x00); set_lcm_register(0xD60F,0xBD); set_lcm_register(0xD610,0x00); set_lcm_register(0xD611,0xE6); set_lcm_register(0xD612,0x01); set_lcm_register(0xD613,0x2A); set_lcm_register(0xD614,0x01); set_lcm_register(0xD615,0x5F); set_lcm_register(0xD616,0x01); set_lcm_register(0xD617,0xB5); set_lcm_register(0xD618,0x01); set_lcm_register(0xD619,0xFD); set_lcm_register(0xD61A,0x01); set_lcm_register(0xD61B,0xFE); set_lcm_register(0xD61C,0x02); set_lcm_register(0xD61D,0x42); set_lcm_register(0xD61E,0x02); set_lcm_register(0xD61F,0x8E); set_lcm_register(0xD620,0x02); set_lcm_register(0xD621,0xC5); set_lcm_register(0xD622,0x03); set_lcm_register(0xD623,0x15); set_lcm_register(0xD624,0x03); set_lcm_register(0xD625,0x59); set_lcm_register(0xD626,0x03); set_lcm_register(0xD627,0x72); set_lcm_register(0xD628,0x03); set_lcm_register(0xD629,0x92); set_lcm_register(0xD62A,0x03); set_lcm_register(0xD62B,0xB8); set_lcm_register(0xD62C,0x03); set_lcm_register(0xD62D,0xC8); set_lcm_register(0xD62E,0x03); set_lcm_register(0xD62F,0xD8); set_lcm_register(0xD630,0x03); set_lcm_register(0xD631,0xE8); set_lcm_register(0xD632,0x03); set_lcm_register(0xD633,0xFF); //************************gamma 2.5********************************// set_lcm_register(0xF000,0x55); set_lcm_register(0xF001,0xAA); set_lcm_register(0xF002,0x52); set_lcm_register(0xF003,0x08); set_lcm_register(0xF004,0x00);//page0 //set_lcm_register(0xB400,0x10); set_lcm_register(0xB801,0x03); set_lcm_register(0xB802,0x03); set_lcm_register(0xB801,0x03); set_lcm_register(0xB802,0x03); set_lcm_register(0xB803,0x03); set_lcm_register(0xBC00,0x01); set_lcm_register(0xBC01,0x01); set_lcm_register(0xBC02,0x01); set_lcm_register(0xB500,0x6B); set_lcm_register(0xC900,0x50); set_lcm_register(0x3500,0x01); set_lcm_register(0x4400,0x00); set_lcm_register(0x4401,0x60); set_lcm_register(0x3600,0x00); set_lcm_register(0x3A00,0x66); set_lcm_register(0x1100,0x00); MDELAY(120); set_lcm_register(0x2900,0x00); MDELAY(20); #endif } // --------------------------------------------------------------------------- // LCM Driver Implementations // --------------------------------------------------------------------------- static void lcm_set_util_funcs(const LCM_UTIL_FUNCS *util) { memcpy(&lcm_util, util, sizeof(LCM_UTIL_FUNCS)); } static void lcm_get_params(LCM_PARAMS *params) { memset(params, 0, sizeof(LCM_PARAMS)); params->type = LCM_TYPE_DBI; params->ctrl = LCM_CTRL_PARALLEL_DBI; params->width = FRAME_WIDTH; params->height = FRAME_HEIGHT; params->io_select_mode = 1; //params->io_select_mode = 3; #if 0 params->dbi.port = 0; params->dbi.clock_freq = LCM_DBI_CLOCK_FREQ_104M; params->dbi.data_width = LCM_DBI_DATA_WIDTH_16BITS; params->dbi.data_format.color_order = LCM_COLOR_ORDER_RGB; params->dbi.data_format.trans_seq = LCM_DBI_TRANS_SEQ_MSB_FIRST; params->dbi.data_format.padding = LCM_DBI_PADDING_ON_MSB; params->dbi.data_format.format = LCM_DBI_FORMAT_RGB565; params->dbi.data_format.width = LCM_DBI_DATA_WIDTH_16BITS; params->dbi.cpu_write_bits = LCM_DBI_CPU_WRITE_16_BITS; params->dbi.io_driving_current = LCM_DRIVING_CURRENT_8MA; //#else params->dbi.port = 0; params->dbi.clock_freq = LCM_DBI_CLOCK_FREQ_104M; params->dbi.data_width = LCM_DBI_DATA_WIDTH_24BITS; params->dbi.data_format.color_order = LCM_COLOR_ORDER_RGB; params->dbi.data_format.trans_seq = LCM_DBI_TRANS_SEQ_MSB_FIRST; params->dbi.data_format.padding = LCM_DBI_PADDING_ON_MSB; params->dbi.data_format.format = LCM_DBI_FORMAT_RGB888; params->dbi.data_format.width = LCM_DBI_DATA_WIDTH_24BITS; params->dbi.cpu_write_bits = LCM_DBI_CPU_WRITE_32_BITS; params->dbi.io_driving_current = LCM_DRIVING_CURRENT_8MA; #endif #if 1 params->dbi.port = 0; params->dbi.clock_freq = LCM_DBI_CLOCK_FREQ_104M; params->dbi.data_width = LCM_DBI_DATA_WIDTH_18BITS; params->dbi.data_format.color_order = LCM_COLOR_ORDER_RGB; params->dbi.data_format.trans_seq = LCM_DBI_TRANS_SEQ_MSB_FIRST; params->dbi.data_format.padding = LCM_DBI_PADDING_ON_MSB; params->dbi.data_format.format = LCM_DBI_FORMAT_RGB666; params->dbi.data_format.width = LCM_DBI_DATA_WIDTH_18BITS; params->dbi.cpu_write_bits = LCM_DBI_CPU_WRITE_32_BITS; params->dbi.io_driving_current = LCM_DRIVING_CURRENT_2MA; #endif #if 1 params->dbi.parallel.write_setup = 1; params->dbi.parallel.write_hold = 1; // 3 params->dbi.parallel.write_wait = 2; // 3 params->dbi.parallel.read_setup = 3; // 1 params->dbi.parallel.read_latency = 21; params->dbi.parallel.wait_period = 0; // 6 #else params->dbi.parallel.write_setup = 1; params->dbi.parallel.write_hold = 1; params->dbi.parallel.write_wait = 3; params->dbi.parallel.read_setup = 3; params->dbi.parallel.read_latency = 20; params->dbi.parallel.wait_period = 0; #endif // enable tearing-free params->dbi.te_mode = LCM_DBI_TE_MODE_VSYNC_ONLY; //params->dbi.te_mode = LCM_DBI_TE_MODE_DISABLED; //params->dbi.te_mode = LCM_DBI_TE_MODE_VSYNC_OR_HSYNC; //params->dbi.te_mode = LCM_DBI_TE_MODE_DISABLED; params->dbi.te_edge_polarity = LCM_POLARITY_FALLING; //params->dbi.te_edge_polarity = LCM_POLARITY_RISING; } static unsigned int lcm_compare_id(void); #if 0 send_ctrl_cmd(0x2100); send_data_cmd(0x00); send_ctrl_cmd(0xD800); send_data_cmd(0x6F); send_ctrl_cmd(0xD801); send_data_cmd(0x6F); send_ctrl_cmd(0xC582); send_data_cmd(0xA3); send_ctrl_cmd(0xC0B4); send_data_cmd(0x50); send_ctrl_cmd(0xC181); send_data_cmd(0x66); send_ctrl_cmd(0xC1A1); send_data_cmd(0x08); send_ctrl_cmd(0xC0A3); send_data_cmd(0x1B); send_ctrl_cmd(0xC481); send_data_cmd(0x83); #endif static void lcm_init(void) { SET_RESET_PIN(1); MDELAY(2); SET_RESET_PIN(0); MDELAY(10); SET_RESET_PIN(1); MDELAY(120); init_lcm_registers(); } static void lcm_suspend(void) { //SET_RESET_PIN(1); //MDELAY(2); SET_RESET_PIN(0); MDELAY(500); //SET_RESET_PIN(1); //MDELAY(120); /* #ifndef BUILD_LK send_ctrl_cmd(0x0100); send_data_cmd(0x00); MDELAY(100); send_ctrl_cmd(0x2800); send_data_cmd(0x00); MDELAY(100); send_ctrl_cmd(0x1000); send_data_cmd(0x00); MDELAY(20); send_ctrl_cmd(0x4F00); send_data_cmd(0x01); MDELAY(100); #endif*/ } static void lcm_resume(void) { #ifndef BUILD_LK lcm_init(); #endif } static void lcm_update(unsigned int x, unsigned int y, unsigned int width, unsigned int height) { unsigned short x0, y0, x1, y1; unsigned short h_X_start,l_X_start,h_X_end,l_X_end,h_Y_start,l_Y_start,h_Y_end,l_Y_end; x0 = (unsigned short)x; y0 = (unsigned short)y; x1 = (unsigned short)x+width-1; y1 = (unsigned short)y+height-1; #if defined(BUILD_LK) printf("lcm_update, %x,%x,%x,%x\n", x0,y0,x1,y1); #else printk("lcm_update, %x,%x,%x,%x\n", x0,y0,x1,y1); #endif h_X_start=((x0&0xFF00)>>8); l_X_start=(x0&0x00FF); h_X_end=((x1&0xFF00)>>8); l_X_end=(x1&0x00FF); h_Y_start=((y0&0xFF00)>>8); l_Y_start=(y0&0x00FF); h_Y_end=((y1&0xFF00)>>8); l_Y_end=(y1&0x00FF); send_ctrl_cmd(0x2A00); //2a00 send_data_cmd(h_X_start); send_ctrl_cmd(0x2A01); send_data_cmd(l_X_start); send_ctrl_cmd(0x2A02); send_data_cmd(h_X_end); send_ctrl_cmd(0x2A03); send_data_cmd(l_X_end); send_ctrl_cmd(0x2B00);//2b00 send_data_cmd(h_Y_start); send_ctrl_cmd(0x2B01); send_data_cmd(l_Y_start); send_ctrl_cmd(0x2B02); send_data_cmd(h_Y_end); send_ctrl_cmd(0x2B03); send_data_cmd(l_Y_end); send_ctrl_cmd(0x2C00);//2c00 } static unsigned int lcm_compare_id(void) { unsigned int lcm_id_h; unsigned int lcm_id_l; unsigned int id; SET_RESET_PIN(1); MDELAY(10); SET_RESET_PIN(0); MDELAY(20); SET_RESET_PIN(1); MDELAY(150); send_ctrl_cmd(0xF000); send_data_cmd(0x55); send_ctrl_cmd(0xF001); send_data_cmd(0xaa); send_ctrl_cmd(0xF002); send_data_cmd(0x52); send_ctrl_cmd(0xF003); send_data_cmd(0x08); send_ctrl_cmd(0xF004); send_data_cmd(0x01); send_ctrl_cmd(0xC500); read_data_cmd(); lcm_id_h = read_data_cmd(); //0X18 send_ctrl_cmd(0xC501); read_data_cmd(); lcm_id_l = read_data_cmd(); //0X68 id=((lcm_id_h & 0xff) << 8) | lcm_id_l; //0x6818 #if defined(BUILD_LK) printf("rm68180, id=0x%x\n", id); #else printk("rm68180, id=0x%x\n", id); #endif return (LCM_ID == id)?1:0; } LCM_DRIVER hct_rm68180_dbi_wvga_tm = { .name = "hct_rm68180_dbi_wvga_tm", .set_util_funcs = lcm_set_util_funcs, .get_params = lcm_get_params, .init = lcm_init, .suspend = lcm_suspend, .resume = lcm_resume, .update = lcm_update, .compare_id = lcm_compare_id, };и хорошо что в даташите RM68180_DS_V0.1_20120420 есть RM68180 pinouts кристалла, с табличкой
// давал ссылку ему на поновее версию RM68180_DS_V0.5_20130102.pdf (5.11 MB, в Китае, но он забил на нее
Добрый вечер форумчане! Я новичок с работой Arduino. Нашел у себя дисплей от китайской копии яблочного смартфона 3G. Нашел на него распиновку на али. На шлейфе дисплея было написано RM68090. Подключил к Дуне Нано В3.0 загрузил скетч инициализации и мне выдало драйвер HX8357. От куда скопировал скетч инициализации забыл. Но фото инициализации в порту сохранил, сейчас не могу загрузить, так как уже пишу дома, а фото на работе. Далее нашел библиотеку данного драйвера и там написано, что она работает только с Уно, Мега. Но понимаю, что можно этот диполей как-то запустить на Нано, но как не могу сообразить. Помогите пожалуйста. Если надо будет фото дисплея, то позже скину. А так же скину все остальные данные на этот дисплей.
Продолжая предыдущий пост.
Есть вот такой дисплей:
Он подключается 29 пинами:
Правда забыл фото инициализации дисплея. Но может кто-то так подскажет, что я не так делаю.
Так же этот дисплей нашел на али https://s.click.aliexpress.com/e/bZfdetn6
Дисплей подключаю таким образом CS, RS, WR, RD - A3...A0 Rest - A4; DB08-DB015 соответственно DB0-DB7. Питание дисплея произвожу от Ардуино, а подсветку дисплея от лабораторного БП. Библиотеки разные пробовал.
Прошу помощи в подключении дисплея от стиральной машинки...
Отсканировал всю плату отрисовал дорожки, методом тыка недало результата . всё собрано на MEGA 16 .
ссылка на картинку .. https://yadi.sk/i/QWyUwthKae6lCQ на форумский сервак не лезет.(обёмный).
Lotus6202, вот похожий по размеру экранчик, вдруг тот же ))
http://arduino.ru/forum/apparatnye-voprosy/arduino-i-displei-ot-sotikov-mobilnykh-telefonov?page=33#comment-357559
Я не внимателен или так и есть - не смог найти поиск по форуму. А хотел найти здесь информацию по 39-и пиновому дисплейчику от фотоаппарата Sony Cyber-shot DSC-S800. Маркировка 69.02A21.004. Внук фотоаппарат уничтожил, а дисплейчик цел и есть большое желание пристроить его к STM32.
Обрашение к "slider". Если Вам интересно покопаться в этом дисплее, то могу его выслать. Не смог найти Ваш почтовый адрес, хотя и видел его где то.
Нет не то. по распиновке не сходится... попробовал не проканало.
Lotus6202, по скану платы имеем только 8 выводов для управления экраном. Для 8-битного параллельного режима этого мало, для SPI - много. Контроллер uc1610 может работать в 4-битном параллельном режиме, как вариант. Или uc1608. И еще, для проверки надо восстановить обвязку(кондеры, сопротивления, перемычки) для остальных выводов экрана, как было на плате. Можно без двух крайних правых выводов - это подсветка.
Всем привет. Забирайте в коллекцию подопытного.
I9300 / 4.5" / 480x854 / FPC-DT-WQ643001 / 33 pin / HX8357d
С разрешением еще не игрался, по дефолту работает на 320х240, кто ткнет где менять в библиотеке, и самое главное как, разрешение, тому безмерная благодарность =)
4.5" / 480x854
Хороший размер и разрешение, но откуда этот дисплей?
китайский "GALAXYS III". Я так понимаю у них дисплеев на эти модели целый зоопарк.
Даташит на контроллер посмотри.
Приветствую, форумчане
Имеется Arduino MEGA2560 и нашёлся в закромах экранчик. По надписям на экране нашёлся ( https://ru.made-in-china.com/co_ronboelectronics/product_5-0-480X800-Mip... ). И собственно есть вопрос к тем кто встречался с такими экранами
тут нету обычных пинов DB для битов, но в даташите по контроллеру нашёл любопытную инфу
можно ли подключить этот экранчик к меге хоть по 16-битам без балета с бубном?
Добрый форумчане! Я новичок с работой Arduino. Нашел у себя дисплей от китайской копии яблочного смартфона 3G. Нашел на него распиновку на али. На шлейфе дисплея было написано RM68090. Подключил к Дуне Нано В3.0 загрузил скетч инициализации и мне выдало драйвер HX8357. От куда скопировал скетч инициализации забыл. Но фото инициализации в порту сохранил:
Далее нашел библиотеку данного драйвера и там написано, что она работает только с Уно, Мега. Но понимаю, что можно этот дисплей как-то запустить на Нано, но как не могу сообразить. Помогите пожалуйста.
САм дисплей:
Распиновка:
Так же этот дисплей нашел на али https://s.click.aliexpress.com/e/bZfdetn6
Дисплей подключаю таким образом CS, RS, WR, RD - A3...A0 Rest - A4; DB08-DB015 соответственно DB0-DB7. Питание дисплея произвожу от Ардуино, а подсветку дисплея от лабораторного БП. Библиотеки разные пробовал.
MAkSQWI уно и нано в этом плане это одно и тоже. чип такой же atmega328 , только размер платы разный.
непонятно в чем у вас вопрос, не в первый раз.
"к Дуне Нано В3.0 загрузил скетч инициализации и мне выдало драйвер HX8357."
"Но понимаю, что можно этот дисплей как-то запустить на Нано, но как не могу сообразить."
ну и пользуйтесь Дуне Нано В3.0 , раз она его видит . Загружаете скетч для уно , в нано , все должно работать. Или у вас этот скетч(либа) требует подключения на другие пины D2-D7 D8 D9 , а не D0-D7 как читалка .Так подключите как у нее в описании , и будет работать. (если в диспе преобразователи в контроллере исправны)
запустите mcufriend_kvb , в ней много инитов , если что , можно принудительно выбирать , мож на каком подходящем и заведется.
/// где именно она выдала что у вас HX8357 ? невидать
MAkSQWI уно и нано в этом плане это одно и тоже. чип такой же atmega328 , только размер платы разный.
непонятно в чем у вас вопрос, не в первый раз.
"к Дуне Нано В3.0 загрузил скетч инициализации и мне выдало драйвер HX8357."
"Но понимаю, что можно этот дисплей как-то запустить на Нано, но как не могу сообразить."
ну и пользуйтесь Дуне Нано В3.0 , раз она его видит . Загружаете скетч для уно , в нано , все должно работать. Или у вас этот скетч(либа) требует подключения на другие пины D2-D7 D8 D9 , а не D0-D7 как читалка .Так подключите как у нее в описании , и будет работать. (если в диспе преобразователи в контроллере исправны)
запустите mcufriend_kvb , в ней много инитов , если что , можно принудительно выбирать , мож на каком подходящем и заведется.
/// где именно она выдала что у вас HX8357 ? невидать
На первом фото где reg (0x00D0) C0 40 HX8357
И дисплей подключен не к D0-D7, а таким образом
С другой программой инициализации выдает вот такую инфу:
MAkSQWI, если верить надписи на шлейфе (RM68090), дисплей должен заработать с любой библиотекой, поддерживающей ILI9325. Вот только ардуинка должна быть 3.3-вольтовая
Т.е. надо сделать делитель напряжения на сигнальные контакты?
Что-то типо вот этого