Slider... finaly my HSNB03-S320 have little life :).tanks for pinmap sugest.
With read id 5.2 result 5252, screen always blank.
Running with mcufriend kbv lib and read id from example, its detected 0x5252 that reference to HX8352A.
Then running aspect_kbv example.. .was automatic use hx8352 setting, then run graphicstest_kbv,
result is like this.
Most color is black&white,and image is not rendered perfectly. but text more better
Then i use UTFT with hx8352 16bit mode got more bad image, or fail fendered.
I use default init from kbv or UTFT without change or add new parameter
I asume the init command is not perfectly in right value, or maybe its not HX8352A chip, but other compatible(i dont have datasheet other 240x480 chip)
Log from read id 5.2 and kbv read id will be add when use laptop.
1. Tell me the complete list of what the reader wrote. When writing a message there is a picture of "{...} code" , copy the answer to this window, in the second tab, select "minimize the default code" Сворачитьвать код по умолчанию (....
2. use the library of UTFT. do not forget
- download library version 2.81
- in the file memorysaver.h , leave only //#define DISABLE_HX8352A . From the others remove // . Save.
- in the file UTFT.cpp , switch to 8 bits display_transfer_mode =dtm[model]; -> display_transfer_mode =8; . Save.
- run the examples sketch UTFT \ examples \ Arduino (AVR) example \ UTFT_Demo_400x240
- change the call to UTFT myGLCD (ITDB32WD, 38,39,40,41); -> UTFT myGLCD (HX8352A, A2, A1, A3, A4); // model, CD(RS), WR, CS , RST ( pinout as adafruit)
- Connect the RD to + 3.3V.
- Start the sketch.
// If the picture of the display is not normal, then try track and to connect the IM.. (BS..) pin differently GND and +3.3v
Давно валяется дисплей от штатногго головного устройства (RCD 300) автомобиля VW.
Размеры дисполея довольно внушительные и хотелось бы его использовать, но проблема в том, что не могу найи совершенно никакой информации по данному дисплею.
Подскажите, как можно определить распиновку шлейфа и определить что за контроллер в не используется.
Откопал еще дисплей 2,8 дюйма 37 пин, FLY E181. 320x240
DB0
DB1
DB2
DB3
GND
VCC
CS
RS
WR
RD
BS1(IM0)
X+
Y+
X-
Y-
LED_A
LED_K1
LED_K2
LED_K3
LED_K4
NC
DB4
DB10
DB11
DB12
DB13
DB14
DB15
DB16
DB17
RESET
VCC
VCC
GND
DB5
DB6
DB7
перевел в 8bit читалка выдала
TFT LCD test
Using Adafruit 2.8" TFT Breakout Board Pinout
TFT size is 240x320
Found 145 LCD driver
Benchmark Time (microseconds)
Screen fill 1379000
Text 88916
Lines 277892
Horiz/Vert Lines 133036
Rectangles (outline) 87984
Rectangles (filled) 3263280
Circles (filled) 644372
Circles (outline) 107908
Triangles (outline) 72140
Triangles (filled) 1416124
Rounded rects (outline) 99108
Rounded rects (filled) 3615264
Done!
Что это за дисплей 145 драйвер?
А другая читалка выдала 2145 драйвер?
TFT LCD test
TFT size is 240x320
Unknown LCD driver chip: 2145
I try use ILI9341 LCD driver If using the Adafruit 2.8" TFT Arduino shield, the line:
#define USE_ADAFRUIT_SHIELD_PINOUT
should appear in the library header (Adafruit_TFT.h).
If using the breakout board, it should NOT be #defined!
Also if using the breakout, double-check that all wiring
matches the tutorial.
Benchmark Time (microseconds)
Screen fill 1379552
Text 350252
Lines 3410800
Horiz/Vert Lines 144656
Rectangles (outline) 104588
Rectangles (filled) 3267456
Circles (filled) 1217432
Circles (outline) 1478528
Triangles (outline) 737024
Triangles (filled) 1720144
Rounded rects (outline) 507484
Rounded rects (filled) 3797144
Done!
0x5252 this HX8352A , 0x00EF-> 240pixel , 0x018F -> 400pixel
you are convinced that you have really 8 bits or 16 bits. For this purpose, during an operating time of reading the reader, connect a white LED on +3.3v and on DB8-DB17, it shan't blink. I very much advise you to check in compliance of BS0. 3. Look at the previous pages, how they took pictures and looked for im0..3 according to the scheme.
blue color of letters means for this controller that you did not set 8 bits. you set 16 bits.
There are 2 options:
1. to set up 8 bits.
or 2. to use UTFT of 16 bits and the display to connect all 16 bits.
// if you have the wrong chromaticity, then on the Internet there was an alteration of library 65K and 262K.
kipriyan ,
очень жаль что вы не читали тему. несколько раз говорил , при размещении кода , на второй вкладке поставить галочку "сворачивать код по умолчанию".
Если что, внизу сообщения не нажимаю "Ответить" или "Цитировать" , чтобы для вас была возможность подредактировать свое сообщение, для вас будет активна кнопка "Изменить" . Чтобы оставить возможность редактирования для ответившего, внизу есть окно "Оставить коментарий" .
по ID 0x4545 м.б. предположить HX8345 но у него другой ID 0x8345 и разрешение меньше.
по ID 0x0145 м.б. предположить S6D0145 , но именно такого не существует
что у вас проскакивало 0x2145 - тож не дело. неконтакт.
все же походу вы где-то ошиблись в подключении , или где неконтакт , или лишний контакт. Как-то подозрительно он иногда отвечает на последовательный опрос регистров. Гляньте для сравнения чуть выше ответ от HX8352A . Можно добавить мегомные резисторы со стороны ардуины, чтобы занулить Z-состояния дисплея.
можно было выложить фотки, что у вас там за клондайк получился.
Если вы уверены в чистоте и правильности подключения, то могли бы перебрать иниты UTFT 1..31 . включить либу на 8бит . Если будете пользовать УНО,... тохотябы половину неиспользуемых контроллеров надо раскоментить DISABLE , иначе памяти на загрузку всех инитов нехватит в atmega328 .
0347 это уже близко к правде , ID 0x0347 ID 0x0047это HX8347D . именно D , у разных букв - разные иниты , и через совершенно разные регистры производится рисование. comment-175986
Так что совет , обеспечте хорошее питание +3.3в , и в читалке-тесте
identifier = 0x9341; // если чип не найден, то принудительно ...
замените на
identifier = 0x7575; // если чип не найден, то принудительно ...
будет использоваться инит от HX8347G ( A, D, G немного схожи , B - совсем другое) который уже есть в этой либе адафруит читалке, вот упоминание его в скетче:
else if(identifier == 0x7575) {
Serial.println(F("Found HX8347G LCD driver"));
получится вот: ( дисплей alcatel ot-905 hx8347d )
Если будете пользовать любой пример из либы адафруит, или свой скетч , то просто вместо
uint16_t identifier = tft.readID();
пишите
uint16_t identifier = 0x7575;
Если хотите пользовать либу UTFT , то под нее выкладывал переделанный инит в comment-175986
// чтение ID для подобных контроллеров возможно в любых режимах 8/9/16/18 бит
а вывод графики этот адафруит будет только на 8 бит . Выставляйте битность через IM правильно.
на 9/16 бит будет рисовать все синим цветом , на 18 бит получите белый экран.
а UTFT могёт и 8 бит и 16 бит.
по поводу зеркалирования, переворачивания, всё уже много раз в теме повторялось. начинайте с даташита и поиска по теме.
Помогите оценить возможность подключения экрана от BlackBerry 9550 к Arduino
В интернете нашел схему 9550, разобрал ее по подключению:
Нужна рекомендация по инициализации и подключения к Mega 2560. Стрелками показал Входы-Выходы
В глубинах интернета нашел, что поцессор, скорее всего, Novatek NT35510. Хочу запустить сам дисплей, пока без тачскрина.
Основные вопросы:
Какое обычно используется напряжение для подсветки дисплея? На схеме это выводы LED (neg, pos). Не смог разобрать, как работает умножитель. По документации, max6946 может работать до 15 вольт.
Что еще учесть при подключении?
На схеме очень много индуктивностей и кондеров для обеспечения помехоустойчивости. Могу я их исключить в локальном подключении?
Меня смутило, что на дисплее есть стандартные SPI и I2C. Да, пост прочитал внимательно до этого, но усомнился. По схеме, процессор формирует только стандартные сигналы на схеме, ни чего лишнего.
Или речь идет про MDDI? По документации сказано, что данные интерфейсы можно не использовать. Точнее они используются для быстрого вывода графики на экран фрагментально. Для текста и простого вывода информации только SPI.
MDDI по схеме формируется двумя парами:STB_M и DATA_M; STB_P и DATA_P, то есть это последовательные порты.
Да, напряжение 1.8 вольта номинальное. Максимальное можно использовать 3.3 вольта.
Всетаки, что может быть LCD_IF_MODE за сигнал? Это не CD? И почему перемешаны SPI и I2C? такое возможно?
мои догадки что I2C , SPI для настройки , MDDI - быстрая последовательная передача RGB. Обычно такие диспы идут без GRAM (ВидеоОЗУ) что их сильно удешевляет и уменьшает размеры контроллера на стекле. ардуино никак не сможет ими управлять.
другое дело , некоторые Novatek имеют GRAM , наравне с MDDI пинами, там да вопрос по SPI, ведь в даташитах там расписано как через него все делать. Для проектов вывода параметров и графиков на ардуино пойдет. Только вот диспов с параллельной шиной и так хватает, чтобы изучать эти. пробуйте поизучать.
№23 3.5" 480x320 tft lcd 44pin дисплей TV Mobile A5000 8/16bit HX8357B , надписи 038-FPC-B HXD01 BX-35HX-038
с регистра BFh считалось внятное ID 00 01 62 83 57 FF , это контроллер HX8357B (у HX8357D надо смотреть в 04h DAh DBh DCh ) иниты этого контроллера распространены и в продаже много шилдов с ними.
распиновка определилась рисованием шлейфа и подбором похожих распиновок в гугле по поиску " TFT LCD 44pin " :
и хорошо запустила тест на минимальном ините (из-за неизвестного для либы контроллера)
// минимальный инит для часто встречающихся контроллеров , подобных ili9341 ili9327 ili9486 ili9488 HX835x R61581 ,...
// у которых setXY через 2Ah 2Bh + 2Ch
// (0x11, 0); ВЫХОД ИЗ СНА
// delay(150);
// (0x36, 0x48); очень важен, иначе перевернуто и цветопередача не та
// (0x3A, 0x05); очень важен, иначе черно-белые кракозябры
// (0x29, 0); ВКЛЮЧЕНИЕ ДИСПЛЕЯ
// (0x2c, 0); конец записи , необязательно но желательно
на ардуинке установлен мощный стаб 3.3в , поэтому не заморачивался и запитал дисп от него. чтоб лог.1 через резисторы 10к не пересилили питание контроллера, ограничил подсветкой, подключив её на этот стаб. , его рассеиваемой мощности хватит питать подсветку (как и делают китайцы)
// если дисп переключить на 16бит , а либа по прежнему на 8бит , экран заведется, но все изображение будет отображаться только синим цветом.
Главное отличие v5.3 от v5.2 , это возможность использования готовых ардуино дисплеев UNOвских LCD TFT шилдов на ардуино MEGA без перепиновки (для тех у кого не оказалось UNO под рукой, а есть только MEGA).
// А в читалке 5.2 при использовании Меги , шина данных же была не на 89234567 пинах ардуины , а на 22-29 пинах (PORTA) .
v5.3 подключение теперь стандартное адафруитское:
изменять эти пины на другие нежелательно! т.к. они работают на уровне библиотеки , а не скетча . пины дисплея .. connects to digital pin .. к пинам Уно, Нано, Мини, Меги :
// D0 connects to digital pin 8 ( Notice these are
// D1 connects to digital pin 9 NOT in order! )
// D2 connects to digital pin 2
// D3 connects to digital pin 3
// D4 connects to digital pin 4
// D5 connects to digital pin 5
// D6 connects to digital pin 6
// D7 connects to digital pin 7
#define LCD_CS A3 // Chip Select goes to Analog 3
#define LCD_CD A2 // Command/Data goes to Analog 2
#define LCD_WR A1 // LCD Write goes to Analog 1
#define LCD_RD A0 // LCD Read goes to Analog 0
#define LCD_RESET A4 // Can alternately just connect to Arduino's reset pin
Если у вас не шилд с преобразователями уровней, а голый дисплей , то подключать его через резисторы 10ком (если ардуина 5ти вольтовая) . Если у дисплея есть пины D8-D15-D17 , то их желательно через 10к на GND .
Во следующем случае , D0-D7 пустить через резисторы на GND , а D8-D15 подключить как D0-D7 соответственно. (не рассматривая редкие случаи других комбинаций, см. тему)
Если известный либе контроллер ( ILI9325 ILI9328 HX8347G HX8357D ILI9341) не найден , то после чтения запускается графический тест на принудительно минимальном ините и рисование через регистры как в ili9341
минимальный инит для часто встречающихся контроллеров , подобных ili9341 ili9327 ili9486 ili9488 HX835x R61581 ,...
у которых setXY через 2Ah 2Bh + 2Ch :
(0x11, 0); ВЫХОД ИЗ СНА
delay(150);
(0x36, 0x48); очень важен, иначе перевернуто и цветопередача не та
(0x3A, 0x05); очень важен, иначе черно-белые кракозябры
(0x29, 0); ВКЛЮЧЕНИЕ ДИСПЛЕЯ
(0x2c, 0); конец записи , необязательно но желательно
// как разместить выданный лог в форуме : открываете монитор порта , ждем минутку пока не пройдет тест, нажимаем 'ctrl' + 'A' и затем 'ctrl' + 'C' (это выделить все , скопировать) , в окошке комментария форума в нутри текста вашего сообщения, нажимаете значек {....}code , переходите на поле и жмете 'ctrl'+'V' , переходите на вкладку Дополнительно , и ставите галку
Свернуть
Сворачитьвать код по умолчанию (управляющие элементы должным быть включены)
жмете [Ок]
как пользоваться читалкой описывал ранееcomment-264976 , для тех кто вообще не знает что такое монитор порта в IDEcomment-298120
И еще по поводу читалки , пересмотреть все возможные даташиты , где и как в них лежит ID , чтобы обучить читалку на выходе выдавать один конкретный регистр с ID , не представляется возможным. тем более встечается хитрож..по все запрятано (надо знать заранее ID контроллера, сообщить его ему , только тогда он будет отвечать - гон короче) . В читалке нет никакой базы контроллеров дисплеев (хотя можно-было широкораспространенные включить), да и зачем, в инете есть постоянно добавляющиеся контроллеры и даташиты.
просто выдаются все регистры подряд - это самое информативное, а человек должен сам посмотреть весь лог и сообразить где что есть похожее на ID.
что в конце выдает к примеру Unknown LCD driver chip: 686, то это только по одному регистру D3h в бо'льшем количестве дисплеев.
!!! Обращать большее внимание надона то что в рамке , для этого делается еще пауза
265
o------------------------------------o
266
| |
267
00 = 01 01 01 01 01 01 01 01 ***** |
268
04 = 0 * |
269
B0 = 0 |
270
BF = 0 * |
271
D3 = 00 00 94 86 86 86 86 86 ***** |
272
DA = 0 * |
273
DB = 0 * |
274
DC = 0 * |
275
EF = 00 80 00 10 60 40 10 00 ***** |
276
| |
277
o------------------------------------o
и на регистры что отмечены ***** и * по всему логу.
//// в принципе хорошо бы ещё сделать удобное переключение распиновки и для меговских шилдов для мег (ШД на портА), и для ардиуины DUE разные варианты. Но это как-то не важно. Как и напихивать всяческими инитами (такую либу в инете уже встречал, с большой поддержкой многих контроллеров , на базе adafruit)
After trial and error, my lcd finally display the color. But still not perfect, because the yellow and white colors like missing or not appearing.
I think this problem is from gamma setting , but after trying 5 different gamma setting configuration, the problem is still the same. Lcd does not show yellow and white perfectly .
maybe the pin configuration that I use, is still not match with the 16 bit order.
But this LCD should have stopped in observation,
The LCD is already cracked because my little princess hit the surface with a barbie dools hahahaha ...
-----------------------------------
Now I'm trying with four lcds that use ili9225 chip and one with chip detected 0x9226.
Configuration for IM0 and IM1 in FPC path, using parallel 8 bit for 80 MCU.
Everything still can not display anything on screen.
i already change define resolution for ili9225
#define TFTWIDTH 176
#define TFTHEIGHT 220
and try to change value for setAddrWindow
else if ((driver == ID_9341) || (driver == ID_HX8357D)) {
uint32_t t;
t = x1;
t << = 16;
t | = X2;
writeRegister32 (ILI9341_COLADDRSET, t); // HX8357D uses same registers!
t = y1;
t << = 16;
t | = Y2;
writeRegister32 (ILI9341_PAGEADDRSET, t); // HX8357D uses same registers!
}
to this
else if ((driver == ID_9341) || (driver == ID_HX8357D)) {
writeRegister8 (0x36, x2);
writeRegister8 (0x37, x1);
writeRegister8 (0x38, y2);
writeRegister8 (0x39, y1);
writeRegister8 (0x20, x1);
writeRegister8 (0x21, y1);
}
Привет всем. Помгните мой экран на RM68120? Потратил кучу времени, а оказалось у меня нет сигнала на разъеме DB11, при этом старый экран работал и без него, а я не мог подумать, что у меня что-то не то именно между МК и разъемом, ведь старый экран-то работает. Такие дела, век живи и век учись, искал везде, а на лбу забыл проверить. Плохо, когда не уверен ни в программе, ни в экране, ни в переходнике, ни в печатке. Экран 16 битные команды хавает все-таки.
tongbajiel , ох не пойму я вас , почему вы не можете переключить его на 8 бит.
у вас хороший кабель дисплея comment-289654, есть пины 7 и 8 , они похожи на IM (BS) для выбора 8/9/16/18 бит . просто они вероятно подключены принудительно резисторами - перемычками на 16(18) бит. Можно убедиться по схеме HX8352A что это именно они , и перепаять их тонким жалом паяльника , на дорожки пинов 7 и 8 . Таким образом подавая разные логические уровни на эти пины, вы можете выбирать нужную для вас битность. об этом я вам говорил comment-290641 ,
у вас есть 2 простых и быстрых варианта : или 1 вариант - переключить дисплей на 8бит , или 2 вариант использовать его как есть на 16 бит , но с библиотекой UTFT . Какой вариант вам нужен ?
если вы не хотите их перепаивать, то можете подключить дисплей как есть на 16(18) бит к библиотеке UTFT . в ее даташите указано куда подключать для разных ардуино. В UTFT HX8352A по умолчанию рисование на 8 бит , чтобы переключить на 16 бит - нужно в файле UTFT.cppdisplay_transfer_mode =dtm[model]; заменить на display_transfer_mode =16; . В файле memorysaver.h оставить закоментированным только//#define DISABLE_HX8352A1// ITDB32WD / TFT01_32WD / CTE32W . Выбрать пример UTFT\examples\Arduino (AVR)\UTFT_Demo_400x240 . и в нем вызов UTFT myGLCD(HX8352A,A5,A4,A3,A2); . И не забудьте RD дисплея подключить на +3.3в .
в следующем сообщении приведу пример 16 бит дисплея и ардуино УНО , посмотрите и сделаете похоже.
// при все синем цвете - гамма коррекция тут не причем . в предыдущем моем сообщении HX8347D тоже показывает все в синем цвете если дисплей включить на 16 бит , а использовать библиотеку на 8 бит. Здесь дело в разной кодировке цветности при 8 бит и 16 бит у всех контроллеров.
собстенно вот что бывает если дисплей на 16 бит , а библиотека рисует на 8 бит - синие буквы :
на других контроллерых, м.б. иначе - все буквы белым цветом и плохо прорисованы, или просто белый экран.
Подключение дисплея 16 бит и соответственно библиотеки 16 бит (UTFT) на ардуино УНО (для ардуино мега еще проще)
библиотека UTFT оригинальная без переделок, ili9486 там по умолчанию 16бит . Не забываем для библиотеки UTFT , пин RD дисплея подключить на +3.3в , файле memorysaver.h раскоментировать все #define DISABLE_..... , оставив только //#define DISABLE_ILI94861// CTE40 . Использовать пример: UTFT\examples\Arduino (AVR)\UTFT_Demo_480x320 , вызов: UTFT myGLCD(ILI9486,A5,A4,A3,A2); .
// в принципе для UNO с atmega328 в планарном корпусе , остаются еще неиспользованы пины A6 A7 , для постройки графических логгеров напряжений это хватает, если нужны еще и цифровые пины , то можно высвободить еще 2 , к примеру I2C - A4 A5 , сместив их и выкинув CS и RESET (ранее приводил пример) . для высвобождения почти всех пинов потребуются микросхемы - регистры (тож примеры были).
//// в принципе и Adafruit можно модернизировать под кодировку цвета при 16бит, и вырезать не особо нужные RD, CS, RESET .
Друзья, помогите найти библиотеку UTFT для ILI9488.
Перепробовал много всего - ничего не работает. Читалка показывает нормально. А вот библиотеку нормальную найти немогу... Адафруит мне как-то не очень нравится...
....
Все, нашел, завтра постараюсь выложить результаты по дисплею
А чего искать то было, ili 9488 тот же ili 9341. Только надо подправить регистры для частоты обновления матрицы. Ну да, adafruit заточен для работы с пинами разбросанными по разным портам. В принципе можно модифицировать для работы на одном порту для 8 бит. Для 8 бит на mega мможно попробовать использовать модуль периферии внешней RAM.
У mega2560 есть модуль для подключения внешней памяти, назначаем определенному разряду адреса (к примеру А8) значение RS . Переводим PORTA на выход, устанавливаем адрес равный 0х0100 или 0х0000 (который формирует сигнал RS = COM/DATA), сигнал WR формируется при записи данных в PORTA. Запись можно производить массивами. Даже учитывая что запись во внешнюю память производится за три такта будет гараздо быстрее чем в любой библиотеке, но к сожалению использовать можно только с восьмибитными TFT. Используя 32-х разрядные микроконтроллеры можно работать и с 16 бит TFT, тем более у некоторых на борту уже реализован протокол работы с TFT.
Заказал такие вот дисплеи: https://ru.aliexpress.com/item/2-0-3-3V-TFT-LCD-Touch-Screen-Breakout-Bo...
продавец пишет что типа на контроллере ST7775 не могу найти даташит на него, может кто поделиться ссылкой?
Ну как прислал библу продавец, мне пока молчит.
http://www.inhaos.com/uploadfile/otherpic/ST7775.pdf
Slider... finaly my HSNB03-S320 have little life :).tanks for pinmap sugest.
With read id 5.2 result 5252, screen always blank.
Running with mcufriend kbv lib and read id from example, its detected 0x5252 that reference to HX8352A.
Then running aspect_kbv example.. .was automatic use hx8352 setting, then run graphicstest_kbv,
result is like this.
Most color is black&white,and image is not rendered perfectly. but text more better
Then i use UTFT with hx8352 16bit mode got more bad image, or fail fendered.
I use default init from kbv or UTFT without change or add new parameter
I asume the init command is not perfectly in right value, or maybe its not HX8352A chip, but other compatible(i dont have datasheet other 240x480 chip)
Log from read id 5.2 and kbv read id will be add when use laptop.
tongbajiel,
This is result from read ID.
with UTFT and set as your suggest. display is always blank. only with MCU_kbv lib this display has show someting T_T.
I dont know why wit UTFT, 8 bit mode this display cannot works.
The resistor in photo connect to BS1 and BS0. P68 and BS2 default is connected to the GND in FPC
BS1, BS0 connect to (+3.3v) via 10 Ohm resistor. that means this display set to 8bit 80 MCU 262K color in datasheet.
This result when i use this init code on MCU_kbv lib. Display show only one color. is this gamma problem or somethings else i dont know.
У меня дисплейчик то нокиа 6300, на котором написано:
4850023 MP1.0
UF24U084BA TJ A06 S9 0402
Подскажите, плиз, как его сконнектить с Ардуино Уно?
Буду весьма признателен.
В нете есть инфа про дисплей для нокия 6300
Доброго дня. Не моглибы подсказать что за зверь, и как его прикрутить к Arduino Mega. Есть проект где надо цетной дисплей.
Вот фото его со стороны шлейфа (Экран снят с телефона Alcatel)
Маркировка TD-TNHV3509-3
Приветствую всех.
Давно валяется дисплей от штатногго головного устройства (RCD 300) автомобиля VW.
Размеры дисполея довольно внушительные и хотелось бы его использовать, но проблема в том, что не могу найи совершенно никакой информации по данному дисплею.
Подскажите, как можно определить распиновку шлейфа и определить что за контроллер в не используется.
Заранее благодарен.
Откопал еще дисплей 2,8 дюйма 37 пин, FLY E181. 320x240
перевел в 8bit читалка выдала
Что это за дисплей 145 драйвер?
А другая читалка выдала 2145 драйвер?
TFT LCD test
TFT size is 240x320
Unknown LCD driver chip: 2145
I try use ILI9341 LCD driver If using the Adafruit 2.8" TFT Arduino shield, the line:
#define USE_ADAFRUIT_SHIELD_PINOUT
should appear in the library header (Adafruit_TFT.h).
If using the breakout board, it should NOT be #defined!
Also if using the breakout, double-check that all wiring
matches the tutorial.
Benchmark Time (microseconds)
Screen fill 1379552
Text 350252
Lines 3410800
Horiz/Vert Lines 144656
Rectangles (outline) 104588
Rectangles (filled) 3267456
Circles (filled) 1217432
Circles (outline) 1478528
Triangles (outline) 737024
Triangles (filled) 1720144
Rounded rects (outline) 507484
Rounded rects (filled) 3797144
Done!
К сожалению, облазил весь инет, а нужого и полезного так и не нашел...
Подсобите, пожалуйста, только конкретную инфу, а не общие слова. Нужны схемы и распиновки.
To: Yarus
http://andybrown.me.uk/2012/07/28/interfacing-the-nokia-6300-qvga-tft-to-the-standard-arduino/
и вот еще http://phreakerclub.com/464
Смотри
ДЛЯ basiliy253
http://partsoutlet.ru/item.php?id=44522
Для kipriyan
Из прошивки телефона FLY E181.
custom\drv\LCD\TINNO35_09A_LCM\lcd_HX8347D.c IsLcd_HX8347D.. data:%x LCD_BlockWrite_ILI9325: startx=%d, starty=%d, endx=%d, endy=%d 0 custom\drv\LCD\TINNO35_09A_LCM\lcd_ILI9325.c IsLcd_ILI9325.. data:%x LCD_Init_R61580() %d 0 custom\drv\LCD\TINNO35_09A_LCM\lcd_R61580.c IsLcd_R61580
Еще инет сказал, что этот дисплей идет на FLY E160.
Из прошивки телефона FLY E160.
LCD_BlockWrite_HX8347D: startx=%d, starty=%d, endx=%d, endy=%d 0 custom\drv\LCD\TINNO35_09A_LCM\lcd_HX8347D.c IsLcd_HX8347D.. data:%x LCD_BlockWrite_ILI9325: startx=%d, starty=%d, endx=%d, endy=%d 0 custom\drv\LCD\TINNO35_09A_LCM\lcd_ILI9325.c IsLcd_ILI9325.. data:%x LCD_BlockWrite_ILI9328: startx=%d, starty=%d, endx=%d, endy=%d 0 custom\drv\LCD\TINNO35_09A_LCM\lcd_ILI9328.c IsLcd_ILI9328.. data:%x LCD_Init_R61580() %d 0 custom\drv\LCD\TINNO35_09A_LCM\lcd_R61580.c IsLcd_R61580 data
Cпасибо, помогло.
Подключу - отпишусь.
Спасибо. Буду пробовать. Но почему id странный такой?
Попробуй более простую читалку регистров.
Для firmwares
http://pdf1.alldatasheet.com/datasheet-pdf/view/43104/SHARP/LM3201921/+33QQ5UO.vRPbMPNNBNhCz+/datasheet.pdf
Это даташит для аналогичного дисплея.
http://forum.cxem.net/index.php?/topic/63864-дисплей-320240-и-арм7/
все тот же FLY E181 Это то что дала читалка MCUFRIEND и все так же не реагирует. Никак не определю что за чип, чтобы заставить его работать
Пробывал инициализации чипов которые в прошивке?
Пробовал, не пошло, но на 0х0145 отвечает
Проверь правильность подключения и прозвони непосредственно со шлейфа до платы.
Читалка от SLIDER выдала тоже 145 чип. Вот код:
Может он не от 181 флая ?
Или все таки данные не в 8 битах. Еще проверить подключение шины данных. Пины не перепутаны?
it is connected correctly
007
reg p1 p2 p3 p4 p5 p6 p7 p8
008
00 = 52 52 52 52 52 52 52 52 *****
009
01 = 02 02 02 02 02 02 02 02
010
02 = 0
011
03 = 0
012
04 = 0 *
013
05 = EF EF EF EF EF EF EF EF
014
06 = 0
015
07 = 0
016
08 = 01 01 01 01 01 01 01 01
017
09 = 8F 8F 8F 8F 8F 8F 8F 8F
0x5252 this HX8352A , 0x00EF-> 240pixel , 0x018F -> 400pixel
you are convinced that you have really 8 bits or 16 bits. For this purpose, during an operating time of reading the reader, connect a white LED on +3.3v and on DB8-DB17, it shan't blink. I very much advise you to check in compliance of BS0. 3. Look at the previous pages, how they took pictures and looked for im0..3 according to the scheme.
or 2. to use UTFT of 16 bits and the display to connect all 16 bits.
// if you have the wrong chromaticity, then on the Internet there was an alteration of library 65K and 262K.
kipriyan ,
очень жаль что вы не читали тему. несколько раз говорил , при размещении кода , на второй вкладке поставить галочку "сворачивать код по умолчанию".
Если что, внизу сообщения не нажимаю "Ответить" или "Цитировать" , чтобы для вас была возможность подредактировать свое сообщение, для вас будет активна кнопка "Изменить" . Чтобы оставить возможность редактирования для ответившего, внизу есть окно "Оставить коментарий" .
по ID 0x4545 м.б. предположить HX8345 но у него другой ID 0x8345 и разрешение меньше.
по ID 0x0145 м.б. предположить S6D0145 , но именно такого не существует
что у вас проскакивало 0x2145 - тож не дело. неконтакт.
все же походу вы где-то ошиблись в подключении , или где неконтакт , или лишний контакт. Как-то подозрительно он иногда отвечает на последовательный опрос регистров. Гляньте для сравнения чуть выше ответ от HX8352A . Можно добавить мегомные резисторы со стороны ардуины, чтобы занулить Z-состояния дисплея.
можно было выложить фотки, что у вас там за клондайк получился.
Если вы уверены в чистоте и правильности подключения, то могли бы перебрать иниты UTFT 1..31 . включить либу на 8бит . Если будете пользовать УНО,... тохотябы половину неиспользуемых контроллеров надо раскоментить DISABLE , иначе памяти на загрузку всех инитов нехватит в atmega328 .
Добился я от него ответа 0347 значит чип hx8347 но пока картинки не добился
вот код ответа:
kipriyan ,
0347 это уже близко к правде , ID 0x0347 ID 0x0047 это HX8347D . именно D , у разных букв - разные иниты , и через совершенно разные регистры производится рисование. comment-175986
ID 0x0347 вот чтение HX8347D считалось
ID 0x0047 , просто следом, видимо из-за недостаточного питания
ID 0x0747 выдало 747 , после повышения напряжения с 2.7в до хороших 3.3в ,
Так что совет , обеспечте хорошее питание +3.3в , и в читалке-тесте
identifier = 0x9341; // если чип не найден, то принудительно ...
замените на
identifier = 0x7575; // если чип не найден, то принудительно ...
будет использоваться инит от HX8347G ( A, D, G немного схожи , B - совсем другое) который уже есть в этой либе адафруит читалке, вот упоминание его в скетче:
получится вот: ( дисплей alcatel ot-905 hx8347d )
Если будете пользовать любой пример из либы адафруит, или свой скетч , то просто вместо
uint16_t identifier = tft.readID();
пишите
uint16_t identifier = 0x7575;
Если хотите пользовать либу UTFT , то под нее выкладывал переделанный инит в comment-175986
// чтение ID для подобных контроллеров возможно в любых режимах 8/9/16/18 бит
а вывод графики этот адафруит будет только на 8 бит . Выставляйте битность через IM правильно.
на 9/16 бит будет рисовать все синим цветом , на 18 бит получите белый экран.
а UTFT могёт и 8 бит и 16 бит.
по поводу зеркалирования, переворачивания, всё уже много раз в теме повторялось. начинайте с даташита и поиска по теме.
kipriyan
Напиши что написано на дисплее и шлейфе.
FLY E181: TRULY TFT8k4662FPC-A1-E
на дисплее никаких надписей
https://cloud.mail.ru/public/Euvz/nXSN9935k
Если такой, то контроллер HX8347D.
Данные по D10-D17. BS1 на +3,3В.
Да такой. Резистор R2 с земли посадил на R3(8bit) и подал туда 3,3в а шину использвал DB10-DB17, поделись либой пож-та под адафруит
Я пишу на Алгоритм Билдере. Могу сбросить проект. Но его без АБ не откроешь.
Могу hex.
Спасибо за Инит. Буду пробовать цеплять на адафруит, если не получится то в UTFT. Так не хочется перепаивать проводки.
хмм..... так он у вас уже на адафруит подключен, читалка использует адафруит. надо только в скетче читалки заменить
identifier = 0x9341; // если чип не найден, то принудительно ...
на
identifier = 0x7575; // если чип не найден, то принудительно ...
и подождать пока пройдет чтение ID и начнется тест
Добрый день всем.
Помогите оценить возможность подключения экрана от BlackBerry 9550 к Arduino
В интернете нашел схему 9550, разобрал ее по подключению:
Нужна рекомендация по инициализации и подключения к Mega 2560. Стрелками показал Входы-Выходы
В глубинах интернета нашел, что поцессор, скорее всего, Novatek NT35510. Хочу запустить сам дисплей, пока без тачскрина.
Основные вопросы:
Какое обычно используется напряжение для подсветки дисплея? На схеме это выводы LED (neg, pos). Не смог разобрать, как работает умножитель. По документации, max6946 может работать до 15 вольт.
Что еще учесть при подключении?
На схеме очень много индуктивностей и кондеров для обеспечения помехоустойчивости. Могу я их исключить в локальном подключении?
Заранее спасибо.
Добрый день всем.
Помогите оценить возможность подключения экрана от BlackBerry 9550 к Arduino.....
мега трудно. ответ был дан несколькими страницами ранее comment-252673.
Спасибо за быстрый ответ Slider
Меня смутило, что на дисплее есть стандартные SPI и I2C. Да, пост прочитал внимательно до этого, но усомнился. По схеме, процессор формирует только стандартные сигналы на схеме, ни чего лишнего.
Или речь идет про MDDI? По документации сказано, что данные интерфейсы можно не использовать. Точнее они используются для быстрого вывода графики на экран фрагментально. Для текста и простого вывода информации только SPI.
MDDI по схеме формируется двумя парами:STB_M и DATA_M; STB_P и DATA_P, то есть это последовательные порты.
Да, напряжение 1.8 вольта номинальное. Максимальное можно использовать 3.3 вольта.
Всетаки, что может быть LCD_IF_MODE за сигнал? Это не CD? И почему перемешаны SPI и I2C? такое возможно?
мои догадки что I2C , SPI для настройки , MDDI - быстрая последовательная передача RGB. Обычно такие диспы идут без GRAM (ВидеоОЗУ) что их сильно удешевляет и уменьшает размеры контроллера на стекле. ардуино никак не сможет ими управлять.
другое дело , некоторые Novatek имеют GRAM , наравне с MDDI пинами, там да вопрос по SPI, ведь в даташитах там расписано как через него все делать. Для проектов вывода параметров и графиков на ардуино пойдет. Только вот диспов с параллельной шиной и так хватает, чтобы изучать эти. пробуйте поизучать.
перейду на побольше диспы
IM 0 - 16бит , 1 - 8бит (используются D0-7)
читалка v5.3 выдала:
и хорошо запустила тест на минимальном ините (из-за неизвестного для либы контроллера)
читалка версия v5.3 https://yadi.sk/d/xzs-NWp43KLhdt
Главное отличие v5.3 от v5.2 , это возможность использования готовых ардуино дисплеев UNOвских LCD TFT шилдов на ардуино MEGA без перепиновки (для тех у кого не оказалось UNO под рукой, а есть только MEGA).
// А в читалке 5.2 при использовании Меги , шина данных же была не на 89234567 пинах ардуины , а на 22-29 пинах (PORTA) .
v5.3 подключение теперь стандартное адафруитское:
пины дисплея .. connects to digital pin .. к пинам Уно, Нано, Мини, Меги :
Во следующем случае , D0-D7 пустить через резисторы на GND , а D8-D15 подключить как D0-D7 соответственно. (не рассматривая редкие случаи других комбинаций, см. тему)
Если известный либе контроллер ( ILI9325 ILI9328 HX8347G HX8357D ILI9341) не найден , то после чтения запускается графический тест на принудительно минимальном ините и рисование через регистры как в ili9341
И еще по поводу читалки , пересмотреть все возможные даташиты , где и как в них лежит ID , чтобы обучить читалку на выходе выдавать один конкретный регистр с ID , не представляется возможным. тем более встечается хитрож..по все запрятано (надо знать заранее ID контроллера, сообщить его ему , только тогда он будет отвечать - гон короче) . В читалке нет никакой базы контроллеров дисплеев (хотя можно-было широкораспространенные включить), да и зачем, в инете есть постоянно добавляющиеся контроллеры и даташиты.
просто выдаются все регистры подряд - это самое информативное, а человек должен сам посмотреть весь лог и сообразить где что есть похожее на ID.
что в конце выдает к примеру Unknown LCD driver chip: 686, то это только по одному регистру D3h в бо'льшем количестве дисплеев.
!!! Обращать большее внимание надо на то что в рамке , для этого делается еще пауза
265
o------------------------------------o
266
| |
267
00 = 01 01 01 01 01 01 01 01 ***** |
268
04 = 0 * |
269
B0 = 0 |
270
BF = 0 * |
271
D3 = 00 00 94 86 86 86 86 86 ***** |
272
DA = 0 * |
273
DB = 0 * |
274
DC = 0 * |
275
EF = 00 80 00 10 60 40 10 00 ***** |
276
| |
277
o------------------------------------o
Только сейчас увидел Ваш вопрос. Либу я и не просил, а полный даташит на дисплей - прислал.
And this result for the other LCD with unmodified Adafruit_TFTLCD.cpp
Привет всем. Помгните мой экран на RM68120? Потратил кучу времени, а оказалось у меня нет сигнала на разъеме DB11, при этом старый экран работал и без него, а я не мог подумать, что у меня что-то не то именно между МК и разъемом, ведь старый экран-то работает. Такие дела, век живи и век учись, искал везде, а на лбу забыл проверить. Плохо, когда не уверен ни в программе, ни в экране, ни в переходнике, ни в печатке. Экран 16 битные команды хавает все-таки.
tongbajiel , ох не пойму я вас , почему вы не можете переключить его на 8 бит.
у вас хороший кабель дисплея comment-289654, есть пины 7 и 8 , они похожи на IM (BS) для выбора 8/9/16/18 бит . просто они вероятно подключены принудительно резисторами - перемычками на 16(18) бит. Можно убедиться по схеме HX8352A что это именно они , и перепаять их тонким жалом паяльника , на дорожки пинов 7 и 8 . Таким образом подавая разные логические уровни на эти пины, вы можете выбирать нужную для вас битность. об этом я вам говорил comment-290641 ,
у вас есть 2 простых и быстрых варианта : или 1 вариант - переключить дисплей на 8бит , или 2 вариант использовать его как есть на 16 бит , но с библиотекой UTFT . Какой вариант вам нужен ?
если вы не хотите их перепаивать, то можете подключить дисплей как есть на 16(18) бит к библиотеке UTFT . в ее даташите указано куда подключать для разных ардуино. В UTFT HX8352A по умолчанию рисование на 8 бит , чтобы переключить на 16 бит - нужно в файле UTFT.cpp display_transfer_mode = dtm[model]; заменить на display_transfer_mode = 16; . В файле memorysaver.h оставить закоментированным только //#define DISABLE_HX8352A 1 // ITDB32WD / TFT01_32WD / CTE32W . Выбрать пример UTFT\examples\Arduino (AVR)\UTFT_Demo_400x240 . и в нем вызов UTFT myGLCD(HX8352A,A5,A4,A3,A2); . И не забудьте RD дисплея подключить на +3.3в .
в следующем сообщении приведу пример 16 бит дисплея и ардуино УНО , посмотрите и сделаете похоже.
// при все синем цвете - гамма коррекция тут не причем . в предыдущем моем сообщении HX8347D тоже показывает все в синем цвете если дисплей включить на 16 бит , а использовать библиотеку на 8 бит. Здесь дело в разной кодировке цветности при 8 бит и 16 бит у всех контроллеров.
собстенно вот что бывает если дисплей на 16 бит , а библиотека рисует на 8 бит - синие буквы :
на других контроллерых, м.б. иначе - все буквы белым цветом и плохо прорисованы, или просто белый экран.
Подключение дисплея 16 бит и соответственно библиотеки 16 бит (UTFT) на ардуино УНО (для ардуино мега еще проще)
библиотека UTFT оригинальная без переделок, ili9486 там по умолчанию 16бит . Не забываем для библиотеки UTFT , пин RD дисплея подключить на +3.3в , файле memorysaver.h раскоментировать все #define DISABLE_..... , оставив только //#define DISABLE_ILI9486 1 // CTE40 . Использовать пример: UTFT\examples\Arduino (AVR)\UTFT_Demo_480x320 , вызов: UTFT myGLCD(ILI9486,A5,A4,A3,A2); .
// в принципе для UNO с atmega328 в планарном корпусе , остаются еще неиспользованы пины A6 A7 , для постройки графических логгеров напряжений это хватает, если нужны еще и цифровые пины , то можно высвободить еще 2 , к примеру I2C - A4 A5 , сместив их и выкинув CS и RESET (ранее приводил пример) . для высвобождения почти всех пинов потребуются микросхемы - регистры (тож примеры были).
//// в принципе и Adafruit можно модернизировать под кодировку цвета при 16бит, и вырезать не особо нужные RD, CS, RESET .
Друзья, помогите найти библиотеку UTFT для ILI9488.
Перепробовал много всего - ничего не работает. Читалка показывает нормально. А вот библиотеку нормальную найти немогу... Адафруит мне как-то не очень нравится...
....
Все, нашел, завтра постараюсь выложить результаты по дисплею
А чего искать то было, ili 9488 тот же ili 9341. Только надо подправить регистры для частоты обновления матрицы. Ну да, adafruit заточен для работы с пинами разбросанными по разным портам. В принципе можно модифицировать для работы на одном порту для 8 бит. Для 8 бит на mega мможно попробовать использовать модуль периферии внешней RAM.
Про модуль внешней памяти можно поподробнее?
У mega2560 есть модуль для подключения внешней памяти, назначаем определенному разряду адреса (к примеру А8) значение RS . Переводим PORTA на выход, устанавливаем адрес равный 0х0100 или 0х0000 (который формирует сигнал RS = COM/DATA), сигнал WR формируется при записи данных в PORTA. Запись можно производить массивами. Даже учитывая что запись во внешнюю память производится за три такта будет гараздо быстрее чем в любой библиотеке, но к сожалению использовать можно только с восьмибитными TFT. Используя 32-х разрядные микроконтроллеры можно работать и с 16 бит TFT, тем более у некоторых на борту уже реализован протокол работы с TFT.