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

Валерон
Offline
Зарегистрирован: 25.11.2018

Я бы не доверял TXS0108e, пока дисп не  запустится,  в этом случае может не прокатить. Сам наступал на эти грабли, да и в сети пишут, что они капризные. Для них нужны определенные условия. А бы посоветовал SN74LVC245. Направление переключать с любого свободного пина.

ziyara
Offline
Зарегистрирован: 05.11.2019

slider пишет:

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

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

// в   st7735s datasheet  есть очередность пинов в кристалле для сверки

все D0-D17 замыкаются на минус при выходе со стекла в шлейф.

 

спасибо за инфу,но пока не победил,время нет.будет время победю)))

talanov
Offline
Зарегистрирован: 11.11.2019

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

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

А этот под конкретный дисплей?

talanov
Offline
Зарегистрирован: 11.11.2019

нет это осонвой так сказать шилд а к нему переходники под параленые лсд

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

масло маслом мазанное. Китай пора догонять. Сразу шилд на нужную ардуину.

talanov
Offline
Зарегистрирован: 11.11.2019

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

talanov
Offline
Зарегистрирован: 11.11.2019

Блин голова пухнет от кучи инфы уже. Лопачу кучу страниц а понимания картины так и нет.  Подскжите что бы прояснить. 

Arduino Mega2560 , будет использаватся ТОЛЬКО ДЛЯ ТЕСТОВ дисплеев (что бы понять какой в нем контроллер, считывания ID)

(Народ заморачивается с готовыми шилдами а я сам сделаю под конкретную конструкцию. мне платку сделать не проблем с дорожками 0,2мм под конкретный дисплей ) 

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

Я так понимаю есть 4 средства программных для этого 

Adafruit ID read  v5.2

Adafruit ID read  v5.3

MCUFRIEND_kbv

UTFT

на какие ноги меги развести D0-D15 CS CD WR RD RESET

 
Sergey1980
Offline
Зарегистрирован: 06.11.2019

Несколько страниц назад FalconFly нашел шикарный дисплей от сотового LG GX500. Распаял я такой же чтобы пощупать - шикарная вещь! Отличные сочные цвета, углы обзора (думаю, это IPS матрица). Ко всему прочему - она умеет 16 млн цветов! И при желании 16 бит шину, я тестировал на 8 бит. Разъемчик для пайки сложный, но за пару часов распаивается без проблем на макетку. Подключил к девборде STM32F407ZET6, использую FSMC. Вся информация в посте FalconFly достаточна для подключения и инициализации!

talanov
Offline
Зарегистрирован: 11.11.2019

SN74LVC245 не пойдет уровни 3,3-1,65. а вот 74HC245 отлично подходит. Попобовал.

Валерон
Offline
Зарегистрирован: 25.11.2018

talanov пишет:

SN74LVC245 не пойдет уровни 3,3-1,65. а вот 74HC245 отлично подходит. Попобовал.

Угу, для диспа нужно 5в? Зачем тогда нужен преобразователь?

 

 

Yurykoos
Offline
Зарегистрирован: 26.11.2019

Добрый день. У меня есть экран от Fly q434 TFT035K213FPC Ver01 48 pin. Подскажите распиновку на него. Не могу нарыть.

 

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

Может быть от Fly iq434. Поиском по ветке попробуй поискать.

lawr
Offline
Зарегистрирован: 19.02.2017

Кусок схемы Fly IQ434:

paralax
Offline
Зарегистрирован: 20.03.2019
люди дайте
 схему подключения дисплея к ардуино
. А то я хз которых выводов цыплят 
дисплей к ардуино !!!! ????
Валерон
Offline
Зарегистрирован: 25.11.2018

paralax пишет:

люди дайте
 схему подключения дисплея к ардуино
. А то я хз которых выводов цыплят 
дисплей к ардуино !!!! ????

Это крик утопающего?

Берете в сети схему вашей меги, для тех кто слабоват в схемах,  есть даже в красивых цветных рисунках.

Смотрите в скейче для ардуино какие выводы для чего предназначены. Подключаете их в соответствии с распиновкой вашего диспа. Если дисп на 3в, а мега на 5в, нужен преобразователь уровней.

Конкретнее надо вопрос задавать. Какая мега, распиновка диспа и т.д. 

Экстрасенсы только на ТНТ!

Если вы уже указывали в каком-то посте ваши данные, то укажите номер поста. 

Читайте первые страницы этой темы. Там на 90% найдете ответ.

paralax
Offline
Зарегистрирован: 20.03.2019
 
Понятно спасибо за ответ буду разбираться просто за во все время никто не сделал хоть какую-то кривую схемку;)
talanov
Offline
Зарегистрирован: 11.11.2019

А зачем делать кривую то. Надо нормальную. Я два дня курил все 50 страниц ветки . три раза переделывал платы пока не пришел к окончательному решению. А все почему - да потому что плохо догонял какие есть библиотеки и как с ними работать. ( покрайне мере на начальном уровне- на моем тоесть) Весь интернет обсуждает недоэлектронные чудо китайцев - ГОТОВЫЕ ШИлды. Но куда проше изначально нарисовать принципиалку как все должно быть. Вот и появляется путаница. А то  такие определения как красный или зеленый шилд. Просто отрыв башки. У меня сроду небыло покупных ЛСД шилдов. Нах платить за то что можно слепить самому.

 

talanov
Offline
Зарегистрирован: 11.11.2019

Вот соорудил чисто для тестов разных LCD на UNO.

talanov
Offline
Зарегистрирован: 11.11.2019

А десплеев я тут прикупил разных за 300 ру цельный мешёк. Зашел в сервис и мне продали по случаю не жмотясь.

paralax
Offline
Зарегистрирован: 20.03.2019

talanov пишет:

А зачем делать кривую то. Надо нормальную. Я два дня курил все 50 страниц ветки . три раза переделывал платы пока не пришел к окончательному решению. А все почему - да потому что плохо догонял какие есть библиотеки и как с ними работать. ( покрайне мере на начальном уровне- на моем тоесть) Весь интернет обсуждает недоэлектронные чудо китайцев - ГОТОВЫЕ ШИлды. Но куда проше изначально нарисовать принципиалку как все должно быть. Вот и появляется путаница. А то  такие определения как красный или зеленый шилд. Просто отрыв башки. У меня сроду небыло покупных ЛСД шилдов. Нах платить за то что можно слепить самому.

 


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

nik182
Offline
Зарегистрирован: 04.05.2015

Чисто аналоговые у наны только А6 А7. Остальные могут быть цифровыми или аналоговыми по желанию програмиста.

nik182
Offline
Зарегистрирован: 04.05.2015

Чисто аналоговые у наны только А6 А7. Остальные могут быть цифровыми или аналоговыми по желанию програмиста.

nik182
Offline
Зарегистрирован: 04.05.2015

Чисто аналоговые у наны только А6 А7. Остальные могут быть цифровыми или аналоговыми по желанию программиста.

FalconFly
Offline
Зарегистрирован: 20.03.2019

Сделали релизную плату игровой консоли BlackPrism Portable на базе дисплея LG GX500.

Пара видео, на которых дисплей показан в действии:

https://www.youtube.com/watch?v=DbkmFb09ISA

https://www.youtube.com/watch?v=Tnh5YUaBbpA

 

storm134
Offline
Зарегистрирован: 14.04.2017

А можно исходнички проекта для тестирования дисплеев поиметь. Макет платы и схему? 79635431264@yandex.ru

FalconFly
Offline
Зарегистрирован: 20.03.2019

storm134 пишет:

А можно исходнички проекта для тестирования дисплеев поиметь. Макет платы и схему? 79635431264@yandex.ru

Можно!  Напишите письмо на repstosw2018 [cобака] gmail [тoчкa] com

talanov
Offline
Зарегистрирован: 11.11.2019

Доброго всем времени.

Поделитесь библиотекой для UTFT если конечно такая есть для

дисплея jx397h012-fpc-v02 29 пин  240x400  ST7793 ID = 0x7793

Работает с библиотекой MCUFRIEND
( а я как начинающий непонимаю как сделать в ней большие шрифты. Хочется
замутить термометр гигрометр с большими цифрами. а в MCUFRIEND я так понимаю все не очень просто со шрифтами)
распиновка
1 NC
2 VCC 2,8v
3 VCC 2,8v
4 CS-
5 WR-
6 RS-
7 RD-
8 RESET
9 D0
10 D1
11 D2
12 D3
13 D4
14 D5
15 D6
16 D7
17 GND
18 TS
19 TS
20 TS
21 TS
22 KATODE
23 KATODE
24 KATODE
25 KATODE
26 KATODE
27 KATODE
28 ANODE
29 GND
 
 
 

 

Валерон
Offline
Зарегистрирован: 25.11.2018

talanov пишет:

 я так понимаю все не очень просто со шрифтами)

Да брателла, ты все правильно понимаешь. Не все так просто со шрифтами. Их нужно в программе редактировать. Это гемморойно, сам через это прошел. Надо понять принцип построения шрифтов в программе. Это в двух словах не объяснить. Я информацию собирал в инете. Делал проектик на ПИКе, тоже нужны были большие цифры. У микрочипа есть утилита (но только для ПИКов), стандартные шрифты переводит в сишный код. Все равно приходилось редактировать в ручную. Ох я нае....ся!
 
Где-то нарыл в инете программу в екселе для создания шрифтов, но ее потерял, так и не нашел.
 
Так-что только гуглить и вникать вам придется для понимания.
talanov
Offline
Зарегистрирован: 11.11.2019

Для меня это что китайская грамота. Хотя в скачанной MCUFRIEND_kbv-master в файле UTFTGLUE.h насколько я понял речь идет о возможности использования шрифтов от UTFT.  Но это в не моего понимания как это сделать. Надежда только на библиотеку UTFT для ST7793

Валерон
Offline
Зарегистрирован: 25.11.2018

talanov пишет:

Для меня это что китайская грамота. Хотя в скачанной MCUFRIEND_kbv-master в файле UTFTGLUE.h насколько я понял речь идет о возможности использования шрифтов от UTFT.  Но это в не моего понимания как это сделать. Надежда только на библиотеку UTFT для ST7793

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

Может кто на ты с ардуино подскажут. Все равно нужно изучать азы "Китайской грамоты".

talanov
Offline
Зарегистрирован: 11.11.2019

Валерон пишет:

talanov пишет:

Для меня это что китайская грамота. Хотя в скачанной MCUFRIEND_kbv-master в файле UTFTGLUE.h насколько я понял речь идет о возможности использования шрифтов от UTFT.  Но это в не моего понимания как это сделать. Надежда только на библиотеку UTFT для ST7793

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

Может кто на ты с ардуино подскажут. Все равно нужно изучать азы "Китайской грамоты".

Пытаюсь читаю по програмированию . Но уже усваивается все труднее и труднее. Не так как в юности. Да объём информации большой сразу в голову не засунешь. А софтом надо постоянно заниматся что бы были навыки и не забывалось

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

talanov пишет:

Для меня это что китайская грамота. Хотя в скачанной MCUFRIEND_kbv-master в файле UTFTGLUE.h насколько я понял речь идет о возможности использования шрифтов от UTFT.  Но это в не моего понимания как это сделать. Надежда только на библиотеку UTFT для ST7793

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

http://forum.amperka.ru/threads/%D0%A8%D1%80%D0%B8%D1%84%D1%82%D1%8B-%D0%BA%D0%B0%D0%BA-%D0%B2-utft.7336/

https://arduinoplus.ru/arduino-tft-lcd-display/

http://arduino.ru/forum/programmirovanie/rusifikatsiya-biblioteki-adafruit-gfx-i-vyvod-russkikh-bukv-na-displei-v-kodi?page=1

....

библиотека mcufriend_kbv использует 2 разные библиотеки Adafruit и UTFT , смотря какой пример вы будете переделывать под себя .

если используете MCUFRIEND_kbv\examples\graphictest_kbv  , то там есть пример по разным шрифтам 
MCUFRIEND_kbv\examples\Font_simple
шрифты #include <Fonts/FreeSans9pt7b.h>
             #include <Fonts/FreeSans12pt7b.h>
             #include <Fonts/FreeSerif12pt7b.h>
             #include <FreeDefaultFonts.h>
как ими писать увидите в примере. 

если используете MCUFRIEND_kbv\examples\GLUE_Demo_400x240  то там есть 
myGLCD.setFont(SmallFont);   меняете на  myGLCD.setFont(BigFont);  , огромные цифры myGLCD.setFont(SevenSegNumFont); 
возможно в примере вверху понадобится раскомментировать 
//extern uint8_t SmallFont[];
и добавить еще 
extern uint8_t BigFont[];
extern uint8_t SevenSegNumFont[];

можно еще загуглить - UTFT шрифты

talanov
Offline
Зарегистрирован: 11.11.2019

О громное спасибо!!!! буду гуглить!!! Выходит не все так печально по шрифтам. Очень признателен за нужное направление. Буду двигатся и пробовать.

FalconFly
Offline
Зарегистрирован: 20.03.2019

Презентация игровой консоли BlackPrism Portable.   Впереди - десктопная версия.

https://www.youtube.com/watch?v=jdD8uShARMc

 

 

aleksl
Offline
Зарегистрирован: 02.11.2017

Всем привет. Прошу помощи по запуску дисплея от samsung GT-S5250. У меня есть распиновка шлейфа. Контроллер мега 328р (ардуино нано). Подключение как расписано в читалке. Распаяно аккуратно ( Пробовал перепаивать-без результата)

Распаял, подключил по схеме. Дисп не ожил. Пробовал с UTFT, перебирал иниты-на дисплее всегда зависает "белый шум". Удалось получить изображение на либе UTFT_v2.77b2_uno_ili9327_8bit_turbo, завелся с первого раза но непонятно что с изображением, инверсные цвета, при изменении инита ничего не меняется.

UTFT_v2.77b2_uno_ili9327_8bit_turbo:

 

Читалка 5.3 выдала :

 


v5.3 read all register + read ID + TFT LCD test
for 8bit TFT LCD UNO shield pinout Adafruit D89234567
on board Arduino UNO & Arduino MEGA
TFT size set is 320x240
include LCD drivers: ILI9325 ILI9328 HX8347G HX8347D* HX8357D ILI9341
v5.3    B0h  <- 0xFFFFFF   <- 0x040404  from  Slider
www.arduino.ru/forum/apparatnye-voprosy/arduino-i-displei-ot-sotikov-mob... 
 
reg  p1 p2 p3 p4 p5 p6 p7 p8  
00 = 0                       * 
01 = 0 
02 = 0 
03 = 0 
04 = 04 04 04 04 04 04 04 04 ***** 
05 = 04 04 04 04 04 04 04 04  
06 = 04 04 04 04 04 04 04 04  
07 = 04 04 04 04 04 04 04 04  
08 = 0 
09 = 0 
0A = 0 
0B = 0 
0C = 04 04 04 04 04 04 04 04  
0D = 04 04 04 04 04 04 04 04  
0E = 04 04 04 04 04 04 04 04  
0F = 04 04 04 04 04 04 04 04  
10 = 0 
11 = 0 
12 = 0 
13 = 0 
14 = 04 04 04 04 04 04 04 04  
15 = 04 04 04 04 04 04 04 04  
16 = 04 04 04 04 04 04 04 04  
17 = 04 04 04 04 04 04 04 04  
18 = 0 
19 = 0 
1A = 0 
1B = 0 
1C = 04 04 04 04 04 04 04 04  
1D = 04 04 04 04 04 04 04 04  
1E = 04 04 04 04 04 04 04 04  
1F = 04 04 04 04 04 04 04 04  
20 = 0 
21 = 0 
22 = 0 
23 = 0 
24 = 04 04 04 04 04 04 04 04  
25 = 04 04 04 04 04 04 04 04  
26 = 04 04 04 04 04 04 04 04  
27 = 04 04 04 04 04 04 04 04  
28 = 0 
29 = 0 
2A = 0 
2B = 0 
2C = 04 04 04 04 04 04 04 04  
2D = 04 04 04 04 04 04 04 04  
2E = 04 04 04 04 04 04 04 04  
2F = 04 04 04 04 04 04 04 04  
30 = 0 
31 = 0 
32 = 0 
33 = 0 
34 = 04 04 04 04 04 04 04 04  
35 = 04 04 04 04 04 04 04 04  
36 = 04 04 04 04 04 04 04 04  
37 = 04 04 04 04 04 04 04 04  
38 = 0 
39 = 0 
3A = 0 
3B = 0 
3C = 04 04 04 04 04 04 04 04  
3D = 04 04 04 04 04 04 04 04  
3E = 04 04 04 04 04 04 04 04  
3F = 04 04 04 04 04 04 04 04  
40 = 0 
41 = 0 
42 = 0 
43 = 0 
44 = 04 04 04 04 04 04 04 04  
45 = 04 04 04 04 04 04 04 04  
46 = 04 04 04 04 04 04 04 04  
47 = 04 04 04 04 04 04 04 04  
48 = 0 
49 = 0 
4A = 0 
4B = 0 
4C = 04 04 04 04 04 04 04 04  
4D = 04 04 04 04 04 04 04 04  
4E = 04 04 04 04 04 04 04 04  
4F = 04 04 04 04 04 04 04 04  
50 = 0 
51 = 0 
52 = 0 
53 = 0 
54 = 04 04 04 04 04 04 04 04  
55 = 04 04 04 04 04 04 04 04  
56 = 04 04 04 04 04 04 04 04  
57 = 04 04 04 04 04 04 04 04  
58 = 0 
59 = 0 
5A = 0 
5B = 0 
5C = 04 04 04 04 04 04 04 04  
5D = 04 04 04 04 04 04 04 04  
5E = 04 04 04 04 04 04 04 04  
5F = 04 04 04 04 04 04 04 04  
60 = 0 
61 = 0 
62 = 0 
63 = 0 
64 = 04 04 04 04 04 04 04 04  
65 = 04 04 04 04 04 04 04 04  
66 = 04 04 04 04 04 04 04 04  
67 = 04 04 04 04 04 04 04 04  
68 = 0 
69 = 0 
6A = 0 
6B = 0 
6C = 04 04 04 04 04 04 04 04  
6D = 04 04 04 04 04 04 04 04  
6E = 04 04 04 04 04 04 04 04  
6F = 04 04 04 04 04 04 04 04  
70 = 0 
71 = 0 
72 = 0 
73 = 0 
74 = 04 04 04 04 04 04 04 04  
75 = 04 04 04 04 04 04 04 04  
76 = 04 04 04 04 04 04 04 04  
77 = 04 04 04 04 04 04 04 04  
78 = 0 
79 = 0 
7A = 0 
7B = 0 
7C = 04 04 04 04 04 04 04 04  
7D = 04 04 04 04 04 04 04 04  
7E = 04 04 04 04 04 04 04 04  
7F = 04 04 04 04 04 04 04 04  
80 = 0 
81 = 0 
82 = 0 
83 = 0 
84 = 04 04 04 04 04 04 04 04  
85 = 04 04 04 04 04 04 04 04  
86 = 04 04 04 04 04 04 04 04  
87 = 04 04 04 04 04 04 04 04  
88 = 0 
89 = 0 
8A = 0 
8B = 0 
8C = 04 04 04 04 04 04 04 04  
8D = 04 04 04 04 04 04 04 04  
8E = 04 04 04 04 04 04 04 04  
8F = 04 04 04 04 04 04 04 04  
90 = 0 
91 = 0 
92 = 0 
93 = 0 
94 = 04 04 04 04 04 04 04 04  
95 = 04 04 04 04 04 04 04 04  
96 = 04 04 04 04 04 04 04 04  
97 = 04 04 04 04 04 04 04 04  
98 = 0 
99 = 0 
9A = 0 
9B = 0 
9C = 04 04 04 04 04 04 04 04  
9D = 04 04 04 04 04 04 04 04  
9E = 04 04 04 04 04 04 04 04  
9F = 04 04 04 04 04 04 04 04  
A0 = 0 
A1 = 0 
A2 = 0 
A3 = 0 
A4 = 04 04 04 04 04 04 04 04  
A5 = 04 04 04 04 04 04 04 04  
A6 = 04 04 04 04 04 04 04 04  
A7 = 04 04 04 04 04 04 04 04  
A8 = 0 
A9 = 0 
AA = 0 
AB = 0 
AC = 04 04 04 04 04 04 04 04  
AD = 04 04 04 04 04 04 04 04  
AE = 04 04 04 04 04 04 04 04  
AF = 04 04 04 04 04 04 04 04  
B0 = 0 
B1 = 0 
B2 = 0 
B3 = 0 
B4 = 04 04 04 04 04 04 04 04  
B5 = 04 04 04 04 04 04 04 04  
B6 = 04 04 04 04 04 04 04 04  
B7 = 04 04 04 04 04 04 04 04  
B8 = 0 
B9 = 0 
BA = 0 
BB = 0 
BC = 04 04 04 04 04 04 04 04  
BD = 04 04 04 04 04 04 04 04  
BE = 04 04 04 04 04 04 04 04  
BF = 04 04 04 04 04 04 04 04 ***** 
C0 = 0 
C1 = 0 
C2 = 0 
C3 = 0 
C4 = 04 04 04 04 04 04 04 04  
C5 = 04 04 04 04 04 04 04 04  
C6 = 04 04 04 04 04 04 04 04  
C7 = 04 04 04 04 04 04 04 04  
C8 = 0 
C9 = 0 
CA = 0 
CB = 0 
CC = 04 04 04 04 04 04 04 04  
CD = 04 04 04 04 04 04 04 04  
CE = 04 04 04 04 04 04 04 04  
CF = 04 04 04 04 04 04 04 04  
D0 = 0 
D1 = 0 
D2 = 0 
D3 = 0                       * 
D4 = 04 04 04 04 04 04 04 04  
D5 = 04 04 04 04 04 04 04 04  
D6 = 04 04 04 04 04 04 04 04  
D7 = 04 04 04 04 04 04 04 04  
D8 = 0 
D9 = 0 
DA = 0                       * 
DB = 0                       * 
DC = 04 04 04 04 04 04 04 04 ***** 
DD = 04 04 04 04 04 04 04 04  
DE = 04 04 04 04 04 04 04 04  
DF = 04 04 04 04 04 04 04 04  
E0 = 0 
E1 = 0 
E2 = 0 
E3 = 0 
E4 = 04 04 04 04 04 04 04 04  
E5 = 04 04 04 04 04 04 04 04  
E6 = 04 04 04 04 04 04 04 04  
E7 = 04 04 04 04 04 04 04 04  
E8 = 0 
E9 = 0 
EA = 0 
EB = 0 
EC = 04 04 04 04 04 04 04 04  
ED = 04 04 04 04 04 04 04 04  
EE = 04 04 04 04 04 04 04 04  
EF = 04 04 04 04 04 04 04 04 ***** 
F0 = 0 
F1 = 0 
F2 = 0 
F3 = 0 
F4 = 04 04 04 04 04 04 04 04  
F5 = 04 04 04 04 04 04 04 04  
F6 = 04 04 04 04 04 04 04 04  
F7 = 04 04 04 04 04 04 04 04  
F8 = 0 
F9 = 0 
FA = 0 
FB = 0 
FC = 04 04 04 04 04 04 04 04  
FD = 04 04 04 04 04 04 04 04  
FE = 04 04 04 04 04 04 04 04  
o------------------------------------o
|                                    | 
00 = 0                       *       | 
04 = 04 04 04 04 04 04 04 04 *****       | 
B0 = 0                               | 
BF = 04 04 04 04 04 04 04 04 *****       | 
D3 = 0                       *       | 
DA = 0                       *       | 
DB = 0                       *       | 
DC = 04 04 04 04 04 04 04 04 *****       | 
EF = 04 04 04 04 04 04 04 04 *****       | 
|                                    |
o------------------------------------o
 .23:57:54.021 ->  . . . . . . 
  writing in Manufacturer Command Access Protect  (B0h) <- 0xFFFFFF  
B0 = 0 
Device Code Read (BFh)  
BF = 04 04 04 04 04 04 04 04 ***** 
 . . . 
 
reg  p1 p2 p3 p4 p5 p6 p7 p8  
B0 = 0 
B1 = 0 
B2 = 0 
B3 = 0 
B4 = 04 04 04 04 04 04 04 04  
B5 = 04 04 04 04 04 04 04 04  
B6 = 04 04 04 04 04 04 04 04  
B7 = 04 04 04 04 04 04 04 04  
B8 = 0 
B9 = 0 
BA = 0 
BB = 0 
BC = 04 04 04 04 04 04 04 04  
BD = 04 04 04 04 04 04 04 04  
BE = 04 04 04 04 04 04 04 04  
BF = 04 04 04 04 04 04 04 04 ***** 
C0 = 0 
C1 = 0 
C2 = 0 
C3 = 0 
C4 = 04 04 04 04 04 04 04 04  
C5 = 04 04 04 04 04 04 04 04  
C6 = 04 04 04 04 04 04 04 04  
C7 = 04 04 04 04 04 04 04 04  
C8 = 0 
C9 = 0 
CA = 0 
CB = 0 
CC = 04 04 04 04 04 04 04 04  
CD = 04 04 04 04 04 04 04 04  
CE = 04 04 04 04 04 04 04 04  
CF = 04 04 04 04 04 04 04 04  
D0 = 0 
D1 = 0 
D2 = 0 
D3 = 0                       * 
D4 = 04 04 04 04 04 04 04 04  
D5 = 04 04 04 04 04 04 04 04  
D6 = 04 04 04 04 04 04 04 04  
D7 = 04 04 04 04 04 04 04 04  
D8 = 0 
D9 = 0 
DA = 0                       * 
DB = 0                       * 
DC = 04 04 04 04 04 04 04 04 ***** 
DD = 04 04 04 04 04 04 04 04  
DE = 04 04 04 04 04 04 04 04  
DF = 04 04 04 04 04 04 04 04  
E0 = 0 
E1 = 0 
E2 = 0 
E3 = 0 
E4 = 04 04 04 04 04 04 04 04  
E5 = 04 04 04 04 04 04 04 04  
E6 = 04 04 04 04 04 04 04 04  
E7 = 04 04 04 04 04 04 04 04  
E8 = 0 
E9 = 0 
EA = 0 
EB = 0 
EC = 04 04 04 04 04 04 04 04  
ED = 04 04 04 04 04 04 04 04  
EE = 04 04 04 04 04 04 04 04  
EF = 04 04 04 04 04 04 04 04 ***** 
F0 = 0 
F1 = 0 
F2 = 0 
F3 = 0 
F4 = 04 04 04 04 04 04 04 04  
F5 = 04 04 04 04 04 04 04 04  
F6 = 04 04 04 04 04 04 04 04  
F7 = 04 04 04 04 04 04 04 04  
F8 = 0 
F9 = 0 
FA = 0 
FB = 0 
FC = 04 04 04 04 04 04 04 04  
FD = 04 04 04 04 04 04 04 04  
FE = 04 04 04 04 04 04 04 04  
 writing in Manufacturer Command Access Protect  (B0h) <- 0x040404  
B0 = 0 
Device Code Read (BFh)  
BF = 04 04 04 04 04 04 04 04 ***** 
 . . . 
 
reg  p1 p2 p3 p4 p5 p6 p7 p8  
B0 = 0 
B1 = 0 
B2 = 0 
B3 = 0 
B4 = 04 04 04 04 04 04 04 04  
B5 = 04 04 04 04 04 04 04 04  
B6 = 04 04 04 04 04 04 04 04  
B7 = 04 04 04 04 04 04 04 04  
B8 = 0 
B9 = 0 
BA = 0 
BB = 0 
BC = 04 04 04 04 04 04 04 04  
BD = 04 04 04 04 04 04 04 04  
BE = 04 04 04 04 04 04 04 04  
BF = 04 04 04 04 04 04 04 04 ***** 
C0 = 0 
C1 = 0 
C2 = 0 
C3 = 0 
C4 = 04 04 04 04 04 04 04 04  
C5 = 04 04 04 04 04 04 04 04  
C6 = 04 04 04 04 04 04 04 04  
C7 = 04 04 04 04 04 04 04 04  
C8 = 0 
C9 = 0 
CA = 0 
CB = 0 
CC = 04 04 04 04 04 04 04 04  
CD = 04 04 04 04 04 04 04 04  
CE = 04 04 04 04 04 04 04 04  
CF = 04 04 04 04 04 04 04 04  
D0 = 0 
D1 = 0 
D2 = 0 
D3 = 0                       * 
D4 = 04 04 04 04 04 04 04 04  
D5 = 04 04 04 04 04 04 04 04  
D6 = 04 04 04 04 04 04 04 04  
D7 = 04 04 04 04 04 04 04 04  
D8 = 0 
D9 = 0 
DA = 0                       * 
DB = 0                       * 
DC = 04 04 04 04 04 04 04 04 ***** 
DD = 04 04 04 04 04 04 04 04  
DE = 04 04 04 04 04 04 04 04  
DF = 04 04 04 04 04 04 04 04  
E0 = 0 
E1 = 0 
E2 = 0 
E3 = 0 
E4 = 04 04 04 04 04 04 04 04  
E5 = 04 04 04 04 04 04 04 04  
E6 = 04 04 04 04 04 04 04 04  
E7 = 04 04 04 04 04 04 04 04  
E8 = 0 
E9 = 0 
EA = 0 
EB = 0 
EC = 04 04 04 04 04 04 04 04  
ED = 04 04 04 04 04 04 04 04  
EE = 04 04 04 04 04 04 04 04  
EF = 04 04 04 04 04 04 04 04 ***** 
F0 = 0 
F1 = 0 
F2 = 0 
F3 = 0 
F4 = 04 04 04 04 04 04 04 04  
F5 = 04 04 04 04 04 04 04 04  
F6 = 04 04 04 04 04 04 04 04  
F7 = 04 04 04 04 04 04 04 04  
F8 = 0 
F9 = 0 
FA = 0 
FB = 0 
FC = 04 04 04 04 04 04 04 04  
FD = 04 04 04 04 04 04 04 04  
FE = 04 04 04 04 04 04 04 04  
 
Unknown LCD driver chip: 0
***use minimal init as driver ili9341 ili9488 *** ->
Benchmark                Time (microseconds)
Screen fill              1379996
Text                     354280
Lines                    3385176
Horiz/Vert Lines         144336
Rectangles (outline)     103892
Rectangles (filled)      3268512
Circles (filled)         1199776
Circles (outline)        1468224
Triangles (outline)      1073008
Triangles (filled)       1713196
Rounded rects (outline)  505872
Rounded rects (filled)   3790320
Done!!!  ID reader v5.3
aleksl
Offline
Зарегистрирован: 02.11.2017

Вот что в MCUFRIEND_kbv  LCD_ID_Reader :

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

, посмотрите сообщение  http://arduino.ru/forum/apparatnye-voprosy/arduino-i-displei-ot-sotikov-mobilnykh-telefonov?page=9#comment-297841  , и от #460 и дальше . там тож сначала завелось только на UTFT_v2.77b2_uno_ili9327_8bit_turbo .

поищите по форуму  GT-S5233 , GT-S5230 ( собственно вы и сами знаете судя по коннектору на плате на фото . заводились эти диспы ? ). 

// UTFT_v2.77b2_uno_ili9327_8bit_turbo (модифицированный UTFT)  работает на адафруитской распиновке ардуинки 7823456 , а не модифицированный UTFT 01234567 , поэтому для подбора инитов UTFT надо использовать подключение 01234567 , и чистый UTFT (и надо закоментить по 50%  #define DISABLE_ в файле memorysaver.h   , т.к. памяти у меги328 не хватает под все иниты . при закомментировании , эти иниты подгружаются в мегу328 ) . Останется только перебирать номера от 0 до 15 в примере UTFT_Demo_400x240 , а потом на другие 50% инитов от 16 до 31 ). Или же с примера по удалять половину графики , чтоб сразу для всех раскоментированных инитов хватило памяти )
На чистом UTFT , надо на RD подкл. на +3.3в . А в доработанной либе 8bit_turbo , на пин A0 подается лог.1 (внутри либы,) , потому как на адафруитском шилде RD выведен на A0.

//// раз UTFT_v2.77b2_uno_ili9327_8bit_turbo завел его , то можно его и юзать , немного подменить данные в регистрах инита . в теме есть много решений по - инверсия цветов   ( в местный поиск - инверсия цветов ) . Решений 3 - изменять регистры в ините , выбрать режим на диспе с помощью выводов IM , использовать его на 16бит (не для этого диспа).
 

aleksl
Offline
Зарегистрирован: 02.11.2017

Поковырялся с дисплеем, так и не удалось наладить инит по человечески, видимо дисп очень китайский. Взял либу UTFT_v2.77b2_uno_ili9327_8bit_turbo  и пихнул инит, который использовал Tvicks в посте #634 . Вернуть цвета так и не удалось да и работает не совсем корректно. В идеале бы заставить работать с MCUFRIEND_kbv, Adafruit

//samsung g5233:
	LCD_Write_COM(0xF5);
	LCD_Write_DATA(0x12);
        LCD_Write_DATA(0x00);
        LCD_Write_DATA(0x0B);
        LCD_Write_DATA(0xF0);
        LCD_Write_DATA(0x00);
        delay(10);
        
	LCD_Write_COM(0x11); 
	delay(150);
        
	LCD_Write_COM(0x3A);
        LCD_Write_DATA(0x05);
	
	LCD_Write_COM(0xF2);
	LCD_Write_DATA(0x10);
	LCD_Write_DATA(0x10);
	LCD_Write_DATA(0x01);
        LCD_Write_DATA(0x08);
        LCD_Write_DATA(0x08);
        LCD_Write_DATA(0x08);
        LCD_Write_DATA(0x08);
        LCD_Write_DATA(0x00);
        LCD_Write_DATA(0x06); 
        LCD_Write_DATA(0x1A);
        LCD_Write_DATA(0x1A);
        
	LCD_Write_COM(0xF3);
	LCD_Write_DATA(0x80);
        LCD_Write_DATA(0x00);
        LCD_Write_DATA(0x00);
        LCD_Write_DATA(0x0B);
        LCD_Write_DATA(0x33);
        LCD_Write_DATA(0x7F);
        LCD_Write_DATA(0x7F);
        
	LCD_Write_COM(0xF4);
	LCD_Write_DATA(0x59);
        LCD_Write_DATA(0x59);
        LCD_Write_DATA(0x52);
        LCD_Write_DATA(0x52);
        LCD_Write_DATA(0x11);

	LCD_Write_COM(0xF6);
	LCD_Write_DATA(0x00);
	LCD_Write_DATA(0x88);
	LCD_Write_DATA(0x10);

	LCD_Write_COM(0xFD); 
	LCD_Write_DATA(0x11);
	LCD_Write_DATA(0x01);

	LCD_Write_COM(0x36); 
	LCD_Write_DATA(0x00);
        LCD_Write_DATA(0x35);
        LCD_Write_DATA(0x00);

	LCD_Write_COM(0xF1); 
	LCD_Write_DATA(0x5A);

	LCD_Write_COM(0xFF); 
	LCD_Write_DATA(0x00);
	LCD_Write_DATA(0x00);
	LCD_Write_DATA(0x00);
	LCD_Write_DATA(0x40);

	LCD_Write_COM(0x53); 
	LCD_Write_DATA(0x2C);
        LCD_Write_COM(0x55); 
	LCD_Write_DATA(0x00);

	LCD_Write_COM(0x29); //display on      
	
//	break;

aleksl
Offline
Зарегистрирован: 02.11.2017

Вот что вышло на либе MCUFRIEND_kbv GLUE DEMO:

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

 

Isteb
Offline
Зарегистрирован: 10.03.2019

#define ENABLE_BIT_DEFINITIONS // enables the bit definitions, such as PD0, CS01, WGM02..
#include <intrinsics.h>
#include <iom16.h>
#define F_CPU 16000000 // Only for delay calculations

#define RST PB3
#define RS PB2
#define CS PB4

#define white 0xFFFF
#define yellow 0xFFE0
#define cyan 0x07FF
#define green 0x07E0
#define purple 0xF81F
#define red 0xF800
#define blue 0x001F
#define black 0x0000
#define gray 0x7800+0x0380+0x0F

__flash int colorbars[8]={white,yellow,cyan,green,purple,red,blue,black};

__flash char font6x8[576]=
{0x00,0x00,0x00,0x00,0x00,0x00, // Symbol 20
0x00,0x00,0x00,0x5F,0x00,0x00, // Symbol 21
0x00,0x00,0x03,0x00,0x03,0x00, // Symbol 22
0x22,0x7F,0x22,0x22,0x7F,0x22, // Symbol 23
0x00,0x24,0x2A,0x6B,0x2A,0x12, // Symbol 24
0x00,0x23,0x13,0x08,0x64,0x62, // Symbol 25
0x00,0x3A,0x45,0x45,0x3A,0x28, // Symbol 26
0x00,0x00,0x00,0x02,0x01,0x00, // Symbol 27
0x00,0x00,0x3E,0x41,0x00,0x00, // Symbol 28
0x00,0x00,0x41,0x3E,0x00,0x00, // Symbol 29
0x00,0x2A,0x1C,0x1C,0x2A,0x00, // Symbol 2A
0x00,0x08,0x08,0x3E,0x08,0x08, // Symbol 2B
0x00,0x00,0x80,0x40,0x00,0x00, // Symbol 2C
0x00,0x08,0x08,0x08,0x08,0x00, // Symbol 2D
0x00,0x00,0x00,0x40,0x00,0x00, // Symbol 2E
0x00,0x20,0x10,0x08,0x04,0x02, // Symbol 2F
0x00,0x3E,0x51,0x49,0x45,0x3E, // Symbol 30
0x00,0x00,0x42,0x7F,0x40,0x00, // Symbol 31
0x00,0x62,0x51,0x51,0x51,0x4E, // Symbol 32
0x00,0x21,0x41,0x45,0x45,0x3B, // Symbol 33
0x00,0x18,0x16,0x11,0x7F,0x10, // Symbol 34
0x00,0x27,0x45,0x45,0x45,0x39, // Symbol 35
0x00,0x3E,0x49,0x49,0x49,0x32, // Symbol 36
0x00,0x01,0x61,0x11,0x09,0x07, // Symbol 37
0x00,0x36,0x49,0x49,0x49,0x36, // Symbol 38
0x00,0x26,0x49,0x49,0x49,0x3E, // Symbol 39
0x00,0x00,0x00,0x12,0x00,0x00, // Symbol 3A
0x00,0x00,0x20,0x12,0x00,0x00, // Symbol 3B
0x00,0x08,0x14,0x22,0x41,0x00, // Symbol 3C
0x00,0x14,0x14,0x14,0x14,0x14, // Symbol 3D
0x00,0x41,0x22,0x14,0x08,0x00, // Symbol 3E
0x00,0x06,0x01,0x51,0x09,0x06, // Symbol 3F
0x00,0x3E,0x41,0x4D,0x4D,0x2E, // Symbol 40
0x00,0x78,0x16,0x11,0x16,0x78, // Symbol 41
0x00,0x7F,0x49,0x49,0x49,0x36, // Symbol 42
0x00,0x3E,0x41,0x41,0x41,0x22, // Symbol 43
0x00,0x7F,0x41,0x41,0x41,0x3E, // Symbol 44
0x00,0x7F,0x49,0x49,0x49,0x41, // Symbol 45
0x00,0x7F,0x09,0x09,0x09,0x01, // Symbol 46
0x00,0x3E,0x41,0x41,0x51,0x32, // Symbol 47
0x00,0x7F,0x08,0x08,0x08,0x7F, // Symbol 48
0x00,0x00,0x41,0x7F,0x41,0x00, // Symbol 49
0x00,0x30,0x40,0x41,0x41,0x3F, // Symbol 4A
0x00,0x7F,0x08,0x08,0x14,0x63, // Symbol 4B
0x00,0x7F,0x40,0x40,0x40,0x60, // Symbol 4C
0x00,0x7F,0x04,0x18,0x04,0x7F, // Symbol 4D
0x00,0x7F,0x04,0x08,0x10,0x7F, // Symbol 4E
0x00,0x3E,0x41,0x41,0x41,0x3E, // Symbol 4F
0x00,0x7F,0x09,0x09,0x09,0x06, // Symbol 50
0x00,0x3E,0x41,0x61,0x21,0x5E, // Symbol 51
0x00,0x7F,0x09,0x09,0x19,0x66, // Symbol 52
0x00,0x26,0x49,0x49,0x49,0x32, // Symbol 53
0x00,0x01,0x01,0x7F,0x01,0x01, // Symbol 54
0x00,0x3F,0x40,0x40,0x40,0x3F, // Symbol 55
0x00,0x07,0x18,0x60,0x18,0x07, // Symbol 56
0x00,0x1F,0x60,0x18,0x60,0x1F, // Symbol 57
0x00,0x63,0x14,0x08,0x14,0x63, // Symbol 58
0x00,0x03,0x04,0x78,0x04,0x03, // Symbol 59
0x00,0x61,0x51,0x49,0x45,0x43, // Symbol 5A
0x00,0x00,0x7F,0x41,0x00,0x00, // Symbol 5B
0x00,0x02,0x04,0x08,0x10,0x20, // Symbol 5C
0x00,0x00,0x41,0x7F,0x00,0x00, // Symbol 5D
0x00,0x00,0x00,0x00,0x00,0x00, // Symbol 5E
0x40,0x40,0x40,0x40,0x40,0x40, // Symbol 5F
0x00,0x00,0x00,0x01,0x02,0x00, // Symbol 60
0x00,0x20,0x54,0x54,0x54,0x78, // Symbol 61
0x00,0x7E,0x48,0x48,0x48,0x30, // Symbol 62
0x00,0x38,0x44,0x44,0x44,0x28, // Symbol 63
0x00,0x30,0x48,0x48,0x48,0x7E, // Symbol 64
0x00,0x38,0x54,0x54,0x54,0x18, // Symbol 65
0x00,0x10,0x7C,0x12,0x02,0x04, // Symbol 66
0x00,0x0C,0x52,0x52,0x3C,0x02, // Symbol 67
0x00,0x7E,0x08,0x08,0x08,0x70, // Symbol 68
0x00,0x00,0x00,0x74,0x00,0x00, // Symbol 69
0x00,0x40,0x80,0x80,0x74,0x00, // Symbol 6A
0x00,0x7E,0x10,0x10,0x10,0x6C, // Symbol 6B
0x00,0x00,0x02,0x7E,0x00,0x00, // Symbol 6C
0x00,0x7C,0x04,0x78,0x04,0x78, // Symbol 6D
0x00,0x7C,0x04,0x04,0x04,0x78, // Symbol 6E
0x00,0x38,0x44,0x44,0x44,0x38, // Symbol 6F
0x00,0xFC,0x24,0x24,0x24,0x18, // Symbol 70
0x00,0x18,0x24,0x24,0x24,0xFC, // Symbol 71
0x00,0x7C,0x08,0x04,0x04,0x08, // Symbol 72
0x00,0x48,0x54,0x54,0x54,0x20, // Symbol 73
0x00,0x08,0x3E,0x48,0x40,0x00, // Symbol 74
0x00,0x3C,0x40,0x40,0x40,0x3C, // Symbol 75
0x00,0x1C,0x20,0x40,0x20,0x1C, // Symbol 76
0x00,0x3C,0x40,0x30,0x40,0x3C, // Symbol 77
0x00,0x44,0x28,0x10,0x28,0x44, // Symbol 78
0x00,0x1C,0x20,0xA0,0xA0,0x7C, // Symbol 79
0x00,0x44,0x64,0x54,0x4C,0x44, // Symbol 7A
0x00,0x08,0x36,0x41,0x00,0x00, // Symbol 7B
0x00,0x00,0x00,0x7F,0x00,0x00, // Symbol 7C
0x00,0x00,0x41,0x36,0x08,0x00, // Symbol 7D
0x02,0x01,0x01,0x02,0x02,0x01, // Symbol 7E
0x00,0x7F,0x7F,0x7F,0x7F,0x7F}; // Symbol 7F

__flash char text0[]= "Juras-Projects 2012";
__flash char text1[]= "Siemens C75 LCD (ALPS)";
__flash char text2[]= "176x132 pixels, 16 bit mode";

void c75_alps_cmd(char cmd)
{
  PORTB&=~(1<<RS); // RS=0
  SPDR=cmd;
  __delay_cycles(16+4);
}

void c75_alps_data16(char data_h, char data_l)
{
  PORTB|=(1<<RS); // RS=1
  SPDR=data_h;
  __delay_cycles(16+4);
  SPDR=data_l;
  __delay_cycles(16+4);  
}

void c75_alps_init(void)
{
  __delay_cycles(F_CPU*0.1);// delay 100ms  
  PORTB|=(1<<RST); //Release Reset
  __delay_cycles(F_CPU*0.057);// delay 57ms  
  PORTB&=~(1<<CS); // CS=0, chip selsect
  
  c75_alps_cmd(0x00);
  c75_alps_data16(0x00,0x01);

  c75_alps_cmd(0x10);
  c75_alps_data16(0x1F,0x92);
  
  c75_alps_cmd(0x11);
  c75_alps_data16(0x00,0x14);

  c75_alps_cmd(0x00);
  c75_alps_data16(0x00,0x01);
  
  c75_alps_cmd(0x10);
  c75_alps_data16(0x1F,0x92);
  
  c75_alps_cmd(0x11);
  c75_alps_data16(0x00,0x1C);
  
  c75_alps_cmd(0x28);
  c75_alps_data16(0x00,0x06);
  
  c75_alps_cmd(0x02);
  c75_alps_data16(0x00,0x00);
  
  c75_alps_cmd(0x12);
  c75_alps_data16(0x04,0x0F);
  
  c75_alps_cmd(0x22);

  for (int j=0; j<(132*176);j++) {c75_alps_data16(0x00,0x00);}//black  
  
  c75_alps_cmd(0x03);//Set Entry Mode
  c75_alps_data16(0x78,0x30);
  
  c75_alps_cmd(0x01);
  c75_alps_data16(0x31,0xAF);//strange must be FF?
  
  c75_alps_cmd(0x07);
  c75_alps_data16(0x00,0x33);
  
  PORTB|=(1<<CS); // CS=1 chip deselect
}

void c75_alps_put_char16(char x, char y, char symbol, int color, int bkcolor)
{
  c75_alps_cmd(0x44);//Y range
  c75_alps_data16(y+7,y);//Y2,Y1
  
  c75_alps_cmd(0x47);//X range
  c75_alps_data16(x+5,x);//X2,X1    
 
  c75_alps_cmd(0x21);//coordinates
  c75_alps_data16(x,y);//X, Y    
  
  c75_alps_cmd(0x22);
  
  int offset=6*(symbol-0x20);
  for (char i=0;i<6;i++)
  {
    for (char j=0;j<8;j++) {if (((font6x8[offset+i]<<j)&0x80)==0x80) {c75_alps_data16(color>>8,color);} else {c75_alps_data16(bkcolor>>8,bkcolor);}}
  }
}

void c75_alps_put_string16(char x, char y, char __flash * text, int color, int bkcolor)
{
  char i=0; 
  char x0=0;
  while (text[i]!=0)
  {
    c75_alps_put_char16(x+x0,y,text[i], color , bkcolor);
    i++;
    x0+=6;
  }
}

void c75_alps_rect(char x1, char y1, char x2, char y2, int color)
{
  c75_alps_cmd(0x44);//Y range
  c75_alps_data16(y2,y1);//Y2,Y1
  
  c75_alps_cmd(0x47);//X range
  c75_alps_data16(x2,x1);//X2,X1    
 
  c75_alps_cmd(0x21);//coordinates
  c75_alps_data16(x1,y1);//X, Y   
  
  c75_alps_cmd(0x22);
  for (int i=(y2-y1+1)*(x2-x1+1);i>0;i--) c75_alps_data16(color>>8,color);
}

void main( void )
{
  DDRB=0xFF;  //PortB is output
  PORTB=(1<<CS)|(1<<RS);
  SPCR=(1<<MSTR)|(1<<SPE);//SPI Interface
  SPSR=1;
  c75_alps_init(); 
  
  PORTB&=~(1<<CS); // CS=0, chip selsect
  c75_alps_put_string16(32,120,text0, white, black);  
  c75_alps_put_string16(4+3,120-10,text2, cyan, black);        
  
  c75_alps_rect(0,22,175,65,gray);//gray box

  c75_alps_rect(10,34,165,54,white);
  c75_alps_rect(12,36,163,52,red);    
  c75_alps_put_string16(22,40,text1, white, red);    
  
  for (char i=0;i<8;i++)//draw color bars
  {
    c75_alps_rect(i*22,0,i*22+21,21,colorbars[i]);
  }
  
  for (char i=0;i<16;i++)//draw gradients
  {
    c75_alps_rect(i*11,66,i*11+10,75,i*2);//blue
    c75_alps_rect(i*11,76,i*11+10,85,(i<<6)*2);//green
    c75_alps_rect(i*11,86,i*11+10,95,(i<<11)*2);//red
  }

  PORTB|=(1<<CS); // CS=1 chip deselect
  
  while(1)
  {
  }
}

Ребят большая просьба, помогите переписать под ардуино.

пытаюсь запустить от simens c65 (ALPS).   

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

Isteb, эт в тему  http://arduino.ru/forumy/programmirovanie

типа перевод ( импорт ) кода  с AVR Studio в Arduino IDE . 

 

// в программировании не ас , но вот что получилось на скорую руку ,  компилится норм в Arduino IDE 1.8.9

#define RST PB3
#define RS PB2
#define CS PB4

#define white 0xFFFF
#define yellow 0xFFE0
#define cyan 0x07FF
#define green 0x07E0
#define purple 0xF81F
#define red 0xF800
#define blue 0x001F
#define black 0x0000
#define gray 0x7800+0x0380+0x0F


int colorbars[8]={white,yellow,cyan,green,purple,red,blue,black};

const PROGMEM char font6x8[576]=
{0x00,0x00,0x00,0x00,0x00,0x00, // Symbol 20
0x00,0x00,0x00,0x5F,0x00,0x00, // Symbol 21
0x00,0x00,0x03,0x00,0x03,0x00, // Symbol 22
0x22,0x7F,0x22,0x22,0x7F,0x22, // Symbol 23
0x00,0x24,0x2A,0x6B,0x2A,0x12, // Symbol 24
0x00,0x23,0x13,0x08,0x64,0x62, // Symbol 25
0x00,0x3A,0x45,0x45,0x3A,0x28, // Symbol 26
0x00,0x00,0x00,0x02,0x01,0x00, // Symbol 27
0x00,0x00,0x3E,0x41,0x00,0x00, // Symbol 28
0x00,0x00,0x41,0x3E,0x00,0x00, // Symbol 29
0x00,0x2A,0x1C,0x1C,0x2A,0x00, // Symbol 2A
0x00,0x08,0x08,0x3E,0x08,0x08, // Symbol 2B
0x00,0x00,0x80,0x40,0x00,0x00, // Symbol 2C
0x00,0x08,0x08,0x08,0x08,0x00, // Symbol 2D
0x00,0x00,0x00,0x40,0x00,0x00, // Symbol 2E
0x00,0x20,0x10,0x08,0x04,0x02, // Symbol 2F
0x00,0x3E,0x51,0x49,0x45,0x3E, // Symbol 30
0x00,0x00,0x42,0x7F,0x40,0x00, // Symbol 31
0x00,0x62,0x51,0x51,0x51,0x4E, // Symbol 32
0x00,0x21,0x41,0x45,0x45,0x3B, // Symbol 33
0x00,0x18,0x16,0x11,0x7F,0x10, // Symbol 34
0x00,0x27,0x45,0x45,0x45,0x39, // Symbol 35
0x00,0x3E,0x49,0x49,0x49,0x32, // Symbol 36
0x00,0x01,0x61,0x11,0x09,0x07, // Symbol 37
0x00,0x36,0x49,0x49,0x49,0x36, // Symbol 38
0x00,0x26,0x49,0x49,0x49,0x3E, // Symbol 39
0x00,0x00,0x00,0x12,0x00,0x00, // Symbol 3A
0x00,0x00,0x20,0x12,0x00,0x00, // Symbol 3B
0x00,0x08,0x14,0x22,0x41,0x00, // Symbol 3C
0x00,0x14,0x14,0x14,0x14,0x14, // Symbol 3D
0x00,0x41,0x22,0x14,0x08,0x00, // Symbol 3E
0x00,0x06,0x01,0x51,0x09,0x06, // Symbol 3F
0x00,0x3E,0x41,0x4D,0x4D,0x2E, // Symbol 40
0x00,0x78,0x16,0x11,0x16,0x78, // Symbol 41
0x00,0x7F,0x49,0x49,0x49,0x36, // Symbol 42
0x00,0x3E,0x41,0x41,0x41,0x22, // Symbol 43
0x00,0x7F,0x41,0x41,0x41,0x3E, // Symbol 44
0x00,0x7F,0x49,0x49,0x49,0x41, // Symbol 45
0x00,0x7F,0x09,0x09,0x09,0x01, // Symbol 46
0x00,0x3E,0x41,0x41,0x51,0x32, // Symbol 47
0x00,0x7F,0x08,0x08,0x08,0x7F, // Symbol 48
0x00,0x00,0x41,0x7F,0x41,0x00, // Symbol 49
0x00,0x30,0x40,0x41,0x41,0x3F, // Symbol 4A
0x00,0x7F,0x08,0x08,0x14,0x63, // Symbol 4B
0x00,0x7F,0x40,0x40,0x40,0x60, // Symbol 4C
0x00,0x7F,0x04,0x18,0x04,0x7F, // Symbol 4D
0x00,0x7F,0x04,0x08,0x10,0x7F, // Symbol 4E
0x00,0x3E,0x41,0x41,0x41,0x3E, // Symbol 4F
0x00,0x7F,0x09,0x09,0x09,0x06, // Symbol 50
0x00,0x3E,0x41,0x61,0x21,0x5E, // Symbol 51
0x00,0x7F,0x09,0x09,0x19,0x66, // Symbol 52
0x00,0x26,0x49,0x49,0x49,0x32, // Symbol 53
0x00,0x01,0x01,0x7F,0x01,0x01, // Symbol 54
0x00,0x3F,0x40,0x40,0x40,0x3F, // Symbol 55
0x00,0x07,0x18,0x60,0x18,0x07, // Symbol 56
0x00,0x1F,0x60,0x18,0x60,0x1F, // Symbol 57
0x00,0x63,0x14,0x08,0x14,0x63, // Symbol 58
0x00,0x03,0x04,0x78,0x04,0x03, // Symbol 59
0x00,0x61,0x51,0x49,0x45,0x43, // Symbol 5A
0x00,0x00,0x7F,0x41,0x00,0x00, // Symbol 5B
0x00,0x02,0x04,0x08,0x10,0x20, // Symbol 5C
0x00,0x00,0x41,0x7F,0x00,0x00, // Symbol 5D
0x00,0x00,0x00,0x00,0x00,0x00, // Symbol 5E
0x40,0x40,0x40,0x40,0x40,0x40, // Symbol 5F
0x00,0x00,0x00,0x01,0x02,0x00, // Symbol 60
0x00,0x20,0x54,0x54,0x54,0x78, // Symbol 61
0x00,0x7E,0x48,0x48,0x48,0x30, // Symbol 62
0x00,0x38,0x44,0x44,0x44,0x28, // Symbol 63
0x00,0x30,0x48,0x48,0x48,0x7E, // Symbol 64
0x00,0x38,0x54,0x54,0x54,0x18, // Symbol 65
0x00,0x10,0x7C,0x12,0x02,0x04, // Symbol 66
0x00,0x0C,0x52,0x52,0x3C,0x02, // Symbol 67
0x00,0x7E,0x08,0x08,0x08,0x70, // Symbol 68
0x00,0x00,0x00,0x74,0x00,0x00, // Symbol 69
0x00,0x40,0x80,0x80,0x74,0x00, // Symbol 6A
0x00,0x7E,0x10,0x10,0x10,0x6C, // Symbol 6B
0x00,0x00,0x02,0x7E,0x00,0x00, // Symbol 6C
0x00,0x7C,0x04,0x78,0x04,0x78, // Symbol 6D
0x00,0x7C,0x04,0x04,0x04,0x78, // Symbol 6E
0x00,0x38,0x44,0x44,0x44,0x38, // Symbol 6F
0x00,0xFC,0x24,0x24,0x24,0x18, // Symbol 70
0x00,0x18,0x24,0x24,0x24,0xFC, // Symbol 71
0x00,0x7C,0x08,0x04,0x04,0x08, // Symbol 72
0x00,0x48,0x54,0x54,0x54,0x20, // Symbol 73
0x00,0x08,0x3E,0x48,0x40,0x00, // Symbol 74
0x00,0x3C,0x40,0x40,0x40,0x3C, // Symbol 75
0x00,0x1C,0x20,0x40,0x20,0x1C, // Symbol 76
0x00,0x3C,0x40,0x30,0x40,0x3C, // Symbol 77
0x00,0x44,0x28,0x10,0x28,0x44, // Symbol 78
0x00,0x1C,0x20,0xA0,0xA0,0x7C, // Symbol 79
0x00,0x44,0x64,0x54,0x4C,0x44, // Symbol 7A
0x00,0x08,0x36,0x41,0x00,0x00, // Symbol 7B
0x00,0x00,0x00,0x7F,0x00,0x00, // Symbol 7C
0x00,0x00,0x41,0x36,0x08,0x00, // Symbol 7D
0x02,0x01,0x01,0x02,0x02,0x01, // Symbol 7E
0x00,0x7F,0x7F,0x7F,0x7F,0x7F}; // Symbol 7F

 char text0[]= "Juras-Projects 2012";
 char text1[]= "Siemens C75 LCD (ALPS)";
 char text2[]= "176x132 pixels, 16 bit mode";

void c75_alps_cmd(char cmd)
{
  PORTB&=~(1<<RS); // RS=0
  SPDR=cmd;
//  __delay_cycles(16+4);
delayMicroseconds(2);
}

void c75_alps_data16(char data_h, char data_l)
{
  PORTB|=(1<<RS); // RS=1
  SPDR=data_h;
 // __delay_cycles(16+4);
  delayMicroseconds(2);
  SPDR=data_l;
 // __delay_cycles(16+4);
 delayMicroseconds(2);  
}

void c75_alps_init(void)
{
  //__delay_cycles(F_CPU*0.1);// delay 100ms 
delay(100);
  PORTB|=(1<<RST); //Release Reset
//  __delay_cycles(F_CPU*0.057);// delay 57ms 
 delay(57);  
  PORTB&=~(1<<CS); // CS=0, chip selsect
  
  c75_alps_cmd(0x00);
  c75_alps_data16(0x00,0x01);

  c75_alps_cmd(0x10);
  c75_alps_data16(0x1F,0x92);
  
  c75_alps_cmd(0x11);
  c75_alps_data16(0x00,0x14);

  c75_alps_cmd(0x00);
  c75_alps_data16(0x00,0x01);
  
  c75_alps_cmd(0x10);
  c75_alps_data16(0x1F,0x92);
  
  c75_alps_cmd(0x11);
  c75_alps_data16(0x00,0x1C);
  
  c75_alps_cmd(0x28);
  c75_alps_data16(0x00,0x06);
  
  c75_alps_cmd(0x02);
  c75_alps_data16(0x00,0x00);
  
  c75_alps_cmd(0x12);
  c75_alps_data16(0x04,0x0F);
  
  c75_alps_cmd(0x22);

  for (int j=0; j<(132*176);j++) {c75_alps_data16(0x00,0x00);}//black  
  
  c75_alps_cmd(0x03);//Set Entry Mode
  c75_alps_data16(0x78,0x30);
  
  c75_alps_cmd(0x01);
  c75_alps_data16(0x31,0xAF);//strange must be FF?
  
  c75_alps_cmd(0x07);
  c75_alps_data16(0x00,0x33);
  
  PORTB|=(1<<CS); // CS=1 chip deselect
}

void c75_alps_put_char16(char x, char y, char symbol, int color, int bkcolor)
{
  c75_alps_cmd(0x44);//Y range
  c75_alps_data16(y+7,y);//Y2,Y1
  
  c75_alps_cmd(0x47);//X range
  c75_alps_data16(x+5,x);//X2,X1    
 
  c75_alps_cmd(0x21);//coordinates
  c75_alps_data16(x,y);//X, Y    
  
  c75_alps_cmd(0x22);
  
  int offset=6*(symbol-0x20);
  for (char i=0;i<6;i++)
  {
    for (char j=0;j<8;j++) {if (((font6x8[offset+i]<<j)&0x80)==0x80) {c75_alps_data16(color>>8,color);} else {c75_alps_data16(bkcolor>>8,bkcolor);}}
  }
}

void c75_alps_put_string16(char x, char y, char *text, int color, int bkcolor)
{
  char i=0; 
  char x0=0;
  while (text[i]!=0)
  {
    c75_alps_put_char16(x+x0,y,text[i], color , bkcolor);
    i++;
    x0+=6;
  }
}

void c75_alps_rect(char x1, char y1, char x2, char y2, int color)
{
  c75_alps_cmd(0x44);//Y range
  c75_alps_data16(y2,y1);//Y2,Y1
  
  c75_alps_cmd(0x47);//X range
  c75_alps_data16(x2,x1);//X2,X1    
 
  c75_alps_cmd(0x21);//coordinates
  c75_alps_data16(x1,y1);//X, Y   
  
  c75_alps_cmd(0x22);
  for (int i=(y2-y1+1)*(x2-x1+1);i>0;i--) c75_alps_data16(color>>8,color);
}

void setup() 
{
  DDRB=0xFF;  //PortB is output
  PORTB=(1<<CS)|(1<<RS);
  SPCR=(1<<MSTR)|(1<<SPE);//SPI Interface
  SPSR=1;
  c75_alps_init(); 
  
  PORTB&=~(1<<CS); // CS=0, chip selsect
  c75_alps_put_string16(32,120,text0, white, black);  
  c75_alps_put_string16(4+3,120-10,text2, cyan, black);        
  
  c75_alps_rect(0,22,175,65,gray);//gray box

  c75_alps_rect(10,34,165,54,white);
  c75_alps_rect(12,36,163,52,red);    
  c75_alps_put_string16(22,40,text1, white, red);    
  
  for (char i=0;i<8;i++)//draw color bars
  {
    c75_alps_rect(i*22,0,i*22+21,21,colorbars[i]);
  }
  
  for (char i=0;i<16;i++)//draw gradients
  {
    c75_alps_rect(i*11,66,i*11+10,75,i*2);//blue
    c75_alps_rect(i*11,76,i*11+10,85,(i<<6)*2);//green
    c75_alps_rect(i*11,86,i*11+10,95,(i<<11)*2);//red
  }

  PORTB|=(1<<CS); // CS=1 chip deselect
  
//  while(1)
//  {
//  }

}


void loop() 
{
  // put your main code here, to run repeatedly:

}



иль вот , где все __flash перенесены в  const PROGMEM

#define RST PB3
#define RS PB2
#define CS PB4

#define white 0xFFFF
#define yellow 0xFFE0
#define cyan 0x07FF
#define green 0x07E0
#define purple 0xF81F
#define red 0xF800
#define blue 0x001F
#define black 0x0000
#define gray 0x7800+0x0380+0x0F


int const PROGMEM  colorbars[8]={white,yellow,cyan,green,purple,red,blue,black};

const PROGMEM char font6x8[576]=
{0x00,0x00,0x00,0x00,0x00,0x00, // Symbol 20
0x00,0x00,0x00,0x5F,0x00,0x00, // Symbol 21
0x00,0x00,0x03,0x00,0x03,0x00, // Symbol 22
0x22,0x7F,0x22,0x22,0x7F,0x22, // Symbol 23
0x00,0x24,0x2A,0x6B,0x2A,0x12, // Symbol 24
0x00,0x23,0x13,0x08,0x64,0x62, // Symbol 25
0x00,0x3A,0x45,0x45,0x3A,0x28, // Symbol 26
0x00,0x00,0x00,0x02,0x01,0x00, // Symbol 27
0x00,0x00,0x3E,0x41,0x00,0x00, // Symbol 28
0x00,0x00,0x41,0x3E,0x00,0x00, // Symbol 29
0x00,0x2A,0x1C,0x1C,0x2A,0x00, // Symbol 2A
0x00,0x08,0x08,0x3E,0x08,0x08, // Symbol 2B
0x00,0x00,0x80,0x40,0x00,0x00, // Symbol 2C
0x00,0x08,0x08,0x08,0x08,0x00, // Symbol 2D
0x00,0x00,0x00,0x40,0x00,0x00, // Symbol 2E
0x00,0x20,0x10,0x08,0x04,0x02, // Symbol 2F
0x00,0x3E,0x51,0x49,0x45,0x3E, // Symbol 30
0x00,0x00,0x42,0x7F,0x40,0x00, // Symbol 31
0x00,0x62,0x51,0x51,0x51,0x4E, // Symbol 32
0x00,0x21,0x41,0x45,0x45,0x3B, // Symbol 33
0x00,0x18,0x16,0x11,0x7F,0x10, // Symbol 34
0x00,0x27,0x45,0x45,0x45,0x39, // Symbol 35
0x00,0x3E,0x49,0x49,0x49,0x32, // Symbol 36
0x00,0x01,0x61,0x11,0x09,0x07, // Symbol 37
0x00,0x36,0x49,0x49,0x49,0x36, // Symbol 38
0x00,0x26,0x49,0x49,0x49,0x3E, // Symbol 39
0x00,0x00,0x00,0x12,0x00,0x00, // Symbol 3A
0x00,0x00,0x20,0x12,0x00,0x00, // Symbol 3B
0x00,0x08,0x14,0x22,0x41,0x00, // Symbol 3C
0x00,0x14,0x14,0x14,0x14,0x14, // Symbol 3D
0x00,0x41,0x22,0x14,0x08,0x00, // Symbol 3E
0x00,0x06,0x01,0x51,0x09,0x06, // Symbol 3F
0x00,0x3E,0x41,0x4D,0x4D,0x2E, // Symbol 40
0x00,0x78,0x16,0x11,0x16,0x78, // Symbol 41
0x00,0x7F,0x49,0x49,0x49,0x36, // Symbol 42
0x00,0x3E,0x41,0x41,0x41,0x22, // Symbol 43
0x00,0x7F,0x41,0x41,0x41,0x3E, // Symbol 44
0x00,0x7F,0x49,0x49,0x49,0x41, // Symbol 45
0x00,0x7F,0x09,0x09,0x09,0x01, // Symbol 46
0x00,0x3E,0x41,0x41,0x51,0x32, // Symbol 47
0x00,0x7F,0x08,0x08,0x08,0x7F, // Symbol 48
0x00,0x00,0x41,0x7F,0x41,0x00, // Symbol 49
0x00,0x30,0x40,0x41,0x41,0x3F, // Symbol 4A
0x00,0x7F,0x08,0x08,0x14,0x63, // Symbol 4B
0x00,0x7F,0x40,0x40,0x40,0x60, // Symbol 4C
0x00,0x7F,0x04,0x18,0x04,0x7F, // Symbol 4D
0x00,0x7F,0x04,0x08,0x10,0x7F, // Symbol 4E
0x00,0x3E,0x41,0x41,0x41,0x3E, // Symbol 4F
0x00,0x7F,0x09,0x09,0x09,0x06, // Symbol 50
0x00,0x3E,0x41,0x61,0x21,0x5E, // Symbol 51
0x00,0x7F,0x09,0x09,0x19,0x66, // Symbol 52
0x00,0x26,0x49,0x49,0x49,0x32, // Symbol 53
0x00,0x01,0x01,0x7F,0x01,0x01, // Symbol 54
0x00,0x3F,0x40,0x40,0x40,0x3F, // Symbol 55
0x00,0x07,0x18,0x60,0x18,0x07, // Symbol 56
0x00,0x1F,0x60,0x18,0x60,0x1F, // Symbol 57
0x00,0x63,0x14,0x08,0x14,0x63, // Symbol 58
0x00,0x03,0x04,0x78,0x04,0x03, // Symbol 59
0x00,0x61,0x51,0x49,0x45,0x43, // Symbol 5A
0x00,0x00,0x7F,0x41,0x00,0x00, // Symbol 5B
0x00,0x02,0x04,0x08,0x10,0x20, // Symbol 5C
0x00,0x00,0x41,0x7F,0x00,0x00, // Symbol 5D
0x00,0x00,0x00,0x00,0x00,0x00, // Symbol 5E
0x40,0x40,0x40,0x40,0x40,0x40, // Symbol 5F
0x00,0x00,0x00,0x01,0x02,0x00, // Symbol 60
0x00,0x20,0x54,0x54,0x54,0x78, // Symbol 61
0x00,0x7E,0x48,0x48,0x48,0x30, // Symbol 62
0x00,0x38,0x44,0x44,0x44,0x28, // Symbol 63
0x00,0x30,0x48,0x48,0x48,0x7E, // Symbol 64
0x00,0x38,0x54,0x54,0x54,0x18, // Symbol 65
0x00,0x10,0x7C,0x12,0x02,0x04, // Symbol 66
0x00,0x0C,0x52,0x52,0x3C,0x02, // Symbol 67
0x00,0x7E,0x08,0x08,0x08,0x70, // Symbol 68
0x00,0x00,0x00,0x74,0x00,0x00, // Symbol 69
0x00,0x40,0x80,0x80,0x74,0x00, // Symbol 6A
0x00,0x7E,0x10,0x10,0x10,0x6C, // Symbol 6B
0x00,0x00,0x02,0x7E,0x00,0x00, // Symbol 6C
0x00,0x7C,0x04,0x78,0x04,0x78, // Symbol 6D
0x00,0x7C,0x04,0x04,0x04,0x78, // Symbol 6E
0x00,0x38,0x44,0x44,0x44,0x38, // Symbol 6F
0x00,0xFC,0x24,0x24,0x24,0x18, // Symbol 70
0x00,0x18,0x24,0x24,0x24,0xFC, // Symbol 71
0x00,0x7C,0x08,0x04,0x04,0x08, // Symbol 72
0x00,0x48,0x54,0x54,0x54,0x20, // Symbol 73
0x00,0x08,0x3E,0x48,0x40,0x00, // Symbol 74
0x00,0x3C,0x40,0x40,0x40,0x3C, // Symbol 75
0x00,0x1C,0x20,0x40,0x20,0x1C, // Symbol 76
0x00,0x3C,0x40,0x30,0x40,0x3C, // Symbol 77
0x00,0x44,0x28,0x10,0x28,0x44, // Symbol 78
0x00,0x1C,0x20,0xA0,0xA0,0x7C, // Symbol 79
0x00,0x44,0x64,0x54,0x4C,0x44, // Symbol 7A
0x00,0x08,0x36,0x41,0x00,0x00, // Symbol 7B
0x00,0x00,0x00,0x7F,0x00,0x00, // Symbol 7C
0x00,0x00,0x41,0x36,0x08,0x00, // Symbol 7D
0x02,0x01,0x01,0x02,0x02,0x01, // Symbol 7E
0x00,0x7F,0x7F,0x7F,0x7F,0x7F}; // Symbol 7F

const PROGMEM  char text0[]= "Juras-Projects 2012";
const PROGMEM  char text1[]= "Siemens C75 LCD (ALPS)";
const PROGMEM  char text2[]= "176x132 pixels, 16 bit mode";

void c75_alps_cmd(char cmd)
{
  PORTB&=~(1<<RS); // RS=0
  SPDR=cmd;
//  __delay_cycles(16+4);
delayMicroseconds(2);
}

void c75_alps_data16(char data_h, char data_l)
{
  PORTB|=(1<<RS); // RS=1
  SPDR=data_h;
 // __delay_cycles(16+4);
  delayMicroseconds(2);
  SPDR=data_l;
 // __delay_cycles(16+4);
 delayMicroseconds(2);  
}

void c75_alps_init(void)
{
  //__delay_cycles(F_CPU*0.1);// delay 100ms 
delay(100);
  PORTB|=(1<<RST); //Release Reset
//  __delay_cycles(F_CPU*0.057);// delay 57ms 
 delay(57);  
  PORTB&=~(1<<CS); // CS=0, chip selsect
  
  c75_alps_cmd(0x00);
  c75_alps_data16(0x00,0x01);

  c75_alps_cmd(0x10);
  c75_alps_data16(0x1F,0x92);
  
  c75_alps_cmd(0x11);
  c75_alps_data16(0x00,0x14);

  c75_alps_cmd(0x00);
  c75_alps_data16(0x00,0x01);
  
  c75_alps_cmd(0x10);
  c75_alps_data16(0x1F,0x92);
  
  c75_alps_cmd(0x11);
  c75_alps_data16(0x00,0x1C);
  
  c75_alps_cmd(0x28);
  c75_alps_data16(0x00,0x06);
  
  c75_alps_cmd(0x02);
  c75_alps_data16(0x00,0x00);
  
  c75_alps_cmd(0x12);
  c75_alps_data16(0x04,0x0F);
  
  c75_alps_cmd(0x22);

  for (int j=0; j<(132*176);j++) {c75_alps_data16(0x00,0x00);}//black  
  
  c75_alps_cmd(0x03);//Set Entry Mode
  c75_alps_data16(0x78,0x30);
  
  c75_alps_cmd(0x01);
  c75_alps_data16(0x31,0xAF);//strange must be FF?
  
  c75_alps_cmd(0x07);
  c75_alps_data16(0x00,0x33);
  
  PORTB|=(1<<CS); // CS=1 chip deselect
}

void c75_alps_put_char16(char x, char y, char symbol, int color, int bkcolor)
{
  c75_alps_cmd(0x44);//Y range
  c75_alps_data16(y+7,y);//Y2,Y1
  
  c75_alps_cmd(0x47);//X range
  c75_alps_data16(x+5,x);//X2,X1    
 
  c75_alps_cmd(0x21);//coordinates
  c75_alps_data16(x,y);//X, Y    
  
  c75_alps_cmd(0x22);
  
  int offset=6*(symbol-0x20);
  for (char i=0;i<6;i++)
  {
    for (char j=0;j<8;j++) {if (((font6x8[offset+i]<<j)&0x80)==0x80) {c75_alps_data16(color>>8,color);} else {c75_alps_data16(bkcolor>>8,bkcolor);}}
  }
}

void c75_alps_put_string16(char x, char y, char *text, int color, int bkcolor)
{
  char i=0; 
  char x0=0;
  while (text[i]!=0)
  {
    c75_alps_put_char16(x+x0,y,text[i], color , bkcolor);
    i++;
    x0+=6;
  }
}

void c75_alps_rect(char x1, char y1, char x2, char y2, int color)
{
  c75_alps_cmd(0x44);//Y range
  c75_alps_data16(y2,y1);//Y2,Y1
  
  c75_alps_cmd(0x47);//X range
  c75_alps_data16(x2,x1);//X2,X1    
 
  c75_alps_cmd(0x21);//coordinates
  c75_alps_data16(x1,y1);//X, Y   
  
  c75_alps_cmd(0x22);
  for (int i=(y2-y1+1)*(x2-x1+1);i>0;i--) c75_alps_data16(color>>8,color);
}

void setup() 
{
  DDRB=0xFF;  //PortB is output
  PORTB=(1<<CS)|(1<<RS);
  SPCR=(1<<MSTR)|(1<<SPE);//SPI Interface
  SPSR=1;
  c75_alps_init(); 
  
  PORTB&=~(1<<CS); // CS=0, chip selsect
  c75_alps_put_string16(32,120,text0, white, black);  
  c75_alps_put_string16(4+3,120-10,text2, cyan, black);        
  
  c75_alps_rect(0,22,175,65,gray);//gray box

  c75_alps_rect(10,34,165,54,white);
  c75_alps_rect(12,36,163,52,red);    
  c75_alps_put_string16(22,40,text1, white, red);    
  
  for (char i=0;i<8;i++)//draw color bars
  {
    c75_alps_rect(i*22,0,i*22+21,21,colorbars[i]);
  }
  
  for (char i=0;i<16;i++)//draw gradients
  {
    c75_alps_rect(i*11,66,i*11+10,75,i*2);//blue
    c75_alps_rect(i*11,76,i*11+10,85,(i<<6)*2);//green
    c75_alps_rect(i*11,86,i*11+10,95,(i<<11)*2);//red
  }

  PORTB|=(1<<CS); // CS=1 chip deselect
  
//  while(1)
//  {
//  }

}


void loop() 
{
  // put your main code here, to run repeatedly:

}


 

 

 

aleksl, надо было по файлам либы полазить.
а что вам ответили скетчи LCD_ID_Read(new) в монитор порта ? ( подключение DB0-7 соответственно 7823456 ) какой id он нашел, тот и искать в файле либы MCUFRIEND_kbv.cpp , там же и можно ( вверху файла ) отключить иниты которыми не пользуетесь , для экономии . 
// ответ можно скопировать из терминала Ctrl+A  Ctrl+C ) и проложить сюда с галкой - сворачивать код по умолчанию 

В случае GLUE_Demo_400x240 , какой контроллер  прописали в UTFTGLUE myGLCD(.....,A2,A1,A3,A4,A0) , инит того и найдете в MCUFRIEND_kbv.cpp

aleksl
Offline
Зарегистрирован: 02.11.2017

 

slider,  ( подключение DB0-7 соответственно 7823456 ) вы имели ввиду 89234567?

aleksl
Offline
Зарегистрирован: 02.11.2017
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

Очень странно, но LCD_ID_Read(new)ничего не показывает. 

В UTFTGLUE myGLCD(.....,A2,A1,A3,A4,A0) прописывал ili9327 UTFT myGLCD(0x9327,A2,A1,A3,A4);

 В  MCUFRIEND_kbv 

вручную выбирал тот же контроллер, бестолку

aleksl
Offline
Зарегистрирован: 02.11.2017

Очень странные дела.. при запуске  GLUE_Demo_400x240 UTFTGLUE myGLCD(0x9327,A2,A1,A3,A4,A0); -черный экран, но если снять D7  и поставить обратно то :

А вот так, если поменять пины D0 и D1 местами:

Еще раз перепроверил подключение, все в соответствии со схемой мобилки..

Уже ничего не понимаю... на простой UTFT не заводится на ините ili9327, даже если вручную подменить инит на :

//samsung g5233:
	LCD_Write_COM(0xF5);//sleep out
	LCD_Write_DATA(0x12);
        LCD_Write_DATA(0x00);
        LCD_Write_DATA(0x0B);
        LCD_Write_DATA(0xF0);
        LCD_Write_DATA(0x00);
        delay(10);
        
	LCD_Write_COM(0x11); //Exit Sleep
	delay(150);
        
	LCD_Write_COM(0x3A);
        LCD_Write_DATA(0x05);
	
	LCD_Write_COM(0xF2);
	LCD_Write_DATA(0x10);
	LCD_Write_DATA(0x10);
	LCD_Write_DATA(0x01);
        LCD_Write_DATA(0x08);
        LCD_Write_DATA(0x08);
        LCD_Write_DATA(0x08);
        LCD_Write_DATA(0x08);
        LCD_Write_DATA(0x00);
        LCD_Write_DATA(0x06); // 04 НИЗ     def00   !!!!!  2экрана
        LCD_Write_DATA(0x1A);
        LCD_Write_DATA(0x1A);
        
	LCD_Write_COM(0xF3);
	LCD_Write_DATA(0x80);
        LCD_Write_DATA(0x00);
        LCD_Write_DATA(0x00);
        LCD_Write_DATA(0x0B);
        LCD_Write_DATA(0x33);
        LCD_Write_DATA(0x7F);
        LCD_Write_DATA(0x7F);
        
	LCD_Write_COM(0xF4);
	LCD_Write_DATA(0x59);
        LCD_Write_DATA(0x59);
        LCD_Write_DATA(0x52);
        LCD_Write_DATA(0x52);
        LCD_Write_DATA(0x11);

	LCD_Write_COM(0xF6);
	LCD_Write_DATA(0x00);// Перемещение по X Y  
	LCD_Write_DATA(0x88);// 
	LCD_Write_DATA(0x10);

	LCD_Write_COM(0xFD); //
	LCD_Write_DATA(0x11);
	LCD_Write_DATA(0x01);

	LCD_Write_COM(0x36); //36  Ориентация верх-низ дисплея
	LCD_Write_DATA(0x08);//Шлейф внизу - 0,0 вверху справа 14 RGB (14;C0;60;A0 поворот на 180)
                              
        LCD_Write_COM(0x35);
        LCD_Write_DATA(0x00);

	LCD_Write_COM(0xF1); //
	LCD_Write_DATA(0x5A);

	LCD_Write_COM(0xFF); //
	LCD_Write_DATA(0x00);
	LCD_Write_DATA(0x00);
	LCD_Write_DATA(0x00);
	LCD_Write_DATA(0x40);

	LCD_Write_COM(0x53); 
	LCD_Write_DATA(0x2C);
        LCD_Write_COM(0x55); 
	LCD_Write_DATA(0x00);

	LCD_Write_COM(0x29); //display on      
	LCD_Write_COM(0x2C);
//	break;

 

aleksl
Offline
Зарегистрирован: 02.11.2017

на либе UTFT_v2.77b2_uno_ili9327_8bit_turbo  заводится сходу на UTFT_Demo_400x240 из примера без каких либо настроек

aleksl
Offline
Зарегистрирован: 02.11.2017

Снял резисторы на минус с делителя напряжения на выводх, теперь в читалках: 

 
 
v5.3 read all register + read ID + TFT LCD test
for 8bit TFT LCD UNO shield pinout Adafruit D89234567
on board Arduino UNO & Arduino MEGA
TFT size set is 320x240
include LCD drivers: ILI9325 ILI9328 HX8347G HX8347D* HX8357D ILI9341
v5.3    B0h  <- 0xFFFFFF   <- 0x040404  from  Slider
www.arduino.ru/forum/apparatnye-voprosy/arduino-i-displei-ot-sotikov-mob... 
 
reg  p1 p2 p3 p4 p5 p6 p7 p8  
00 = 0                       * 
01 = 0 
02 = 0 
03 = 0 
04 = 0                       * 
05 = 0 
06 = 0 
07 = 0 
08 = 0 
09 = 0 
0A = 00 08 08 08 08 08 08 08  
0B = 0 
0C = 00 05 55 55 55 55 55 55  
0D = 0 
0E = 0 
0F = 0 
10 = 0 
11 = 0 
12 = 0 
13 = 0 
14 = 0 
15 = 0 
16 = 0 
17 = 0 
18 = 0 
19 = 0 
1A = 0 
1B = 0 
1C = 0 
1D = 0 
1E = 0 
1F = 0 
20 = 0 
21 = 0 
22 = 0 
23 = 0 
24 = 0 
25 = 0 
26 = 0 
27 = 0 
28 = 0 
29 = 0 
2A = 0 
2B = 0 
2C = 0 
2D = 0 
2E = 00 02 AA AA AA AA AA 8A  
2F = 0 
30 = 0 
31 = 0 
32 = 0 
33 = 0 
34 = 0 
35 = 0 
36 = 0 
37 = 0 
38 = 0 
39 = 0 
3A = 0 
3B = 0 
3C = 0 
3D = 0 
3E = 0 
3F = 0 
40 = 0 
41 = 0 
42 = 0 
43 = 0 
44 = 0 
45 = 0 
46 = 0 
47 = 0 
48 = 0 
49 = 0 
4A = 0 
4B = 0 
4C = 0 
4D = 0 
4E = 0 
4F = 0 
50 = 0 
51 = 0 
52 = 0 
53 = 0 
54 = 0 
55 = 0 
56 = 0 
57 = 0 
58 = 0 
59 = 0 
5A = 0 
5B = 0 
5C = 0 
5D = 0 
5E = 0 
5F = 0 
60 = 0 
61 = 0 
62 = 0 
63 = 0 
64 = 0 
65 = 0 
66 = 0 
67 = 0 
68 = 0 
69 = 0 
6A = 0 
6B = 0 
6C = 0 
6D = 0 
6E = 0 
6F = 0 
70 = 0 
71 = 0 
72 = 0 
73 = 0 
74 = 0 
75 = 0 
76 = 0 
77 = 0 
78 = 0 
79 = 0 
7A = 0 
7B = 0 
7C = 0 
7D = 0 
7E = 0 
7F = 0 
80 = 0 
81 = 0 
82 = 0 
83 = 0 
84 = 0 
85 = 0 
86 = 0 
87 = 0 
88 = 0 
89 = 0 
8A = 0 
8B = 0 
8C = 0 
8D = 0 
8E = 0 
8F = 0 
90 = 0 
91 = 0 
92 = 0 
93 = 0 
94 = 0 
95 = 0 
96 = 0 
97 = 0 
98 = 0 
99 = 0 
9A = 0 
9B = 0 
9C = 0 
9D = 0 
9E = 0 
9F = 0 
A0 = 0 
A1 = 0 
A2 = 0 
A3 = 0 
A4 = 0 
A5 = 0 
A6 = 0 
A7 = 0 
A8 = 0 
A9 = 0 
AA = 0 
AB = 0 
AC = 0 
AD = 0 
AE = 0 
AF = 0 
B0 = 0 
B1 = 0 
B2 = 0 
B3 = 0 
B4 = 0 
B5 = 0 
B6 = 0 
B7 = 0 
B8 = 0 
B9 = 0 
BA = 0 
BB = 0 
BC = 0 
BD = 0 
BE = 0 
BF = 0                       * 
C0 = 0 
C1 = 0 
C2 = 0 
C3 = 0 
C4 = 0 
C5 = 0 
C6 = 0 
C7 = 0 
C8 = 0 
C9 = 0 
CA = 0 
CB = 0 
CC = 0 
CD = 0 
CE = 0 
CF = 0 
D0 = 0 
D1 = 0 
D2 = 0 
D3 = 0                       * 
D4 = 0 
D5 = 0 
D6 = 0 
D7 = 00 00 80 11 80 00 00 00  
D8 = 00 00 08 08 80 00 00 00  
D9 = 0 
DA = 00 52 52 52 52 52 52 52 ***** 
DB = 00 09 09 09 09 09 09 09 ***** 
DC = 00 10 11 11 11 11 11 11 ***** 
DD = 0 
DE = 0 
DF = 0 
E0 = 0 
E1 = 0 
E2 = 0 
E3 = 0 
E4 = 0 
E5 = 0 
E6 = 0 
E7 = 0 
E8 = 0 
E9 = 0 
EA = 0 
EB = 0 
EC = 0 
ED = 0 
EE = 0 
EF = 0                       * 
F0 = 0 
F1 = 0 
F2 = 00 12 16 02 00 08 08 08  
F3 = 00 80 22 2A 01 22 00 00  
F4 = 0 
F5 = 00 10 00 01 F0 00 15 00  
F6 = 00 00 80 10 10 00 00 00  
F7 = 00 06 03 04 02 10 12 22  
F8 = 00 00 02 00 08 10 18 22  
F9 = 00 00 03 00 08 10 18 22  
FA = 00 02 02 00 0A 10 1A 22  
FB = 00 02 03 00 0A 10 1A 22  
FC = 00 04 02 04 08 10 18 22  
FD = 0 
FE = 0 
o------------------------------------o
|                                    | 
00 = 0                       *       | 
04 = 0                       *       | 
B0 = 0                               | 
BF = 0                       *       | 
D3 = 0                       *       | 
DA = 00 52 52 52 52 52 52 52 *****       | 
DB = 00 09 09 09 09 09 09 09 *****       | 
DC = 00 10 11 11 11 11 11 11 *****       | 
EF = 0                       *       | 
|                                    |
o------------------------------------o
 . . . . . . . 
  writing in Manufacturer Command Access Protect  (B0h) <- 0xFFFFFF  
B0 = B0 B0 B0 B0 B0 B0 B0 B0  
Device Code Read (BFh)  
BF = BF BF BF BF BF BF BF BF ***** 
 . . . 
 
reg  p1 p2 p3 p4 p5 p6 p7 p8  
B0 = B0 B0 B0 B0 B0 B0 B0 B0  
B1 = B1 B1 B1 B1 B1 B1 B1 B1  
B2 = 0 
B3 = 0 
B4 = 0 
B5 = 0 
B6 = 0 
B7 = 0 
B8 = 0 
B9 = 0 
BA = 0 
BB = 0 
BC = 0 
BD = 0 
BE = 0 
BF = 0                       * 
C0 = 0 
C1 = 0 
C2 = 0 
C3 = 0 
C4 = 0 
C5 = 0 
C6 = 0 
C7 = 0 
C8 = 0 
C9 = 0 
CA = 0 
CB = 0 
CC = 0 
CD = 0 
CE = 0 
CF = 0 
D0 = 0 
D1 = 0 
D2 = 0 
D3 = 0                       * 
D4 = 0 
D5 = 0 
D6 = 0 
D7 = 00 00 80 11 80 00 00 00  
D8 = 00 00 0A 08 80 00 00 00  
D9 = 0 
DA = 00 52 52 52 52 52 52 52 ***** 
DB = 00 09 09 09 09 09 09 09 ***** 
DC = 00 10 11 11 11 11 11 11 ***** 
DD = 0 
DE = 0 
DF = 0 
E0 = 0 
E1 = 0 
E2 = 0 
E3 = 0 
E4 = 0 
E5 = 0 
E6 = 0 
E7 = 0 
E8 = 0 
E9 = 0 
EA = 0 
EB = 0 
EC = 0 
ED = 0 
EE = 0 
EF = 0                       * 
F0 = 0 
F1 = 0 
F2 = 00 12 16 02 00 08 08 08  
F3 = 00 80 22 2A 01 22 00 00  
F4 = 0 
F5 = 00 10 00 03 F0 00 1F 00  
F6 = 00 00 80 10 10 00 00 00  
F7 = 00 06 03 04 02 10 12 22  
F8 = 00 02 03 00 0A 10 1A 22  
F9 = 00 02 03 00 0A 10 1A 22  
FA = 00 02 02 00 0A 10 1A 22  
FB = 00 02 03 00 0A 10 1A 22  
FC = 00 06 03 04 0A 10 1A 22  
FD = 0 
FE = 0 
 writing in Manufacturer Command Access Protect  (B0h) <- 0x040404  
B0 = 0 
Device Code Read (BFh)  
BF = 0                       * 
 . . . 
 
reg  p1 p2 p3 p4 p5 p6 p7 p8  
B0 = 0 
B1 = 0 
B2 = 0 
B3 = 0 
B4 = 0 
B5 = 0 
B6 = 0 
B7 = 0 
B8 = 0 
B9 = 0 
BA = 0 
BB = 0 
BC = 0 
BD = 0 
BE = 0 
BF = 0                       * 
C0 = 0 
C1 = 0 
C2 = 0 
C3 = 0 
C4 = 0 
C5 = 0 
C6 = 0 
C7 = 0 
C8 = 0 
C9 = 0 
CA = 0 
CB = 0 
CC = 0 
CD = 0 
CE = 0 
CF = 0 
D0 = 0 
D1 = 0 
D2 = 0 
D3 = 0                       * 
D4 = 0 
D5 = 0 
D6 = 0 
D7 = 00 00 80 11 80 00 00 00  
D8 = 00 00 0A 08 80 00 00 00  
D9 = 0 
DA = 00 52 52 52 52 52 52 52 ***** 
DB = 00 09 09 09 09 09 09 09 ***** 
DC = 00 10 11 11 11 11 11 11 ***** 
DD = 0 
DE = 0 
DF = 0 
E0 = 0 
E1 = 0 
E2 = 0 
E3 = 0 
E4 = 0 
E5 = 0 
E6 = 0 
E7 = 0 
E8 = 0 
E9 = 0 
EA = 0 
EB = 0 
EC = 0 
ED = 0 
EE = 0 
EF = 0                       * 
F0 = 0 
F1 = 0 
F2 = 00 12 16 02 00 08 08 08  
F3 = 00 80 22 2A 01 22 00 00  
F4 = 0 
F5 = 00 10 00 03 F0 00 1F 00  
F6 = 00 00 80 10 10 00 00 00  
F7 = 00 06 03 04 02 10 12 22  
F8 = 00 02 02 00 0A 10 1A 22  
F9 = 00 02 03 00 0A 10 1A 22  
FA = 00 02 03 00 0A 10 1A 22  
FB = 00 02 03 00 0A 10 1A 22  
FC = 00 06 02 04 0A 10 1A 22  
FD = 0 
FE = 0 
 
Unknown LCD driver chip: 0
***use minimal init as driver ili9341 ili9488 *** ->
Benchmark                Time (microseconds)
Screen fill              1379996
Text                     354280
Lines                    3385180
Horiz/Vert Lines         144332
Rectangles (outline)     103900
Rectangles (filled)      3268532
Circles (filled)         1199784
Circles (outline)        1468216
Triangles (outline)      1073012
Triangles (filled)       

 

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) 04 04 04 04	Manufacturer ID
reg(0x0009) 09 09 09 09 09	Status Register
reg(0x000A) 0A 0A	Get Powsr Mode
reg(0x000C) 0C 0C	Get Pixel Format
reg(0x0030) 30 30 30 30 30	PTLAR
reg(0x0033) 33 33 33 33 33 33 33	VSCRLDEF
reg(0x0061) 61 61	RDID1 HX8347-G
reg(0x0062) 62 62	RDID2 HX8347-G
reg(0x0063) 63 63	RDID3 HX8347-G
reg(0x0064) 64 64	RDID1 HX8347-A
reg(0x0065) 65 65	RDID2 HX8347-A
reg(0x0066) 66 66	RDID3 HX8347-A
reg(0x0067) 67 67	RDID Himax HX8347-A
reg(0x0070) 70 70	Panel Himax HX8347-A
reg(0x00A1) A1 A1 01 A1 A1	RD_DDB SSD1963
reg(0x00B0) B0 B0	RGB Interface Signal Control
reg(0x00B3) B3 B3 00 00 00	Frame Memory
reg(0x00B4) B4 34	Frame Mode
reg(0x00B6) B6 B6 B6 B6 00	Display Control
reg(0x00B7) B7 B7	Entry Mode Set
reg(0x00BF) BF BF BF 1F 00 00	ILI9481, HX8357-B
reg(0x00C0) C0 C0 C0 C0 C0 C0 40 00 00	Panel Control
reg(0x00C1) C1 41 00 00	Display Timing
reg(0x00C5) C5 45	Frame Rate
reg(0x00C8) C8 C8 C8 48 08 00 00 C8 C8 C8 00 00 00	GAMMA
reg(0x00CC) CC CC	Panel Control
reg(0x00D0) D0 D0 D0 D0	Power Control
reg(0x00D1) D1 D1 D1 D1	VCOM Control
reg(0x00D2) D2 D2 D2	Power Normal
reg(0x00D3) D3 D3 D3 D3	ILI9341, ILI9488
reg(0x00D4) D4 D4 D4 D4	Novatek
reg(0x00DA) DA 5A	RDID1
reg(0x00DB) DB DB	RDID2
reg(0x00DC) DC DC	RDID3
reg(0x00E0) E0 60 00 00 E0 E0 E0 40 00 00 00 E0 E0 E0 00 00	GAMMA-P
reg(0x00E1) E1 E1 E1 61 00 00 00 61 E1 E1 00 00 00 00 E1 E1	GAMMA-N
reg(0x00EF) EF EF EF EF EF EF	ILI9327
reg(0x00F2) F2 F2 F2 F2 F2 F2 00 00 00 00 F2 F2	Adjust Control 2
reg(0x00F6) F6 F6 F6 16	Interface Control

 

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

https://www.radiokot.ru/forum/viewtopic.php?p=2234647

У самсунгов свои контроллеры. Если есть огромное желание разобраться и 

определить какой в твоем дисплее, читай даташиты. Начинай с контроллерами с твоим разрешением 400х240. 

И по даташитам копаться с регистрами. Вариант второй --- на рабочем телефоне считывать инициализацию.

И третий вариант самый простой. Взять дисплей у которого считается id и его использывать.

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

http://en.pudn.com/Download/item/id/1562499.html

Вот примерно похожий дисплей. Скачай pdf и почитай.

aleksl
Offline
Зарегистрирован: 02.11.2017

croc19, я вообще не уверен что это дисплей работал на самсунге. Он явно не оригинал.

Спасибо за  инфу.

Есть еще пара подопытных для тестов нужно распиновки поискать:

Sony Ericsson k500

Sony Ericsson k500

Philips x518

Acer e101

Acer e101