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

oldman
Offline
Зарегистрирован: 27.03.2020

lawr пишет:

IM2, IM3 заведомо (при изготовлении дисплея) установлены в "0" и на шлейф не выводятся.

18-битный режим подключится подачей "1" на выводы IM0, IM1. Непонятно только, зачем вам 18-битный режим дисплея, если практически использовать его вряд ли удастся. Графических библиотек для ардуино, поддерживающих этот режим - единицы и точно не для этого дисплея.

Конечно, если вы библиотеки будете сами писАть, тогда вопросы снимаются 

PS.  Что ваш дисплей на драйвере ILI9341 - это только предположение и не факт. Глубоко внедряться пока нет смысла. Запустите хотя бы на 8 бит, выясните тип драйвера и уж тогда...

 Вот этого не знал, тогда шин хватает и подключать нужно D0...D7, но это завтра, голова уже плохо варит. Вот еще такой результат:

 Но дисплей не завелся.

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

Посмотрел даташиты. Подходит RM68090. Возможно он.

Xomyc
Offline
Зарегистрирован: 10.04.2020

Народ, помогите в распиновке разобраться. Есть старенький Алкатель не работающий. Там дисплейчик 128х128 TFT на ili9163.
Нашел такой дисплей на али. Вот назначение выводов начиная с номера 1:K,A,GND,VDD,RS,VR,DB0-DB7,RD,RESET,CS,GND,VDD,GND.
В принципе на первой странице все понятно расписано как подключать. Интересует только K и A это питание подсветки? 3,3 или 5 вольт подавать? И VDD это плюс питания? Тоже сколько? 3,3 или 5?

oldman
Offline
Зарегистрирован: 27.03.2020

К-подсветка "-", А- подсветка +3,3 в (желательно через резистор 5...10 ом), VDD +3,3 в.

oldman
Offline
Зарегистрирован: 27.03.2020

 Спасибо всем, кто мне помогал. С вашей помощью запустил свой дисплей, распиновка (TNX lawr):

Режим 8 бит: IM0 - 3.3 v; IM1 - GND. Подключение DB10...DB17, остальные шины на GND каждая через отдельный резистор 10 к.

 

 

oldman
Offline
Зарегистрирован: 27.03.2020

Код почему-то не сворачивается.

Xomyc
Offline
Зарегистрирован: 10.04.2020

oldman пишет:
К-подсветка "-", А- подсветка +3,3 в (желательно через резистор 5...10 ом), VDD +3,3 в.

Спасибо! А остальные все сигналы я правильно понимаю можно напрямую? Делителей делать не надо?

oldman
Offline
Зарегистрирован: 27.03.2020

Xomyc пишет:

oldman пишет:
К-подсветка "-", А- подсветка +3,3 в (желательно через резистор 5...10 ом), VDD +3,3 в.

Спасибо! А остальные все сигналы я правильно понимаю можно напрямую? Делителей делать не надо?

Это смотря к чему Вы будете подключать дисплей. Нано, мини и уно требуют делителей, про мини на 3,3 в подключаются напрямую. Вместо делителей лучше использовать конвертер.

Xomyc
Offline
Зарегистрирован: 10.04.2020

oldman пишет:

Xomyc пишет:

oldman пишет:
К-подсветка "-", А- подсветка +3,3 в (желательно через резистор 5...10 ом), VDD +3,3 в.

Спасибо! А остальные все сигналы я правильно понимаю можно напрямую? Делителей делать не надо?

Это смотря к чему Вы будете подключать дисплей. Нано, мини и уно требуют делителей, про мини на 3,3 в подключаются напрямую. Вместо делителей лучше использовать конвертер.

Спасибо! У меня уно и нано. Делители на все сигналы ставить? Или только на шины данных DB?

Конвертера к сожалению нет, а ждать месяц с али не хочется.

oldman
Offline
Зарегистрирован: 27.03.2020

Да, на все шины. А Вы тему почитайте, много чего интересного можно почерпнуть. Хорошая тема, жаль будет если заглохнет.

Xomyc
Offline
Зарегистрирован: 10.04.2020

oldman пишет:

Да, на все шины. А Вы тему почитайте, много чего интересного можно почерпнуть. Хорошая тема, жаль будет если заглохнет.

Да, спасибо. Я видел. Хотел уточнить для 100% уверенности.

Xomyc
Offline
Зарегистрирован: 10.04.2020

Еще уточню. Нужен делитель? Или вот в форуме вижу народ просто ограничивающий резистор на 10-20к ставит и все?

oldman
Offline
Зарегистрирован: 27.03.2020

Xomyc пишет:

Еще уточню. Нужен делитель? Или вот в форуме вижу народ просто ограничивающий резистор на 10-20к ставит и все?

Рискованно и сглаживает фронт импульса, я не пользуюсь.

Xomyc
Offline
Зарегистрирован: 10.04.2020

Блин! Туплю что-то! Никак не найду как к ардуине подключать сигналы! В библиотеке TFT_ILI9163C.h тоже вроде не нашел. Может кинетесь ссылкой, а то что-то голова уже опухла. Распаял весь дисплейчик, а подключения к ардуине не нахожу!

Xomyc
Offline
Зарегистрирован: 10.04.2020

oldman пишет:

Xomyc пишет:

Еще уточню. Нужен делитель? Или вот в форуме вижу народ просто ограничивающий резистор на 10-20к ставит и все?

Рискованно и сглаживает фронт импульса, я не пользуюсь.

Что рискованно? Делитель или ограничитель?

oldman
Offline
Зарегистрирован: 27.03.2020

Xomyc пишет:

oldman пишет:

Xomyc пишет:

Еще уточню. Нужен делитель? Или вот в форуме вижу народ просто ограничивающий резистор на 10-20к ставит и все?

Рискованно и сглаживает фронт импульса, я не пользуюсь.

Что рискованно? Делитель или ограничитель?

oldman
Offline
Зарегистрирован: 27.03.2020

Xomyc пишет:

Блин! Туплю что-то! Никак не найду как к ардуине подключать сигналы! В библиотеке TFT_ILI9163C.h тоже вроде не нашел. Может кинетесь ссылкой, а то что-то голова уже опухла. Распаял весь дисплейчик, а подключения к ардуине не нахожу!

http://arduino.ru/forum/apparatnye-voprosy/arduino-i-displei-ot-sotikov-...

Xomyc
Offline
Зарегистрирован: 10.04.2020

Спасибо. Подключил, но картинки нет. Тест выдает неизвестный чип, хотя я на алиэкспрессе этот дисплей нашел.Сначала выдает экран в точках, потом вертикальные полосы.

o------------------------------------o
|                                    |
00 = 0                       *       |
04 = 0                       *       |
B0 = 0                               |
BF = 0                       *       |
D3 = 0                       *       |
DA = 54 54 54 54 54 54 54 54 *****       |
DB = 80 80 80 80 80 80 80 80 *****       |
DC = 0                       *       |
EF = 0                       *       |
|                                    |
o------------------------------------o

И вот в конце:

Unknown LCD driver chip: 0

 

oldman
Offline
Зарегистрирован: 27.03.2020

Xomyc пишет:

Спасибо. Подключил, но картинки нет. Тест выдает неизвестный чип, хотя я на алиэкспрессе этот дисплей нашел.Сначала выдает экран в точках, потом вертикальные полосы.

o------------------------------------o
|                                    |
00 = 0                       *       |
04 = 0                       *       |
B0 = 0                               |
BF = 0                       *       |
D3 = 0                       *       |
DA = 54 54 54 54 54 54 54 54 *****       |
DB = 80 80 80 80 80 80 80 80 *****       |
DC = 0                       *       |
EF = 0                       *       |
|                                    |
o------------------------------------o

И вот в конце:

Unknown LCD driver chip: 0

 

 

 Скорее всего неправильное подключение, Вы выложите фотки шлейфа, местные знатоки посоветуют, что делать.

Xomyc
Offline
Зарегистрирован: 10.04.2020

Вот такой у меня экран. Точнее шлейф. Экран то черный квадрат.

А вот ссылка на алиэкспрессе, откуда я цоколевку брал. Там фотка 18 контактного дисплея, но на картинке с цоколевкой 20 контактов как у меня. Земля совпадает. https://aliexpress.ru/i/33049982425.html?ws_ab_test=searchweb0_0,searchweb201602_0,searchweb201603_0,ppcSwitch_0&algo_pvid=5e3559b1-00b1-45aa-a98c-3d377316afd4&algo_expid=5e3559b1-00b1-45aa-a98c-3d377316afd4-24

Xomyc
Offline
Зарегистрирован: 10.04.2020

Вот еще на всякий случай что происходит на экране после запуска graficstest.ino.

И цоколевка, которую я нашел, и которая похожа на правду.

bogdannin1
Offline
Зарегистрирован: 27.10.2018

Добрый день, ищу информацию о телефонах, в которых используются дисплеи на контроллере ili9341. Спасибо. 

oldman
Offline
Зарегистрирован: 27.03.2020

bogdannin1 пишет:

Добрый день, ищу информацию о телефонах, в которых используются дисплеи на контроллере ili9341. Спасибо. 


Explay Power. 2,6" 320x240.

oldman
Offline
Зарегистрирован: 27.03.2020

Xomyc пишет:

... цоколевка, которую я нашел, и которая похожа на правду.


Т.е. Вы не уверены, что это именно она? Все же Вам стоит выложить четкое фото шлейфа с обеих сторон.

Xomyc
Offline
Зарегистрирован: 10.04.2020

oldman пишет:
Xomyc пишет:

... цоколевка, которую я нашел, и которая похожа на правду.

Т.е. Вы не уверены, что это именно она? Все же Вам стоит выложить четкое фото шлейфа с обеих сторон.

Нет конечно. Просто землю точно видно, да и звонится она. Другие цоколевки конечно, но они точно не подходят, т.к. там D0-D7 до 19 контакта, а тут точно земля.

Одно сторону шлейфа выложил уже раньше, вот вторая.

 

oldman
Offline
Зарегистрирован: 27.03.2020

 Речь шла о четких фото, чтобы можно было проследить куда что идет.

Xomyc
Offline
Зарегистрирован: 10.04.2020

oldman пишет:

 Речь шла о четких фото, чтобы можно было проследить куда что идет.

Ну первая сторона и так четко получилась. Вторую поменял. Лучше не получается.

oldman
Offline
Зарегистрирован: 27.03.2020

  Четко - это примерно так:

Дешевый цифровой фотик, хороший свет(дневной, иначе будут блики).

Xomyc
Offline
Зарегистрирован: 10.04.2020

Пришлось достать свою зеркалку и отдраить шлейф СБС-ом.

https://cdn1.radikalno.ru/uploads/2020/4/15/b4c5b68ac4835e361f531c1c3841...

Не получается у меня лучше. Руки дрожат и без вспышка вообще АХ чего получается. Но ту засветки почти нет.

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

Xomyc, распиновка шлейфа вашего дисплея соответствует той, что приведена в посте #2821. Дисплей подключен правильно, т.к. читалка определила его ID=5480 (пост #2818), что соответствует драйверу дисплея ILI9163 (см. даташит на него). Левая картинка из поста #2821 говорит о том, что дисплей инициализирован и готов принести вам радость. Но дисплей у вас с 8-битным параллельным интерфейсом, и ему нужна соответствующая библиотека, поддерживающая этот режим. Библиотеки работающие со SPI - не подходят!!! Иначе на экране будет то, что вы уже наблюдаете. Я не уверен, но вряд ли есть библиотеки, поддерживающие 8-битный ILI9163, поэтому внимание надо направить на поиск библиотек для 8-битного драйвера ST7735R (опять же не SPI), который есть 100% аналогом ILI9163 (или наоборот). В худшем случае, придется адаптировать (править) какую-нибудь другую библиотеку, например UTFT. Фотографирование оставьте - оно работе дисплея не поможет!))) Удачи!

Xomyc
Offline
Зарегистрирован: 10.04.2020

lawr пишет:

Xomyc, распиновка шлейфа вашего дисплея соответствует той, что приведена в посте #2821. Дисплей подключен правильно, т.к. читалка определила его ID=5480 (пост #2818), что соответствует драйверу дисплея ILI9163 (см. даташит на него). Левая картинка из поста #2821 говорит о том, что дисплей инициализирован и готов принести вам радость. Но дисплей у вас с 8-битным параллельным интерфейсом, и ему нужна соответствующая библиотека, поддерживающая этот режим. Библиотеки работающие со SPI - не подходят!!! Иначе на экране будет то, что вы уже наблюдаете. Я не уверен, но вряд ли есть библиотеки, поддерживающие 8-битный ILI9163, поэтому внимание надо направить на поиск библиотек для 8-битного драйвера ST7735R (опять же не SPI), который есть 100% аналогом ILI9163 (или наоборот). В худшем случае, придется адаптировать (править) какую-нибудь другую библиотеку, например UTFT. Фотографирование оставьте - оно работе дисплея не поможет!))) Удачи!

Фуф! Ну вот есть пища для размышлений! Спасибо! Буду дальше курить мануалы.

криворук
Offline
Зарегистрирован: 04.04.2020

Здравствуйте. хотел бы вопрос задать не совсем по теме. возможно ли предположим на восьмибитном экране и ардуино сделать нечто похожее на блок управления для усилка. чтоб отображал как старые музыкальные центры и настройки переключения входов а самое главное спектор звука полос на 10 в покое (как на центрах лет 15 назад). так как я занимался раньше только аналоговыми устройствами а цифровыми только занялся, буду признателен всем советующим и советам. нампример интересует: вобще моя затея возможна? если моя задумка возможна то явно не подойдёт уно, тогда что лучше мега или стм или ещё что, что посоветуете по обьёму памяти. интересует сможет ли контроллер успеть переработать всю бяку анализатора частот. В идеале хочу собрать блок управления усилителем с цветным отображением  и вобщем буду признателен любой инфе и ссылкам по этой теме.

Xomyc
Offline
Зарегистрирован: 10.04.2020

По совету lawr начал поиск библиотеки. И уже что-то есть. Нашел библиотеку UTFT.

https://wiki.iarduino.ru/page/rabota-s-cvetnym-graficheskim-displeem/

Там моего экрана нет, но я нашел сходный по цоколевке, и Запустил вот такой скетч:

02 
03#include <UTFT.h>                              // подключаем библиотеку UTFT
04UTFT myGLCD(TFT28UNO, A2, A1, A3, A4, A0);              // объявляем объект myGLCD класса библиотеки UTFT указывая тип дисплея TFT18SHLD и номера выводов Arduino к которым подключён дисплей: SDA, SCK, CS, RESET, A0. Можно использовать любые выводы Arduino.
05extern uint8_t SmallFont[];                    // подключаем маленький шрифт
06extern uint8_t BigFont[];                      // подключаем большой шрифт
07extern uint8_t SevenSegNumFont[];              // подключаем шрифт имитирующий семисегментный индикатор
08                                               //
09void setup(){                                  //
10   myGLCD.InitLCD();                           // инициируем дисплей
11}                                              //
12                                               //
13void loop(){                                   //
14   myGLCD.clrScr();                            // стираем всю информацию с дисплея
15                                               //
16   myGLCD.setFont(SmallFont);                  // устанавливаем маленький шрифт
17   myGLCD.setColor(VGA_WHITE);                 // устанавливаем белый цвет текста
18   myGLCD.print("iarduino.ru", CENTER, 10);    // выводим текст на дисплей (выравнивание по ширине - центр дисплея, координата по высоте 10 точек)
19                                               //
20   myGLCD.setFont(BigFont);                    // устанавливаем большой шрифт
21   myGLCD.setColor(VGA_BLUE);                  // устанавливаем синий цвет текста
22   myGLCD.print("BigFont", CENTER, 40);        // выводим текст на дисплей (выравнивание по ширине - центр дисплея, координата по высоте 40 точек)
23                                               //
24   myGLCD.setFont(SevenSegNumFont);            // устанавливаем шрифт имитирующий семисегментный индикатор
25   myGLCD.setColor(VGA_WHITE);               // устанавливаем пурпурный цвет текста
26   myGLCD.print("98765", CENTER, 70);          // выводим текст на дисплей (выравнивание по ширине - центр дисплея, координата по высоте 70 точек)
27                                               //
28   delay(20000);                               // ждём 20 секунд
29}                                              //

Правда у меня 128х128 экран, а там 320х240, но главное с параллельным 8-битным выводом.

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

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

Xomyc, библиотеку лучше бы взять с сайта ее создателя, а то эта какая-то кастрированная... Ну, ладно, для начала сойдет.

Попробуем сначала все-таки стартануть с ST7735, для чего откройте файл UTFT.cpp и найдите строку 80:

 UTFT::UTFT(){}

UTFT::UTFT(byte model, int RS, int WR, int CS, int RST, int SER){

далее ниже в таблице (10 столбец) увидели  ITDB18SP, под ним по-вертикали вниз видите 159 - меняете на 127 и ниже SERIAL_5PIN - меняете на 8. 

Сохраняете файл.

Далее, в скетче, что вы привели, заменяете в строке 04: TFT28UNO на ITDB18SP

Загружаете. Должно бы измениться.

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

Xomyc
Offline
Зарегистрирован: 10.04.2020

lawr пишет:

Xomyc, библиотеку лучше бы взять с сайта ее создателя, а то эта какая-то кастрированная... Ну, ладно, для начала сойдет.

Попробуем сначала все-таки стартануть с ST7735, для чего откройте файл UTFT.cpp и найдите строку 80:

 UTFT::UTFT(){}

UTFT::UTFT(byte model, int RS, int WR, int CS, int RST, int SER){

далее ниже в таблице (10 столбец) увидели  ITDB18SP, под ним по-вертикали вниз видите 159 - меняете на 127 и ниже SERIAL_5PIN - меняете на 8. 

Сохраняете файл.

Далее, в скетче, что вы привели, заменяете в строке 04: TFT28UNO на ITDB18SP

Загружаете. Должно бы измениться.

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

Если вписывать ITDB18SP, то экран ничего не показывает. И до изменения тех значений, что вы сказали тоже ничего не показывал. А вот для TFT28UNO я тоже поставил 127х127 и 8 и в 4 строке оставил все как было. И....... Выводит как и выводил. :-(

Родную библиотеку постараюсь скачать.

Xomyc
Offline
Зарегистрирован: 10.04.2020

Ааааа нет! Я брал скетч от ITDB18SP, тогда ничего не поменялось для TFT28UNO. А сейчас я взял скетч из примеров как раз TFT28UNO. Так и цвета те что надо. Вот только сами фонты тоже надо размеры менять судя по всему. Особенно большого. 4 цифры из 10 влазят. И зеркальное изображение.

А родную библитеку с сайта производителя чего-то не могу качнуть. Сильно тормозит сайт и скачивать вообще пока не получается.

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

non relevanted!

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

...

Xomyc
Offline
Зарегистрирован: 10.04.2020

Таки все-таки с ITDB18SP не работает. Белый экран. А вот подставил TFT28UNO и все получилось. В tft_drivers\ili9341\uno\std/initlcd.h поменял 48 на А8. Это самый лучший вариант. С С8 и А8 картинка полностью на экран точно (только в конце теста надпись за край убегает). Только С8 кверху ногами, если шлейф снизу, а А8 надписи идут снизу вверх. Ну т.е. если шлейф повернуть чтобы был слева, то все как надо! Супер! Завтра продолжу! Спасибо огромное!

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

...

Xomyc
Offline
Зарегистрирован: 10.04.2020

Но вот все-таки как-то блекло очень. Все в белизну. В чем интересно дело?

Вот табличка как подключать. Типа в моем случае с D0 по D7 подключаем подряд. А у стандартное подключение D8,D9,D2,D3,D4,D5,D6,D7. Так вот если у меня подключено по стандартной схеме, то тест проходит, но очень блекло.

Если подключаю, как сказано в библиотеке, то тест не идет, зато картинка с разноцветными пикселями очень четкая, как первая в моем посте 2821.

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

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

Нашел UTFT с поддержкой ILI9163. Не знаю как она(нет такого дисплея), но первый попавшийся под руку дисплей на R61581 завелся на ура. Думаю, попробовать стОит. Старую UTFT надо убрать, чтобы не было конфликта. Подключение D0...D7 - стандартное: D8,D9,D2,D3,D4,D5,D6,D7. Библиотека пока тут - https://yadi.sk/d/JjQrcmLbiCbFkw

Xomyc
Offline
Зарегистрирован: 10.04.2020

Спасибо! Будем пробовать!

Xomyc
Offline
Зарегистрирован: 10.04.2020

Старую убрал, новую положил. Результат скетча из примеров - экран стал синим. Больше на нем никакого движения. Я так понимаю там тот же тест, с отрисовкой фигур, закраской и надписи в конце.

А не вру. Цвета заливки меняются в синих тонах. Ярко голубой сменяется фиолетовеньким таким и обратно с интервалом секунд в 30.

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

Подвели китайцы(((Пока можно еще попробовать заменить в этом скетче ILI9163 на ST7735 - ведь аналоги. 

UTFT myGLCD(ST7735,A2,A1,A3,A4,A0);

А я сейчас гляну инит, сравню с ДШ. 

Xomyc
Offline
Зарегистрирован: 10.04.2020

Ну это почти такая же библиотека, просто я так понимаю контроллеров в ней побольше.

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

Щас попробую ST7735.

Xomyc
Offline
Зарегистрирован: 10.04.2020

С ST7735 тоже только смена 2 блеклых цветов.

А вот на всякий случай пример блеклой картинки с TFT28UNO.

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

...

 

 

Xomyc
Offline
Зарегистрирован: 10.04.2020

Нет. Для ILI9163 просто после загрузки скетча экран становится ярко синим, а через какое-то время чуть фиолетовеет. Никаких фигур и надписей нет.

Xomyc
Offline
Зарегистрирован: 10.04.2020

Я понимаю, что для ILI9163 дело не в битности, т.к. ни фигур, ни текста не рисует. Но заменил вашим кодом родной. Теперь экран загорается красным, какое-то время горит красным, потом становиться чуть оттенком в фиолетовый. Да сейчас еще обратил внимание в самой нижней строчке шириной в 1 пиксель что-то там меняется.

Попытался разобраться, что вы поменяли. Ну строки измененные нашел конечно. Но..... как в том анекдоте про Валия Ивановича, Петьку и приборы.

Но я взял и зменил вашим кодом файл initlcd.h для ili9341\uno. Результат есть. Картинка стала значительно четче, но теперь на красном фоне. Ну т.е. все равно с цветом что-то не то.