Ребята подскажите пожалуйста распиновку дисплея на шлейфе написано tft8k5659fpc-a1-e
зачем? дисплей вы запустили на arduino UNO, и он у вас работает в составе шилда http://arduino.ru/forum/apparatnye-voprosy/arduino-uno-r324tft-shild#comment-256064 . Распиновка у него одна из стандартных. Даже проследив дорожки через буферные микросхемы , можно нарисовать распиновку дисплея. Библиотеки вывода на экран обычно работают и на ардуинке MEGA , изредка в скетче надо закоментить/раскоментить нужную строчку , с microSD посложнее если библтотека работает на аппаратном SPI. это все не раз оговаривалось на форуме.
Gavrik1980, IM2 не выведен в шлейф, как и другие пины из-за ненадобности .
Ребята подскажите пожалуйста распиновку дисплея на шлейфе написано tft8k5659fpc-a1-e
зачем? дисплей вы запустили на arduino UNO, и он у вас работает в составе шилда http://arduino.ru/forum/apparatnye-voprosy/arduino-uno-r324tft-shild#comment-256064 . Распиновка у него одна из стандартных. Даже проследив дорожки через буферные микросхемы , можно нарисовать распиновку дисплея. Библиотеки вывода на экран обычно работают и на ардуинке MEGA , изредка в скетче надо закоментить/раскоментить нужную строчку , с microSD посложнее если библтотека работает на аппаратном SPI. это все не раз оговаривалось на форуме.
Gavrik1980, IM2 не выведен в шлейф, как и другие пины из-за ненадобности .
Подскажите стандартная это распиновка от любой tft8k 44pin подходит.Просто хочу вывести RD что-бы можно было определять ID.Первый вывод слева или справа если смотреть на дисплей.Спасибо за ответ.На меге как не странно не работает.
Slider подскажи пожалуйста как узнать где находиться первый вывод этого дисплея (слева или справа идёт счет).На нём не где не пронумеровано.Спасибо за ответ!!!
dr-baks, дофотайте сам шлейф, крупным планом, а то на общем фото трудно различить.
и вы спрашивали про RD , я так понял что это про дисп TFT8K5659FPC-A1-E TFT1P5607 который на шилде? правильно? так там и подписан он как LCD_RD . от этой ножки его можно и проследить на какой пин он приходит на шлейфе , посмотрев еще даташит микросхемы через которую он идет. Также и все остальные ножки проследите и напишите какая у вас получилась распиновка.
Или это вопрос про дисплей не с шилда? тогда выкладывайте фотки самого шлейва , и сколько примерно размер в " этого дисп?
Comondante пишет:
Slider,DB0...DB7 были подключены согласно utft -ной распиновки для uno
......
библа memorysaver.h стандарная ничего не раскоментывал памяти хватило.
Но ничего не получилось.Экран даже не моргнул.
Что ещё можно попробывать??
Comondante, это очень странно, IDE должна ругаться на недостаток памяти . проверьте правильность размещения библиотеки , и не присутствуют ли ее файлы в соседних папках.
1. третий раз говорю - в вашем случае распиновку можно определить проследив дорожки по шилду, вы же с него то сняли дисп.
все остальные способы несколько раз повторял в этой теме:
2. забить в гуглtfl lcd 44pinhttps://www.google.ru/search?q=tft+lcd+44pin, нажать картинки , и по минусам , толстым плюсам которые видно по шлейфу , подобрать подходящюю картинку распиновки . Далее уточнить по другим дорожкам. картинок там просто валом. именно такой шлейф 1в1 искать не нужно, как и размер и контроллер (могут стоять очень много разных)
вот очень похожая на ваш TFT8K5659FPC-A1-E TFT1P5607 , нумерация слева направо 1...44 по последнему фото где назв. диспа:
3. есть еще сайт продажи многих диспов http://www.wayengineer.com/ забиваете в нем поиск 44pin и находите ваш дисп и распиновки
// если вас не устраивает как работают микросхемы на шилде , ибо это м.б. не настоящие преобразователи уровней, а простые двухнаправленные повторители , ( направление на них переключает LCD_RD ) , типа глюки и. тд и тп , то снесите их феном и замените 10ком резисторами , согласно даташиту . И параллельно 3.3в стабу на шилде желательно поставить стабилитрон 3.3в (или понадеятся что его также ограничивают светодиоды подсветки повешанные тоже на этот стаб).
Если проек будите делать на ардуино, то запитать tft можно от 3.3 в от самого ардуино. Питание на подсветку можно подать 5 в через ограничивающий резистор.
Yarik.Yar , я бы не связывался с неизвестными "динозаврами" , решайте сами . картинки ваши не видать, хотя это уже и не важно. подозрительно у него уж очень большой контроллер по сравнению с похожими монохромными nokia.
pendulum, как же вы собрались его паять, коли спрашиваете? никак . равно как и nokia 5230 и тд. и тп. Нужны доп. микросхемы - сериализер (преобразование последовательной шины в параллельную, обычно это BGA корпус) , и сам видеоконтроллер. Для подобных экранов отвечал на предыдущей странице, http://ardui . Для нашего случая , дисплеи должны иметь, в большинстве случаев, 37 пинов и выше + широкий шлейф.
// пожелание ко всем , прежде чем задать вопрос , поищите сначала готовые ответы в яндекс , гугле, и здесь.
№21 3.0" 240x400 tft lcd 27pin дисплей Sony Ericsson CK15i WT13i 8bit R61509v ,
с регистра 00 читается ID 0xB509 это контроллер R61509V . (сначала долго выдавал ID 0x7509 , поменял провода, танцы с бубном, .. потом дисп чудом ответил понятными 0xB509 )
из его даташита по поводу setxy 0x0210 0x0211 0x0212 0x0213
Window Address Control .............................................................................................................................................81
оно и понятно что много что в читалке будет как 00, чтобы прочесть другие регистры, надо отправлять не 8бит команду , а 16бит (8+8) .
Распиновка , оказалось, не соответствовала схеме тлф. (так что не очень доверяйте схемам) , DB0 начинается не с 10 пина, а с 11го.
вот опытами определена правильная распиновка: (иначе выдает небывалые ID, ну и не робит)
GND
+VIO
GND
+Vcc(Vdd)
nc (TE) - выходит лог.0 всегда
RD
WR
RS
CS
nc ( выдает лог.0 только при ответах , типа как 9бит шина)
DB0
DB1
DB2
DB3
DB4
DB5
DB6
DB7
RESET
GND
K
K
K
K
K
A
GND
библиотекa на базе ili9327 ili9326 SPFD5420A , из 13сообщ. http://ardu + даташит , иниты: https://yadi.sk/d/rmeqMdQw3DDGGH , потребовалось еще включить инверсию цветов (тест UTFT был на белом фоне , а не на черном как правильно).
Один косяк, дисплеи во время опытов , загнулись , жаль. Изображение потихоньку заплыло и больше не появилось на обоих что покупал. На команды отвечают, но уже не кажут. Возможно: 1. это китайские хилые аналоги, или 2. не понравилось им питалово в 3.3в (может инит был настроен на питалово 3.0-2.8в , а на питании выше, внутренние преобразователи выдавали большее напряжение и скончались. высокое положительное еще вырабатывали, а отрицательное уже нет. При подаче из вне , отрицательного питалова на соответствующий кондер на шлейфе, один дисп вообще ушел в к.з. Для себя сделал вывод, что для пытов, при 10ком резисторах , лучше запитывать дисплей от 2.8в-3.0в , т.е. если вместо стаба - резистор+стабилиитрон , то повешать стабилитрон не на 3.0в , а на 2.7в. В итоге как раз внутренние схемы от 10ком резисторов окажутся под напряжением не выше 3.0-3.3в.
в регистрах 2Ah 2Bh лежало 01 67 и 02 7F , что соответствует разрешению 360x640
SetXY осуществляется через 0x2A 0x2B
На 8 бит дисп не переделать, уж очень тонки дорожки внутри шлейфа.
для подсветки начальное напряжение 19,5в , подключил через повышайку MT3608 и на всяк случай резистор 100ом.
Дисп с желтым шлейфом (непрокрашенный) :
Дисп с темно-зеленым шлейфом:
Есть еще третий дисплей vivaz u8i , он похож на первый, но глянцевый а не матовый с тыла, имеет надпись там TX08D29S 2 016 04B / 20800014B1 1231-0580 , и пошире дорожки от подсветки. но его не подключал, по подогнотому шлейфу , походу б/у подменили в магазе .
Запилил UTFT 2.81 под него , на базе такого же SetXY от ili9341 s5p (25модель) , в memorysaver.h оставил только его.
пример использовать UTFT\examples\Arduino (AVR)\UTFT_Demo_480x320 . ( добавил еще UTFT\examples\Arduino (AVR)\UTFT_Demo_640x360_R61523 , но его еще надо допиливать)
1. что не читается ID дисплея , дело действительно оказалось в
In the initial state, only User Command and Manufacturer Command Access Protect command (B0h) are
accessible. Other commands are treated as nop.
Of Manufacturer Command (B0h-FFh) defined in the table below, additional User Commands (B1h-BFh)
are accessible only when MCAP=3’h2.
т.е.
оказывается регистры в которых лежит ID и другая инфа - заблокированы, чтобы все это разблокировать , необходимо в B0h ( Manufacturer Command Access Packet ) после ресета диспа , записать b100 = 0x04
вот получилась такая читалка запрятанного id контроллера дисплея и других спрятанных регистров B1h-BFh C0h-D4h E0h-E1h ...
// читалка ID дисплеев V4.1beta для 16ти и 8ми битных дисплеев,
// разблокировка и чтение регистров B0h-FFh
// темы к изучению
// http://arduino.ru/forum/apparatnye-voprosy/arduino-i-displei-ot-sotikov-...
// http://arduino.ru/forum/apparatnye-voprosy/35-tft-lcd-krasnyi-megovskii-...
// http://arduino.ru/forum/apparatnye-voprosy/tft-35-i-arduino
// подключить 16ти битный дисплей к Arduino Mega:
// DB0-DB7 , соответственно на arduino пины 37-30 (у микроконтроллера это PORTС PС0-PС7 )
// DB8-DB15 , соответственно на arduino пины 22-29 (у микроконтроллера это PORTA PA0-PA7 )
// к примеру считывание 00D3 => 0x00 старший разряд DB15-8 дисплея , 0xD3 младший разряд DB7-0 дисплея
// подключить 8ми битный дисплей к Arduino Mega:
// DB0-DB7 , соответственно на arduino пины 37-30 (у микроконтроллера это PORTС PС0-PС7 )
// pin ArduinoMega ATmega2560 // pin Arduino MegaCore ATmega128
// DCX (RS) Data-Command
#define CD_Pin 38 // 16 // 38 // 16
// WRX Write
#define WR_Pin 39 // 36 // 39 // 36
// CSX ChipSelect
#define CS_Pin 40 // 27 // 40 // 27
// RST Reset
#define RST_Pin 41 // 26 // 41 // 26
// RD Read
#define RD_Pin 42 // 17 // 42 // 17
int i,j;
byte byteLL; // вспомогательный для сравнения в условиях , ибо основной используется
byte byteL; // portC младшие разряды
byte byteH; // portA старшие разряды
void setup()
{ // кнопка для продолжения скетча, если где надо его остановить, чтоб замерить лог. уровни
// pinMode(A12, INPUT); // кнопку удобно воткнуть в 12й пин и в рядом GND
digitalWrite(12, HIGH); // внутренний подтягив. резистор к +
pinMode(13, OUTPUT); // и светодиод на плате чтоб мигал, когда можно нажать кнопку для продолжения
Serial.begin(9600);
digitalWrite(RST_Pin, 0); // удержание в сбросе дисплея
digitalWrite(CS_Pin, 0); // активация шины данных дисплея (выбор кристалла ChipSelect)
for (i=15; i<=42;i++) { pinMode(i, OUTPUT); } // конфиг всех пинов на выход + управляющие пины //i=22; i<=42;i++
// 00 - вход , FF - выход
Serial.println(" ");
Serial.println("v4.1 read ID from BFh start... " );
Serial.println("");
Serial.println("LCD TFT DB0-DB7 -> PORTC: pin37-30(ArduinoMega atmega2560) or pin28-35(MegaCore atmega128)");
digitalWrite(RST_Pin, 1); // вывод дисплея из сброса
delay(100);
digitalWrite(RST_Pin, 0); // удержание в сбросе дисплея
delay(100);
digitalWrite(RST_Pin, 1);// вывод дисплея из сброса
delay(500);
RST_Pin_u();
Serial.println(" ");
Serial.println(" 1p 2p 3p 4p 5p 6p 7p 8parameter(byte)");
Serial.println(" ");
byteL=0x00 ;
writeCommand_read8Parameter();
RST_Pin_u();
Serial.println(" ");
byteL=0x04 ;
writeCommand_read8Parameter();
RST_Pin_u();
Serial.println(" ");
byteL=0x2A ; // 00
writeCommand_read8Parameter();
RST_Pin_u();
Serial.println(" ");
byteL=0x2B ; // 00
writeCommand_read8Parameter();
RST_Pin_u();
Serial.println(" ");
Serial.println("chek writing in 2Bh - 00 00 00 55 ");
Serial.println(" ");
//LCD_Write_COM(0x11);
delay(100);
LCD_Write_COM(0x2B);
LCD_Write_DATA(0x00);LCD_Write_DATA(0x00);LCD_Write_DATA(0x00);LCD_Write_DATA(0x55);
//LCD_Write_COM(0x2C);
Serial.println("read 2Bh");
LCD_Write_COM(0x2B);
LCD_Read_8DATA();
Serial.println(" ");
Serial.println(" ");
Serial.println("read B0h");
LCD_Write_COM(0xB0);
LCD_Read_8DATA();
Serial.println(" ");
Serial.println(" ");
Serial.println("read BFh **************************************************");
LCD_Write_COM(0xBF);
LCD_Read_8DATA();
Serial.println(" ");
Serial.println(" ");
Serial.println("write in Manufacture Command Access Protect B0h - 0x04");
Serial.println(" ");
LCD_Write_COM(0xB0);//Manufacture Command Access Protect Off
LCD_Write_DATA(0x04);
Serial.println("read BFh ************** Device Code Read ******************");
LCD_Write_COM(0xBF);
LCD_Read_8DATA();
Serial.println(" ");
Serial.println(" ");
Serial.println("read B0h-FFh");
for (j=0xb0; j<=255;j++) //255 0x4F
{
byteL=j ; //
writeCommand_read8Parameter();
// RST_Pin_u();
delay(100);
}
}
// Г Л А В Н А Я П Р О Г Р А М М А
void loop()
{
// put your main code here, to run repeatedly:
}
// П О Д П Р О Г Р А М М Ы , Ф У Н К Ц И И
// RST вверх. Сброс дисплея
int RST_Pin_u()
{
digitalWrite(WR_Pin, 0);digitalWrite(CD_Pin, 0);digitalWrite(RD_Pin, 1);
digitalWrite(RST_Pin, 0); delay(5);
digitalWrite(RST_Pin, 1); delay(100);
}
// дергаем WR вверх
int WR_Pin_u()
{
digitalWrite(WR_Pin, 0); digitalWrite(WR_Pin, 1); //digitalWrite(WR_Pin, 0);
delay(1);
}
// дергаем RD вниз и считываем данные
int RD_Pin_u()
{
//digitalWrite(RD_Pin, 0); digitalWrite(RD_Pin, 1); // digitalWrite(RD_Pin, 0);
digitalWrite(RD_Pin, 1); digitalWrite(RD_Pin, 0); // оставим в 0 , чтоб порт дисплея был на выход,
// и преобразователи уровней на шилде (если они есть) тоже были на выход
delay(1);
PORTC=0x00;
byteL=0; // обнулим на случай если не копируется а накладываются данные
byteL=PINC; // считываем с выводов PORTC младшие
PORTA=0x00;
byteH=0; // обнулим на случай если не копируется а накладываются данные
byteH=PINA; // считываем с выводов PORTA старшие
//knopel();
delay(1);
}
// конфигурация порта на вход
int port_in()
{
DDRC=0x00; // конфиг всех пинов на вход младшие
PORTC=0x00; // выключение подтягивающих резисторов
DDRA=0x00; // конфиг всех пинов на вход старшие
PORTA=0x00; // выключение подтягивающих резисторов
}
// конфигурация портов на выход
int port_out()
{
DDRC=0xFF;// конфиг всех пинов на выход младшие
PORTC=0x00; // выключение подтягивающих резисторов
DDRA=0xFF;// конфиг всех пинов на выход старшие
PORTA=0x00; // выключение подтягивающих резисторов
}
int LCD_Write_COM(byte byteLLL)
{
byteL=byteLLL;
// передадим команду
digitalWrite(RD_Pin, 1); // сначала порт дисплея в режим приема
port_out(); // конфим ардуинку на выход
// 1-будем передавать команду
digitalWrite(CD_Pin, 0); // для передачи команды в дисплей, а не данных
delay(1);
// сначала передадим старший байт=00 (00 на порт уже установил port_out(); )
//PORTC=0x00;
//WR_Pin_u(); /////////////WR_Pin_u(); ///////////////////
PORTA=0x00;
// теперь передадим младший байт
PORTC=byteLLL;
WR_Pin_u(); // дергаем WRITE вверх
delay(1);
}
int LCD_Write_DATA(byte byteLLL)
{
// передадим команду
digitalWrite(RD_Pin, 1); // сначала порт дисплея в режим приема
port_out(); // конфим ардуинку на выход
// 1-будем передавать данные
digitalWrite(CD_Pin, 1); // для передачи данных
delay(1);
// сначала передадим старший байт=00 (00 на порт уже установил port_out(); )
//PORTC=0x00;
//WR_Pin_u(); /////////////WR_Pin_u(); ///////////////////
PORTA=0x00;
// теперь передадим младший байт
PORTC=byteLLL;
WR_Pin_u(); // дергаем WRITE вверх
delay(1);
}
int LCD_Read_8DATA()
{
port_in(); // порт ардуины на вход
PORTA=0x00;
PORTC=0x00;
digitalWrite(CD_Pin, 1); // работаем теперь с данными, а не с командой
Serial.print("register " ); pn();
Serial.print(byteL, HEX );
Serial.print(" " );
byteLL=byteL; // запомним для нужд
// дергаем RD вниз и получаем данные \, к примеру прочесть до 8ми параметров , физически в памяти это просто последующие регистры,
// просто для скорости не надо задавать адрес последующего снова - это сделано во многих LCD контроллерах.
RD_Pin_u(); // дергаем RD вниз и получаем первичные неважные данные (мусор)
for (i=1; i<=8; i++)
{
RD_Pin_u(); // дергаем RD вниз и получаем данные
Serial.print(" " );
pn_H();
Serial.print(byteH, HEX);
//Serial.print(" " );
pn();
Serial.print(byteL, HEX);
}
}
int writeCommand_read8Parameter()
{
// передадим команду
digitalWrite(RD_Pin, 1); // сначала порт дисплея в режим приема
port_out(); // конфим ардуинку на выход
// 1-будем передавать команду
digitalWrite(CD_Pin, 0); // для передачи команды в дисплей, а не данных
delay(1);
// сначала передадим старший байт=00 (00 на порт уже установил port_out(); )
//PORTC=0x00;
//WR_Pin_u(); /////////////WR_Pin_u(); ///////////////////
PORTA=0x00;
// теперь передадим младший байт
PORTC=byteL;
WR_Pin_u(); // дергаем WRITE вверх
delay(1);
Serial.print("register " ); pn();
Serial.print(byteL, HEX );
Serial.print(" " );
byteLL=byteL; // запомним для нужд
// 2-будем принимать данные
port_in(); // порт ардуины на вход
delay(1);
digitalWrite(CD_Pin, 1); // работаем теперь с данными, а не с командой
delay(1);
// дергаем RD вниз и получаем данные \, к примеру прочесть до 8ми параметров , физически в памяти это просто последующие регистры,
// просто для скорости не надо задавать адрес последующего снова - это сделано во многих LCD контроллерах.
RD_Pin_u(); // дергаем RD вниз и получаем первичные неважные данные (мусор)
for (i=1; i<=8; i++)
{
RD_Pin_u(); // дергаем RD вниз и получаем данные
Serial.print(" " );
pn_H();
Serial.print(byteH, HEX);
//Serial.print(" " );
pn();
Serial.print(byteL, HEX);
}
if ( byteLL==0x00 || byteLL==0xEF || byteLL==0xBF || byteLL==0x04 || byteLL==0xD3 ) Serial.print(" ***" );
if ( byteLL==0xDA || byteLL==0xDB || byteLL==0xDC ) Serial.print(" ***" );
Serial.println("");
digitalWrite(RD_Pin, 1); // считали, переводим дисплей обратно в режим приема инфы
}
int pn() // печать дополнительный 0 , если 0 , чтоб печаталось в итоге 00
{
if (byteL<=0x0F) Serial.print("0");
}
int pn_H() // печать дополнительный 0 , если 0 , чтоб печаталось в итоге 00
{
if (byteH<=0x0F) Serial.print("0");
}
int knopel() // остановка программы чтоб замерить уровни где надо и ожидание нажатия кнопки, для продолжения программы
{
while (digitalRead(12)==1) { digitalWrite(13, 1); delay(100);digitalWrite(13, 0); delay(200) ;}
delay(500);
}
и , о чудо , теперь читается с BFh Device Code Read 01 22 15 23 что и означает R61523
чтение с диспа оригинального с зеленым шлейфом (прокрашенным)
2. дисплей показывает двойное изображение ( сжато , раздваивается )
как будто выбрана неправильная битность аппаратно-програмно или цветность програмно , но ни какие изменения не спасали , пока не разблокировал в BFh разрешение изменения регистров и изучением даташита , занес нужный параметр в C0h - Panel Driving Setting , биты SS, BGR , GS , SM , REV
выглядело так на дисплее с желтым шлейфом vivaz U8 :
методом научного тыка получился минимальный инит
//R61523 минимальный инит на НЕ оригинальном SE vivaz
LCD_Write_COM(0x11); // пробудить ( выйти из сна после ресета )
delay(100);
// B0h C0h совместно - обязательно , 0x04 закинуть в B0h - чтобы дисп разрешил изменение регистра C0h
// а регистр C0h нужно отредактировать - иначе не правильная цветопередача и перевернутое изображение
LCD_Write_COM(0xB0); //Manufacture Command Access Protect Off
LCD_Write_DATA(0x04);
// чтобы избежать двойного изображения, и повернуть, отзеркалить, цветопередача как надо.
LCD_Write_COM(0xC0);//Panel Driving Setting//Andy
LCD_Write_DATA(0x0b); // 0x03-в ините из инета , 0x0b - чтоб не было двойного изображения на НЕ оригинальных дисплеях
LCD_Write_COM(0x3a);//Set_pixel_format обязательно, иначе корявое черно-белое изображение
LCD_Write_DATA(0x05);//65k/262k//
LCD_Write_COM(0x29);//display_on
изображение получилось правильное
и
это минимальный инит, без гамма коррекции и настройки питаний преобразователей для матрицы, что не есть хорошо. Тогда в оригинальном ините , можно изменить первый параметр C0h c 0x03 на 0x0b . Но для полноты м.б. лучше заменить все различия в применяемых регистрах по даташиту из области B0h-FFh . // к примеру C0h , D0h , ...
напомню , setXY у R61523 , такой же как у ili9341, HX8340B, HX8353C, ili9327, ili9481, ili9486, ili9488, R61581, S1D19122, SSD1963*
LCD_Write_COM(0x2a);
LCD_Write_DATA(x1>>8);
LCD_Write_DATA(x1);
LCD_Write_DATA(x2>>8);
LCD_Write_DATA(x2);
LCD_Write_COM(0x2b);
LCD_Write_DATA(y1>>8);
LCD_Write_DATA(y1);
LCD_Write_DATA(y2>>8);
LCD_Write_DATA(y2);
LCD_Write_COM(0x2c);
дисплей показывает двойное изображение ( растянуто, накладывается )
собственно это происходит на ините для неориг. дисплея , на обычном ините все норм
//R61523 минимальный инит на оригинальном SE vivaz
LCD_Write_COM(0x11); // пробудить ( выйти из сна после ресета )
delay(100);
// B0h C0h совместно - обязательно , 0x04 закинуть в B0h - чтобы дисп разрешил изменение регистра C0h
// а регистр C0h нужно отредактировать - иначе не правильная цветопередача и перевернутое изображение
LCD_Write_COM(0xB0); //Manufacture Command Access Protect Off
LCD_Write_DATA(0x04);
// чтобы избежать двойного изображения, и повернуть, отзеркалить, цветопередача как надо.
LCD_Write_COM(0xC0);//Panel Driving Setting//Andy
LCD_Write_DATA(0x03); // 0x03-в ините из инета , 0x0b - чтоб не было двойного изображения на неоригинальных дисплеях
LCD_Write_COM(0x3a);//Set_pixel_format обязательно, иначе корявое черно-белое изображение
LCD_Write_DATA(0x05);//65k/262k//
LCD_Write_COM(0x29);//display_on
3. сдвиг изображения ( картинки )
пока , изменял регистры, изображение и область вывода смещалось . даташит R61523 целая кладезь этих сдвигов и областей, рекомендую к прочтению тому у кого картинка не сдвигалась по даташиту, видимо это было связано с тем , что надо было разблокировать редактирование регистров в B0h. также замечал , что безразблокировки , частично не работает регистр 36h , не работало в нем изменение BGR - RGB . (в принципе главным изменением BGR было в регистре C0h )
#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
пины 1 и 2 нужны свободными , для вывода инфы в монитор порта. (поэтому напрямую шилды с UTFT распиновкой для UNO не подойдут, они используют эти пины. надо их поднимать проводами и выводить RD)
В либе присутствует поддержка ili9325 , ili9328 , ili9341 , HX8347G , HX8357D . Если другой дисп, то принудительно включается инит от ili9341.
читалка ID v5.2 проверенa на 2.4" tft lcd ili9341 и 2.4" tft lcd 61526
1. распаковывать в Мои документы\Arduino\libraries в текущую папку. ( !!! в libraries не должно быть других adafruit и Adafruit_GFX )
2. Заливать пример Adafruit_TFTLCD\examples\_ID_ReadAllreg_v5.2_graphicstest_,
3. смотреть что она выдаст в монитор порта. Надо обращать внимание на инфу с регистров 00 04 2A 2B BF D3 DA DB DC EF
4. затемпо умолчанию скетч прогоняет тест графики , используя инит от контроллера ili9341 (как часто встречающийся на это время) , если у вас подобный контроллер или со схожим инитом, то на дисплее увидите тест графики.
Что делает читалка v5.2:
1. считывает регистры 00-FE , и отдельно кажет 00 04 2A 2B BF D3 DA DB DC EF , задержка.
2. в B0 заносит 0xFFFFFF , и считывает и B0-FE
3. в B0 заносит 0x040404, и считывает и B0-FE
4. если найден контроллер из известных либе ( ili9325 , ili9328 , ili9341 , HX8347G , HX8357D ), то она используя его , запускает график тест. Если неизвестен , то используется минимальный инит , для контроллеров с родни ili9341 , ili9488 и др. у которых setXY реализован через регистры 2A , 2B , 2C .
// для некоторых контроллеров существуют и регистры с адресами выше FF , но как правило ID у них находится по 00 адресу .
// смысл считывания регистров от 00_FF , чтобы понять правильно ли подключен дисп и он хоть что-то, хоть где-то отвечает. Т.к. после изменения B0h нельзя сбрасывать дисп, то эта читалка читает регистры без сброса перед каждым. Поэтому во многих регистрах появится хлам в отличии от предыдущих читалок. В даташите на многие контроллеры так и указано, что первому параметру не верить, он обычно содержит последний прочитанный байт предыдющего регистра. В этом есть какойто плюс ( узнаем те регистры которые могут что-то отвечать, в отличии от других которые выдают ровный 0)
переделал инит R61526 под UTFT, была инверсия цветов
для реверса яркости пикселя измелил бит REV в регистре C0h ( The grayscale is reversed by setting REV = 1 ) .если надо перевернуть картинку то первый параметр регистра C0h надо не 0x13 ,а 0x36 (в бинарном виде 0b00110110 ) .
LCD_Write_COM(0xC0);
LCD_Write_DATA(0b00110110); // 0 0 1 REV SM GS BGR SS =0x36
взятый с сайта mcufriend http://www.mcufriend.com/down/html/?80.html . можно с этого скетча переделать инит (мож по цветопередаче чем-то лучше будет) в UTFT или вкорячить в адафруитскую либу .
Всем доброго! Ух, вроде всё перечитал, а нужного ответа для себя так и не нашёл. Помидорами просьба не кидать, лучше, если пропустил, ткните носом где почитать. В наличии Arduino MEGA 2560 R3 и дисплей LMS222GF38-0 от погибшего в неравном бою Sony Ericsson )))) Хотелось бы прицепить чтобы работал.. 26 pin. Методом научного тыка выяснилось, что 8 из них GND, 1 и 2 судя по всему подсветка. Был бы бесконечно благодарен за информацию. Поиск выдаёт только продажи, ни какой инфы по железяке нет.
Tango , похоже гиблое дело подкл. этот дисп. Разъем 2х сторонний неудобно паять, распиновка не обычная, в таком случае схему бы, а на этот тлф в инете нет. А искать в сети диспы 2.2" SE в надежде встретить похожий дисп от другой модели и схему её, эт того не стоит, когда за меньшие труды вы можете достать или приобрести адекватный дисп или готовый шилд lcd tft для ардуино.
Tango , похоже гиблое дело подкл. этот дисп. Разъем 2х сторонний неудобно паять, распиновка не обычная, в таком случае схему бы, а на этот тлф в инете нет. А искать в сети диспы 2.2" SE в надежде встретить похожий дисп от другой модели и схему её, эт того не стоит, когда за меньшие труды вы можете достать или приобрести адекватный дисп или готовый шилд lcd tft для ардуино.
Я это уже понял)))) тоже перелопатил всё что можно было. Да дело то и не в монтаже, можно было бы использовать штатный разъем от телефона, но распиновки нет на этот...Ну ладно, буду ждать два дисплея с али...Скоро прийти должны. Спасибо!
Есть дисплей от китайского S5, хочу подцепить его к уно) прошу не пинать, это только первые шаги "тоько вторые сутки как ардуино попал в руки ко мне").
Покупаю на радиорынке сломанные китайские телефоны по 50-100руб. Стараюсь с дисплеями от 3,5 дюймов.
С разрешением 480х320. У них меньше вариантов контроллеров и размер большой.
Если разрешишь, выложу пару наработок.
да конечно, распиновки, фотки, откуда сняты диспы и решения на них приветствуются :))) !!! , в отличии от повторяющихся и нецелесообразных вопросов.
Интересны большие диспы.
Нормально так, за 50-100р за китайские тлф 3,5" ! мне все некогда доехать до ларьков по ремонту сотовых тож спросить большие диспы, с ними поинересней.
пока взял на таобао 3,5-4.0" 480x320 800x480 8/16 бит , цены ого конечно, за диспы высокого разрешения с конроллером имеющим свою видеопамять. По дешману в магазах только с шиной lvds, mipi ,... можно приобрести, но их к ардуине просто так не подключишь. Даже AMOLED, около 4", за 50-100руб встречал , тож "не наш" интерфейс :( . :)
// FreedomHuman, сфотайте шлейф отдельно крупным планом , чтоб дорожки было видно проследить. если у тлф нет макросъемки , то через какуюнить линзу . или фотоаппаратом
Я постараюсь помочь вам с дисплеями.. я 12 лет в ремонте мобил проработал( и трупов куча и в мастерских у друзей масса.. автра куплю клавиатуру на бук и спишемся.. молоко ноут не любит...
и блин подсветки нет.. замерил на телефоне откуда подсветка, там 19 вольт на подсветку))))
v5.2 read all register + read ID + TFT LCD test
Using Adafruit 2.8" TFT Breakout Board Pinout
TFT size is 320x240
v5.2 Reading all registers + ID tft lcd B0h=0x03(FF),=0x04 . from Slider
arduino.ru/forum/apparatnye-voprosy/arduino-i-displei-ot-sotikov-mobilnykh-telefonov
reg p1 p2 p3 p4 p5 p6 p7 p8
00 = 0 *
01 = 01 01 01 01 01 01 01 01
02 = 02 02 02 02 02 02 02 02
03 = 03 03 03 03 03 03 03 03
04 = 0 *
05 = 0D 0D 0D 0D 0D 0D 0D 0D
06 = 0
07 = 0F 0F 0F 0F 0F 0F 0F 0F
08 = 3C 3C 3C 3C 3C 3C 3C 3C
09 = 00 08 08 08 08 08 08 08
0A = 0
0B = 0
0C = 00 05 05 05 05 05 05 05
0D = 0
0E = 0
0F = 0
10 = 3C 3C 3C 3C 3C 3C 3C 3C
11 = 3D 3D 3D 3D 3D 3D 3D 3D
12 = 3E 3E 3E 3E 3E 3E 3E 3E
13 = 3F 3F 3F 3F 3F 3F 3F 3F
14 = 3C 3C 3C 3C 3C 3C 3C 3C
15 = 3D 3D 3D 3D 3D 3D 3D 3D
16 = 3E 3E 3E 3E 3E 3E 3E 3E
17 = 3F 3F 3F 3F 3F 3F 3F 3F
18 = 3C 3C 3C 3C 3C 3C 3C 3C
19 = 3D 3D 3D 3D 3D 3D 3D 3D
1A = 3E 3E 3E 3E 3E 3E 3E 3E
1B = 3F 3F 3F 3F 3F 3F 3F 3F
1C = 3C 3C 3C 3C 3C 3C 3C 3C
1D = 3D 3D 3D 3D 3D 3D 3D 3D
1E = 3E 3E 3E 3E 3E 3E 3E 3E
1F = 3F 3F 3F 3F 3F 3F 3F 3F
20 = 3C 3C 3C 3C 3C 3C 3C 3C
21 = 31 31 31 31 31 39 39 3D
22 = 32 32 32 32 32 32 32 32
23 = 33 33 33 33 33 33 33 33
24 = 3C 3C 3C 3C 3C 3C 3C 3C
25 = 3D 3D 3D 3D 3D 3D 3D 3D
26 = 3E 3E 3E 3E 3E 3E 3E 3E
27 = 3F 3F 3F 3F 3F 3F 3F 3F
28 = 3C 3C 3C 3C 3C 3C 3C 3C
29 = 3D 3D 3D 3D 3D 3D 3D 3D
2A = 3E 3E 3E 3E 3E 3E 3E 3E
2B = 3F 3F 3F 3F 3F 3F 3F 3F
2C = 3C 3C 3C 3C 3C 3C 3C 3C
2D = 00 FC 74 3C FC 74 3C 78
2E = 3E 3E 3E 3E 3E 3E 3E 3E
2F = 3F 3F 3F 3F 3F 3F 3F 3F
30 = 3C 3C 3C 3C 3C 3C 3C 3C
31 = 3D 3D 3D 3D 3D 3D 3D 3D
32 = 3E 3E 3E 3E 3E 3E 3E 3E
33 = 3F 3F 3F 3F 3F 3F 3F 3F
34 = 3C 3C 3C 3C 3C 3C 3C 3C
35 = 3D 3D 3D 3D 3D 3D 3D 3D
36 = 3E 3E 3E 3E 3E 3E 3E 3E
37 = 3F 3F 3F 3F 3F 3F 3F 3F
38 = 3C 3C 3C 3C 3C 3C 3C 3C
39 = 3D 3D 3D 3D 3D 3D 3D 3D
3A = 3E 3E 3E 3E 3E 3E 3E 3E
3B = 3F 3F 3F 3F 3F 3F 3F 3F
3C = 3C 3C 3C 3C 3C 3C 3C 3C
3D = EC 78 D0 EC 78 D0 EC 78
3E = 3E 3E 3E 3E 3E 3E 3E 3E
3F = 3F 3F 3F 3F 3F 3F 3F 3F
40 = 40 40 40 40 40 40 40 40
41 = 41 41 41 41 41 41 41 41
42 = 42 42 42 42 42 42 42 42
43 = 43 43 43 43 43 43 43 43
44 = 7C 7C 7C 7C 7C 7C 7C 7C
45 = 7D 7D 7D 7D 7D 7D 7D 7D
46 = 0
47 = 7F 7F 7F 7F 7F 7F 7F 7F
48 = 7C 7C 7C 7C 7C 7C 7C 7C
49 = 7D 7D 7D 7D 7D 7D 7D 7D
4A = 7E 7E 7E 7E 7E 7E 7E 7E
4B = 7F 7F 7F 7F 7F 7F 7F 7F
4C = 7C 7C 7C 7C 7C 7C 7C 7C
4D = 7D 7D 7D 7D 7D 7D 7D 7D
4E = 7E 7E 7E 7E 7E 7E 7E 7E
4F = 7F 7F 7F 7F 7F 7F 7F 7F
50 = 7C 7C 7C 7C 7C 7C 7C 7C
51 = 0
52 = 7E 7E 7E 7E 7E 7E 7E 7E
53 = 7F 7F 7F 7F 7F 7F 7F 7F
54 = 0
55 = 0
56 = 7E 7E 7E 7E 7E 7E 7E 7E
57 = 7F 7F 7F 7F 7F 7F 7F 7F
58 = 7C 7C 7C 7C 7C 7C 7C 7C
59 = 7D 7D 7D 7D 7D 7D 7D 7D
5A = 7E 7E 7E 7E 7E 7E 7E 7E
5B = 7F 7F 7F 7F 7F 7F 7F 7F
5C = 7C 7C 7C 7C 7C 7C 7C 7C
5D = 7D 7D 7D 7D 7D 7D 7D 7D
5E = 7E 7E 7E 7E 7E 7E 7E 7E
5F = 0
60 = 7C 7C 7C 7C 7C 7C 7C 7C
61 = 79 7D 7D 7D 7D 7D 7D 7D
62 = 72 72 72 72 72 72 7A 7A
63 = 73 73 73 73 73 73 73 73
64 = 7C 7C 7C 7C 7C 7C 7C 7C
65 = 7D 7D 7D 7D 7D 7D 7D 7D
66 = 7E 7E 7E 7E 7E 7E 7E 7E
67 = 7F 7F 7F 7F 7F 7F 7F 7F
68 = 00 C0 C0 C0 C0 C0 C0 C0
69 = 7D 7D 7D 7D 7D 7D 7D 7D
6A = 7E 7E 7E 7E 7E 7E 7E 7E
6B = 7F 7F 7F 7F 7F 7F 7F 7F
6C = 7C 7C 7C 7C 7C 7C 7C 7C
6D = 7D 7D 7D 7D 7D 7D 7D 7D
6E = 7E 7E 7E 7E 7E 7E 7E 7E
6F = 7F 7F 7F 7F 7F 7F 7F 7F
70 = 00 03 03 03 03 03 03 03
71 = 03 E2 E2 E2 E2 E2 E2 E2
72 = E2 BD BD BD BD BD BD BD
73 = BD 30 30 30 30 30 30 30
74 = 30 48 48 48 48 48 48 48
75 = 48 1E 1E 1E 1E 1E 1E 1E
76 = 1E 59 59 59 59 59 59 59
77 = 59 9C 9C 9C 9C 9C 9C 9C
78 = 9C B0 B0 B0 B0 B0 B0 B0
79 = B0 45 45 45 45 45 45 45
7A = 45 2A 2A 2A 2A 2A 2A 2A
7B = 2A 4A 4A 4A 4A 4A 4A 4A
7C = 4A 87 87 87 87 87 87 87
7D = 87 40 40 40 40 40 40 40
7E = 40 54 54 54 54 54 54 54
7F = 7F 7F 7F 7F 7F 7F 7F 7F
80 = 80 80 80 80 80 80 80 80
81 = 81 81 81 81 81 81 81 81
82 = 82 82 82 82 82 82 82 82
83 = 83 83 83 83 83 83 83 83
84 = BC BC BC BC BC BC BC BC
85 = 8D 8D 8D 8D 8D 8D 8D 8D
86 = 8E 8E 8E 8E 8E 8E 8E 8E
87 = 8F 8F 8F 8F 8F 8F 8F 8F
88 = BC BC BC BC BC BC BC BC
89 = BD BD BD BD BD BD BD BD
8A = BE BE BE BE BE BE BE BE
8B = BF BF BF BF BF BF BF BF
8C = BC BC BC BC BC BC BC BC
8D = BD BD BD BD BD BD BD BD
8E = BE BE BE BE BE BE BE BE
8F = BF BF BF BF BF BF BF BF
90 = BC BC BC BC BC BC BC BC
91 = BD BD BD BD BD BD BD BD
92 = BE BE BE BE BE BE BE BE
93 = BF BF BF BF BF BF BF BF
94 = BC BC BC BC BC BC BC BC
95 = BD BD BD BD BD BD BD BD
96 = BE BE BE BE BE BE BE BE
97 = BF BF BF BF BF BF BF BF
98 = BC BC BC BC BC BC BC BC
99 = BD BD BD BD BD BD BD BD
9A = BE BE BE BE BE BE BE BE
9B = BF BF BF BF BF BF BF BF
9C = BC BC BC BC BC BC BC BC
9D = BD BD BD BD BD BD BD BD
9E = BE BE BE BE BE BE BE BE
9F = BF BF BF BF BF BF BF BF
A0 = BC BC BC BC BC BC BC BC
A1 = B1 B1 B1 B1 B9 B9 BD BD
A2 = 0
A3 = B3 B3 B3 B3 B3 B3 B3 B3
A4 = BC BC BC BC BC BC BC BC
A5 = BD BD BD BD BD BD BD BD
A6 = BE BE BE BE BE BE BE BE
A7 = BF BF BF BF BF BF BF BF
A8 = 0
A9 = 00 CF CF CF CF CF CF CF
AA = BE BE BE BE BE BE BE BE
AB = BF BF BF BF BF BF BF BF
AC = BC BC BC BC BC BC BC BC
AD = BD BD BD BD BD BD BD BD
AE = BE BE BE BE BE BE BE BE
AF = 00 CF CF CF CF CF CF CF
B0 = BC BC BC BC BC BC BC BC
B1 = BD BD BD BD BD BD BD BD
B2 = BE BE BE BE BE BE BE BE
B3 = BF BF BF BF BF BF BF BF
B4 = BC BC BC BC BC BC BC BC
B5 = BD BD BD BD BD BD BD BD
B6 = BE BE BE BE BE BE BE BE
B7 = BF BF BF BF BF BF BF BF
B8 = BC BC BC BC BC BC BC BC
B9 = BD BD BD BD BD BD BD BD
BA = BE BE BE BE BE BE BE BE
BB = BF BF BF BF BF BF BF BF
BC = BC BC BC BC BC BC BC BC
BD = BD BD BD BD BD BD BD BD
BE = BE BE BE BE BE BE BE BE
BF = BF BF BF BF BF BF BF BF *****
C0 = C0 C0 C0 C0 C0 C0 C0 C0
C1 = C1 C1 C1 C1 C1 C1 C1 C1
C2 = C2 C2 C2 C2 C2 C2 C2 C2
C3 = C3 C3 C3 C3 C3 C3 C3 C3
C4 = FC FC FC FC FC FC FC FC
C5 = FD FD FD FD FD FD FD FD
C6 = FE FE FE FE FE FE FE FE
C7 = FF FF FF FF FF FF FF FF
C8 = FC FC FC FC FC FC FC FC
C9 = FD FD FD FD FD FD FD FD
CA = FE FE FE FE FE FE FE FE
CB = FF FF FF FF FF FF FF FF
CC = FC FC FC FC FC FC FC FC
CD = FD FD FD FD FD FD FD FD
CE = FE FE FE FE FE FE FE FE
CF = FF FF FF FF FF FF FF FF
D0 = FC FC FC FC FC FC FC FC
D1 = FD FD FD FD FD FD FD FD
D2 = FE FE FE FE FE FE FE FE
D3 = FF FF FF FF FF FF FF FF *****
D4 = FC FC FC FC FC FC FC FC
D5 = FD FD FD FD FD FD FD FD
D6 = FE FE FE FE FE FE FE FE
D7 = FF FF FF FF FF FF FF FF
D8 = FC FC FC FC FC FC FC FC
D9 = 0
DA = FE FE FE FE FE FE FE FE *****
DB = 00 80 80 80 80 80 80 80 *****
DC = 0 *
DD = FD FD FD FD FD FD FD FD
DE = FE FE FE FE FE FE FE FE
DF = FF FF FF FF FF FF FF FF
E0 = FC FC FC FC FC FC FC FC
E1 = F1 F9 F9 FD FD FD FD FD
E2 = F2 F2 F2 F2 F2 FA FA FA
E3 = F3 F3 F3 F3 F3 F3 F3 F3
E4 = FC FC FC FC FC FC FC FC
E5 = FD FD FD FD FD FD FD FD
E6 = FE FE FE FE FE FE FE FE
E7 = FF FF FF FF FF FF FF FF
E8 = FC FC FC FC FC FC FC FC
E9 = FD FD FD FD FD FD FD FD
EA = FE FE FE FE FE FE FE FE
EB = FF FF FF FF FF FF FF FF
EC = FC FC FC FC FC FC FC FC
ED = FD FD FD FD FD FD FD FD
EE = FE FE FE FE FE FE FE FE
EF = FF FF FF FF FF FF FF FF *****
F0 = FC FC FC FC FC FC FC FC
F1 = FD FD FD FD FD FD FD FD
F2 = FE FE FE FE FE FE FE FE
F3 = FF FF FF FF FF FF FF FF
F4 = FC FC FC FC FC FC FC FC
F5 = FD FD FD FD FD FD FD FD
F6 = FE FE FE FE FE FE FE FE
F7 = FF FF FF FF FF FF FF FF
F8 = FC FC FC FC FC FC FC FC
F9 = FD FD FD FD FD FD FD FD
FA = FE FE FE FE FE FE FE FE
FB = FF FF FF FF FF FF FF FF
FC = FC FC FC FC FC FC FC FC
FD = FD FD FD FD FD FD FD FD
FE = FE FE FE FE FE FE FE FE
00 = 0 *
04 = 0 *
B0 = BC BC BC BC BC BC BC BC
BF = BF BF BF BF BF BF BF BF *****
D3 = FF FF FF FF FF FF FF FF *****
DA = FE FE FE FE FE FE FE FE *****
DB = 00 80 80 80 80 80 80 80 *****
DC = 0 *
EF = FF FF FF FF FF FF FF FF *****
. . . . . . .
writing in Manufacturer Command Access Protect (B0h) <- 0xFFFFFF
B0 = BC BC BC BC BC BC BC BC
Device Code Read (BFh)
BF = BF BF BF BF BF BF BF BF *****
. . .
reg p1 p2 p3 p4 p5 p6 p7 p8
B0 = BC BC BC BC BC BC BC BC
B1 = BD BD BD BD BD BD BD BD
B2 = BE BE BE BE BE BE BE BE
B3 = BF BF BF BF BF BF BF BF
B4 = BC BC BC BC BC BC BC BC
B5 = BD BD BD BD BD BD BD BD
B6 = BE BE BE BE BE BE BE BE
B7 = BF BF BF BF BF BF BF BF
B8 = BC BC BC BC BC BC BC BC
B9 = BD BD BD BD BD BD BD BD
BA = BE BE BE BE BE BE BE BE
BB = BF BF BF BF BF BF BF BF
BC = BC BC BC BC BC BC BC BC
BD = BD BD BD BD BD BD BD BD
BE = BE BE BE BE BE BE BE BE
BF = BF BF BF BF BF BF BF BF *****
C0 = C0 C0 C0 C0 C0 C0 C0 C0
C1 = C1 C1 C1 C1 C1 C1 C1 C1
C2 = C2 C2 C2 C2 C2 C2 C2 C2
C3 = C3 C3 C3 C3 C3 C3 C3 C3
C4 = FC FC FC FC FC FC FC FC
C5 = FD FD FD FD FD FD FD FD
C6 = FE FE FE FE FE FE FE FE
C7 = CF DF CF CF DF DF FF FF
C8 = FC FC FC FC FC FC FC FC
C9 = FD FD FD FD FD FD FD FD
CA = FE FE FE FE FE FE FE FE
CB = FF FF FF FF FF FF FF FF
CC = FC FC FC FC FC FC FC FC
CD = FD FD FD FD FD FD FD FD
CE = FE FE FE FE FE FE FE FE
CF = FF FF FF FF FF FF FF FF
D0 = FC FC FC FC FC FC FC FC
D1 = FD FD FD FD FD FD FD FD
D2 = FE FE FE FE FE FE FE FE
D3 = FF FF FF FF FF FF FF FF *****
D4 = FC FC FC FC FC FC FC FC
D5 = FD FD FD FD FD FD FD FD
D6 = FE FE FE FE FE FE FE FE
D7 = FF FF FF FF FF FF FF FF
D8 = FC FC FC FC FC FC FC FC
D9 = 0
DA = FE FE FE FE FE FE FE FE *****
DB = 00 80 80 80 80 80 80 80 *****
DC = 0 *
DD = FD FD FD FD FD FD FD FD
DE = FE FE FE FE FE FE FE FE
DF = FF FF FF FF FF FF FF FF
E0 = FC FC FC FC FC FC FC FC
E1 = FD FD FD FD FD FD FD FD
E2 = F2 F2 F2 F2 F2 FA FA FE
E3 = F3 F3 F3 F3 F3 F3 F3 F3
E4 = FC FC FC FC FC FC FC FC
E5 = FD FD FD FD FD FD FD FD
E6 = FE FE FE FE FE FE FE FE
E7 = FF FF FF FF FF FF FF FF
E8 = FC FC FC FC FC FC FC FC
E9 = FD FD FD FD FD FD FD FD
EA = FE FE FE FE FE FE FE FE
EB = FF FF FF FF FF FF FF FF
EC = FC FC FC FC FC FC FC FC
ED = FD FD FD FD FD FD FD FD
EE = FE FE FE FE FE FE FE FE
EF = FF FF FF FF FF FF FF FF *****
F0 = FC FC FC FC FC FC FC FC
F1 = FD FD FD FD FD FD FD FD
F2 = FE FE FE FE FE FE FE FE
F3 = FF FF FF FF FF FF FF FF
F4 = FC FC FC FC FC FC FC FC
F5 = FD FD FD FD FD FD FD FD
F6 = FE FE FE FE FE FE FE FE
F7 = FF FF FF FF FF FF FF FF
F8 = FC FC FC FC FC FC FC FC
F9 = FD FD FD FD FD FD FD FD
FA = FE FE FE FE FE FE FE FE
FB = FF FF FF FF FF FF FF FF
FC = FC FC FC FC FC FC FC FC
FD = FD FD FD FD FD FD FD FD
FE = FE FE FE FE FE FE FE FE
writing in Manufacturer Command Access Protect (B0h) <- 0x040404
B0 = BC BC BC BC BC BC BC BC
Device Code Read (BFh)
BF = BF BF BF BF BF BF BF BF *****
. . .
reg p1 p2 p3 p4 p5 p6 p7 p8
B0 = BC BC BC BC BC BC BC BC
B1 = BD BD BD BD BD BD BD BD
B2 = BE BE BE BE BE BE BE BE
B3 = BF BF BF BF BF BF BF BF
B4 = BC BC BC BC BC BC BC BC
B5 = BD BD BD BD BD BD BD BD
B6 = BE BE BE BE BE BE BE BE
B7 = BF BF BF BF BF BF BF BF
B8 = BC BC BC BC BC BC BC BC
B9 = BD BD BD BD BD BD BD BD
BA = BE BE BE BE BE BE BE BE
BB = BF BF BF BF BF BF BF BF
BC = BC BC BC BC BC BC BC BC
BD = BD BD BD BD BD BD BD BD
BE = BE BE BE BE BE BE BE BE
BF = BF BF BF BF BF BF BF BF *****
C0 = C0 C0 C0 C0 C0 C0 C0 C0
C1 = C1 C1 C1 C1 C1 C1 C1 C1
C2 = C2 C2 C2 C2 C2 C2 C2 C2
C3 = C3 C3 C3 C3 C3 C3 C3 C3
C4 = FC FC FC FC FC FC FC FC
C5 = FD FD FD FD FD FD FD FD
C6 = FE FE FE FE FE FE FE FE
C7 = FF FF FF FF FF FF FF FF
C8 = FC FC FC FC FC FC FC FC
C9 = FD FD FD FD FD FD FD FD
CA = FE FE FE FE FE FE FE FE
CB = FF FF FF FF FF FF FF FF
CC = FC FC FC FC FC FC FC FC
CD = FD FD FD FD FD FD FD FD
CE = FE FE FE FE FE FE FE FE
CF = FF FF FF FF FF FF FF FF
D0 = FC FC FC FC FC FC FC FC
D1 = FD FD FD FD FD FD FD FD
D2 = FE FE FE FE FE FE FE FE
D3 = FF FF FF FF FF FF FF FF *****
D4 = FC FC FC FC FC FC FC FC
D5 = FD FD FD FD FD FD FD FD
D6 = FE FE FE FE FE FE FE FE
D7 = FF FF FF FF FF FF FF FF
D8 = FC FC FC FC FC FC FC FC
D9 = 0
DA = FE FE FE FE FE FE FE FE *****
DB = 00 80 80 80 80 80 80 80 *****
DC = 0 *
DD = FD FD FD FD FD FD FD FD
DE = FE FE FE FE FE FE FE FE
DF = FF FF FF FF FF FF FF FF
E0 = FC FC FC FC FC FC FC FC
E1 = FD FD FD FD FD FD FD FD
E2 = F2 F2 F2 FA FA FE FE FE
E3 = F3 F3 F3 F3 F3 F3 F3 F3
E4 = FC FC FC FC FC FC FC FC
E5 = FD FD FD FD FD FD FD FD
E6 = FE FE FE FE FE FE FE FE
E7 = FF FF FF FF FF FF FF FF
E8 = FC FC FC FC FC FC FC FC
E9 = FD FD FD FD FD FD FD FD
EA = FE FE FE FE FE FE FE FE
EB = FF FF FF FF FF FF FF FF
EC = FC FC FC FC FC FC FC FC
ED = FD FD FD FD FD FD FD FD
EE = FE FE FE FE FE FE FE FE
EF = FF FF FF FF FF FF FF FF *****
F0 = FC FC FC FC FC FC FC FC
F1 = FD FD FD FD FD FD FD FD
F2 = FE FE FE FE FE FE FE FE
F3 = FF FF FF FF FF FF FF FF
F4 = FC FC FC FC FC FC FC FC
F5 = FD FD FD FD FD FD FD FD
F6 = FE FE FE FE FE FE FE FE
F7 = FF FF FF FF FF FF FF FF
F8 = FC FC FC FC FC FC FC FC
F9 = FD FD FD FD FD FD FD FD
FA = FE FE FE FE FE FE FE FE
FB = FF FF FF FF FF FF FF FF
FC = FC FC FC FC FC FC FC FC
FD = FD FD FD FD FD FD FD FD
FE = FE FE FE FE FE FE FE FE
Unknown LCD driver chip: 0
***use minimal init as driver ili9341 ili9488 *** ->
Benchmark Time (microseconds)
Screen fill 1379552
Text 344032
Lines 3390180
Horiz/Vert Lines 144664
Rectangles (outline) 104260
Rectangles (filled) 3267448
Circles (filled) 1211480
Circles (outline) 1475112
Triangles (outline) 1075592
Triangles (filled) 1721632
Rounded rects (outline) 506432
Rounded rects (filled) 3795228
Done!
вот еще лог.
v5.2 read all register + read ID + TFT LCD test
Using Adafruit 2.8" TFT Breakout Board Pinout
TFT size is 320x240
v5.2 Reading all registers + ID tft lcd B0h=0x03(FF),=0x04 . from Slider
arduino.ru/forum/apparatnye-voprosy/arduino-i-displei-ot-sotikov-mobilnykh-telefonov
reg p1 p2 p3 p4 p5 p6 p7 p8
00 = 0 *
01 = 01 01 01 01 01 01 01 01
02 = 02 02 02 02 02 02 02 02
03 = 03 03 03 03 03 03 03 03
04 = 1C 3C 3C 3C 3C 3C 3C 3C *****
05 = 1D 1D 1D 1D 1D 1D 1D 1D
06 = 1E 1E 1E 1E 1E 1E 1E 1E
07 = 1F 1F 1F 1F 1F 1F 1F 1F
08 = 3C 3C 3C 3C 3C 3C 3C 3C
09 = 1D 1D 1D 1D 1D 1D 1D 1D
0A = 0E 0E 1E 1E 1E 1E 1E 1E
0B = 0F 0F 0F 0F 0F 0F 0F 0F
0C = 0C 0C 0C 0C 0C 0C 0C 0C
0D = 0D 0D 0D 0D 0D 0D 0D 0D
0E = 0E 0E 0E 0E 0E 0E 0E 0E
0F = 0F 0F 0F 0F 0F 0F 0F 0F
10 = 3C 3C 3C 3C 3C 3C 3C 3C
11 = 3D 3D 3D 3D 3D 3D 3D 3D
12 = 3E 3E 3E 3E 3E 3E 3E 3E
13 = 3F 3F 3F 3F 3F 3F 3F 3F
14 = 3C 3C 3C 3C 3C 3C 3C 3C
15 = 3D 3D 3D 3D 3D 3D 3D 3D
16 = 3E 3E 3E 3E 3E 3E 3E 3E
17 = 3F 3F 3F 3F 3F 3F 3F 3F
18 = 3C 3C 3C 3C 3C 3C 3C 3C
19 = 3D 3D 3D 3D 3D 3D 3D 3D
1A = 3E 3E 3E 3E 3E 3E 3E 3E
1B = 3F 3F 3F 3F 3F 3F 3F 3F
1C = 3C 3C 3C 3C 3C 3C 3C 3C
1D = 3D 3D 3D 3D 3D 3D 3D 3D
1E = 3E 3E 3E 3E 3E 3E 3E 3E
1F = 3F 3F 3F 3F 3F 3F 3F 3F
20 = 7C 7C 7C 7C 7C 7C 7C 7C
21 = 21 21 21 21 21 21 21 21
22 = 22 22 22 22 22 22 22 22
23 = 23 23 23 23 23 23 23 23
24 = 3C 3C 3C 3C 3C 3C 3C 3C
25 = 3D 3D 3D 3D 3D 3D 3D 3D
26 = 3E 3E 3E 3E 3E 3E 3E 3E
27 = 3F 3F 3F 3F 3F 3F 3F 3F
28 = 3C 3C 3C 3C 3C 3C 3C 3C
29 = 3D 3D 3D 3D 3D 3D 3D 3D
2A = 3E 3E 3E 3E 3E 3E 3E 3E
2B = 3F 3F 3F 3F 3F 3F 3F 3F
2C = 3C 3C 3C 3C 3C 3C 3C 3C
2D = 3D 3D 3D 3D 3D 3D 3D 3D
2E = 3E 3E 3E 3E 3E 3E 3E 3E
2F = 3F 3F 3F 3F 3F 3F 3F 3F
30 = 3C 3C 3C 3C 3C 3C 3C 3C
31 = 3D 3D 3D 3D 3D 3D 3D 3D
32 = 3E 3E 3E 3E 3E 3E 3E 3E
33 = 3F 3F 3F 3F 3F 3F 3F 3F
34 = 3C 3C 3C 3C 3C 3C 3C 3C
35 = 3D 3D 3D 3D 3D 3D 3D 3D
36 = 3E 3E 3E 3E 3E 3E 3E 3E
37 = 3F 3F 3F 3F 3F 3F 3F 3F
38 = 3C 3C 3C 3C 3C 3C 3C 3C
39 = 3D 3D 3D 3D 3D 3D 3D 3D
3A = 3E 3E 3E 3E 3E 3E 3E 3E
3B = 3F 3F 3F 3F 3F 3F 3F 3F
3C = 3C 3C 3C 3C 3C 3C 3C 3C
3D = 00 EC 64 1C C4 C4 00 CC
3E = 3E 3E 3E 3E 3E 3E 3E 3E
3F = 3F 3F 3F 3F 3F 3F 3F 3F
40 = E0 E0 E0 E0 E0 E0 E0 E0
41 = 41 41 41 C1 C1 C1 C1 C1
42 = 42 42 42 42 C2 C2 C2 C2
43 = 43 43 43 43 43 43 C3 C3
44 = 7C 7C 7C 7C 7C 7C FC FC
45 = 7D 7D 7D 7D 7D 7D FD FD
46 = 7E 7E 7E 7E 7E 7E 7E FE
47 = 7F 7F 7F 7F 7F 7F 7F 7F
48 = 7C 7C 7C 7C 7C 7C 7C 7C
49 = 7D 7D 7D 7D 7D 7D 7D 7D
4A = 7E 7E 7E 7E 7E 7E 7E 7E
4B = 7F 7F 7F 7F 7F 7F 7F 7F
4C = 7C 7C 7C 7C 7C 7C 7C 7C
4D = 7D 7D 7D 7D 7D 7D 7D 7D
4E = 7E 7E 7E 7E 7E 7E 7E 7E
4F = 7F 7F 7F 7F 7F 7F 7F 7F
50 = 7C 7C 7C 7C 7C 7C 7C 7C
51 = 7D 7D 7D 7D 7D 7D 7D 7D
52 = 7E 7E 7E 7E 7E 7E 7E 7E
53 = 7F 7F 7F 7F 7F 7F 7F 7F
54 = 0
55 = 7D 7D 7D 7D 7D 7D 7D 7D
56 = 7E 7E 7E 7E 7E 7E 7E 7E
57 = 7F 7F 7F 7F 7F 7F 7F 7F
58 = 7C 7C 7C 7C 7C 7C 7C 7C
59 = 7D 7D 7D 7D 7D 7D 7D 7D
5A = 7E 7E 7E 7E 7E 7E 7E 7E
5B = 7F 7F 7F 7F 7F 7F 7F 7F
5C = 7C 7C 7C 7C 7C 7C 7C 7C
5D = 7D 7D 7D 7D 7D 7D 7D 7D
5E = 7E 7E 7E 7E 7E 7E 7E 7E
5F = 0
60 = 7C 7C 7C 7C 7C 7C 7C 7C
61 = 61 61 61 61 61 61 61 61
62 = 62 62 62 62 62 62 62 62
63 = 63 63 63 63 63 63 63 63
64 = 7C 7C 7C 7C 7C 7C 7C 7C
65 = 7D 7D 7D 7D 7D 7D 7D 7D
66 = 7E 7E 7E 7E 7E 7E 7E 7E
67 = 7F 7F 7F 7F 7F 7F 7F 7F
68 = 0
69 = 7D 7D 7D 7D 7D 7D 7D 7D
6A = 7E 7E 7E 7E 7E 7E 7E 7E
6B = 7F 7F 7F 7F 7F 7F 7F 7F
6C = 7C 7C 7C 7C 7C 7C 7C 7C
6D = 7D 7D 7D 7D 7D 7D 7D 7D
6E = 7E 7E 7E 7E 7E 7E 7E 7E
6F = 7F 7F 7F 7F 7F 7F 7F 7F
70 = 00 8F 8F 8F 8F 8F 8F 8F
71 = 7D 7D 7D 7D 7D 7D 7D 7D
72 = 00 BF BF BF BF BF BF BF
73 = BF A7 A7 A7 A7 A7 A7 A7
74 = A7 4A 4A 4A 4A 4A 4A 4A
75 = 4A DF DF DF DF DF DF DF
76 = DF 6F 6F 6F 6F 6F 6F 6F
77 = 6F F2 F2 F2 F2 F2 F2 F2
78 = F2 27 27 27 27 27 27 27
79 = 27 49 49 49 49 49 49 49
7A = 49 33 33 33 33 33 33 33
7B = 33 DE DE DE DE DE DE DE
7C = DE C1 C1 C1 C1 C1 C1 C1
7D = C1 31 31 31 31 31 31 31
7E = 31 71 71 71 71 71 71 71
7F = 7F 7F 7F 7F 7F 7F 7F 7F
80 = 80 80 80 80 80 80 80 80
81 = 81 81 81 81 81 81 81 81
82 = 82 82 82 82 82 82 82 82
83 = 83 83 83 83 83 83 83 83
84 = FC FC FC FC FC FC FC FC
85 = FD FD FD FD FD FD FD FD
86 = FE FE FE FE FE FE FE FE
87 = FF FF FF FF FF FF FF FF
88 = FC FC FC FC FC FC FC FC
89 = FD FD FD FD FD FD FD FD
8A = FE FE FE FE FE FE FE FE
8B = FF FF FF FF FF FF FF FF
8C = FC FC FC FC FC FC FC FC
8D = FD FD FD FD FD FD FD FD
8E = FE FE FE FE FE FE FE FE
8F = FF FF FF FF FF FF FF FF
90 = FC FC FC FC FC FC FC FC
91 = FD FD FD FD FD FD FD FD
92 = FE FE FE FE FE FE FE FE
93 = FF FF FF FF FF FF FF FF
94 = FC FC FC FC FC FC FC FC
95 = FD FD FD FD FD FD FD FD
96 = FE FE FE FE FE FE FE FE
97 = FF FF FF FF FF FF FF FF
98 = FC FC FC FC FC FC FC FC
99 = FD FD FD FD FD FD FD FD
9A = FE FE FE FE FE FE FE FE
9B = FF FF FF FF FF FF FF FF
9C = FC FC FC FC FC FC FC FC
9D = FD FD FD FD FD FD FD FD
9E = FE FE FE FE FE FE FE FE
9F = FF FF FF FF FF FF FF FF
A0 = FC FC FC FC FC FC FC FC
A1 = E1 E1 E1 E1 E1 E1 E1 E1
A2 = E2 E2 E2 E2 E2 E2 E2 E2
A3 = E3 E3 E3 E3 E3 E3 E3 E3
A4 = FC FC FC FC FC FC FC FC
A5 = FD FD FD FD FD FD FD FD
A6 = FE FE FE FE FE FE FE FE
A7 = FF FF FF FF FF FF FF FF
A8 = 0
A9 = FD FD FD FD FD FD FD FD
AA = FE FE FE FE FE FE FE FE
AB = FF FF FF FF FF FF FF FF
AC = FC FC FC FC FC FC FC FC
AD = FD FD FD FD FD FD FD FD
AE = FE FE FE FE FE FE FE FE
AF = 0
B0 = FC FC FC FC FC FC FC FC
B1 = FD FD FD FD FD FD FD FD
B2 = FE FE FE FE FE FE FE FE
B3 = FF FF FF FF FF FF FF FF
B4 = FC FC FC FC FC FC FC FC
B5 = FD FD FD FD FD FD FD FD
B6 = FE FE FE FE FE FE FE FE
B7 = FF FF FF FF FF FF FF FF
B8 = FC FC FC FC FC FC FC FC
B9 = FD FD FD FD FD FD FD FD
BA = FE FE FE FE FE FE FE FE
BB = FF FF FF FF FF FF FF FF
BC = FC FC FC FC FC FC FC FC
BD = FD FD FD FD FD FD FD FD
BE = FE FE FE FE FE FE FE FE
BF = FF FF FF FF FF FF FF FF *****
C0 = E0 E0 E0 E0 E0 E0 E0 E0
C1 = C1 C1 C1 C1 C1 C1 C1 C1
C2 = C2 C2 C2 C2 C2 C2 C2 C2
C3 = C3 C3 C3 C3 C3 C3 C3 C3
C4 = FC FC FC FC FC FC FC FC
C5 = FD FD FD FD FD FD FD FD
C6 = FE FE FE FE FE FE FE FE
C7 = FF FF FF FF FF FF FF FF
C8 = FC FC FC FC FC FC FC FC
C9 = FD FD FD FD FD FD FD FD
CA = FE FE FE FE FE FE FE FE
CB = FF FF FF FF FF FF FF FF
CC = FC FC FC FC FC FC FC FC
CD = FD FD FD FD FD FD FD FD
CE = FE FE FE FE FE FE FE FE
CF = FF FF FF FF FF FF FF FF
D0 = FC FC FC FC FC FC FC FC
D1 = FD FD FD FD FD FD FD FD
D2 = FE FE FE FE FE FE FE FE
D3 = FF FF FF FF FF FF FF FF *****
D4 = FC FC FC FC FC FC FC FC
D5 = FD FD FD FD FD FD FD FD
D6 = FE FE FE FE FE FE FE FE
D7 = FF FF FF FF FF FF FF FF
D8 = FC FC FC FC FC FC FC FC
D9 = 0
DA = FE FE FE FE FE FE FE FE *****
DB = 00 80 80 80 80 80 80 80 *****
DC = 0 *
DD = FD FD FD FD FD FD FD FD
DE = FE FE FE FE FE FE FE FE
DF = FF FF FF FF FF FF FF FF
E0 = FC FC FC FC FC FC FC FC
E1 = E1 E1 E1 E1 E1 E1 E1 E1
E2 = E2 E2 E2 E2 E2 E2 E2 E2
E3 = E3 E3 E3 E3 E3 E3 E3 E3
E4 = FC FC FC FC FC FC FC FC
E5 = FD FD FD FD FD FD FD FD
E6 = FE FE FE FE FE FE FE FE
E7 = FF FF FF FF FF FF FF FF
E8 = FC FC FC FC FC FC FC FC
E9 = FD FD FD FD FD FD FD FD
EA = FE FE FE FE FE FE FE FE
EB = FF FF FF FF FF FF FF FF
EC = FC FC FC FC FC FC FC FC
ED = FD FD FD FD FD FD FD FD
EE = FE FE FE FE FE FE FE FE
EF = FF FF FF FF FF FF FF FF *****
F0 = FC FC FC FC FC FC FC FC
F1 = FD FD FD FD FD FD FD FD
F2 = FE FE FE FE FE FE FE FE
F3 = FF FF FF FF FF FF FF FF
F4 = FC FC FC FC FC FC FC FC
F5 = FD FD FD FD FD FD FD FD
F6 = FE FE FE FE FE FE FE FE
F7 = FF FF FF FF FF FF FF FF
F8 = FC FC FC FC FC FC FC FC
F9 = FD FD FD FD FD FD FD FD
FA = FE FE FE FE FE FE FE FE
FB = FF FF FF FF FF FF FF FF
FC = FC FC FC FC FC FC FC FC
FD = FD FD FD FD FD FD FD FD
FE = FE FE FE FE FE FE FE FE
00 = 0 *
04 = 1C 3C 3C 3C 3C 3C 3C 3C *****
B0 = FC FC FC FC FC FC FC FC
BF = FF FF FF FF FF FF FF FF *****
D3 = FF FF FF FF FF FF FF FF *****
DA = FE FE FE FE FE FE FE FE *****
DB = 00 80 80 80 80 80 80 80 *****
DC = 0 *
EF = FF FF FF FF FF FF FF FF *****
. . . . . . .
writing in Manufacturer Command Access Protect (B0h) <- 0xFFFFFF
B0 = FC FC FC FC FC FC FC FC
Device Code Read (BFh)
BF = FF FF FF FF FF FF FF FF *****
. . .
reg p1 p2 p3 p4 p5 p6 p7 p8
B0 = FC FC FC FC FC FC FC FC
B1 = FD FD FD FD FD FD FD FD
B2 = FE FE FE FE FE FE FE FE
B3 = FF FF FF FF FF FF FF FF
B4 = FC FC FC FC FC FC FC FC
B5 = FD FD FD FD FD FD FD FD
B6 = FE FE FE FE FE FE FE FE
B7 = FF FF FF FF FF FF FF FF
B8 = FC FC FC FC FC FC FC FC
B9 = FD FD FD FD FD FD FD FD
BA = FE FE FE FE FE FE FE FE
BB = FF FF FF FF FF FF FF FF
BC = FC FC FC FC FC FC FC FC
BD = FD FD FD FD FD FD FD FD
BE = FE FE FE FE FE FE FE FE
BF = FF FF FF FF FF FF FF FF *****
C0 = E0 E0 E0 E0 E0 E0 E0 E0
C1 = C1 C1 C1 C1 C1 C1 C1 C1
C2 = C2 C2 C2 C2 C2 C2 C2 C2
C3 = C3 C3 C3 C3 C3 C3 C3 C3
C4 = FC FC FC FC FC FC FC FC
C5 = FD FD FD FD FD FD FD FD
C6 = FE FE FE FE FE FE FE FE
C7 = FF FF FF FF FF FF FF FF
C8 = FC FC FC FC FC FC FC FC
C9 = FD FD FD FD FD FD FD FD
CA = FE FE FE FE FE FE FE FE
CB = FF FF FF FF FF FF FF FF
CC = FC FC FC FC FC FC FC FC
CD = FD FD FD FD FD FD FD FD
CE = FE FE FE FE FE FE FE FE
CF = FF FF FF FF FF FF FF FF
D0 = FC FC FC FC FC FC FC FC
D1 = FD FD FD FD FD FD FD FD
D2 = FE FE FE FE FE FE FE FE
D3 = FF FF FF FF FF FF FF FF *****
D4 = FC FC FC FC FC FC FC FC
D5 = FD FD FD FD FD FD FD FD
D6 = FE FE FE FE FE FE FE FE
D7 = FF FF FF FF FF FF FF FF
D8 = FC FC FC FC FC FC FC FC
D9 = 0
DA = FE FE FE FE FE FE FE FE *****
DB = 00 80 80 80 80 80 80 80 *****
DC = 0 *
DD = FD FD FD FD FD FD FD FD
DE = FE FE FE FE FE FE FE FE
DF = FF FF FF FF FF FF FF FF
E0 = FC FC FC FC FC FC FC FC
E1 = E1 E1 E1 E1 E1 E1 E1 E1
E2 = E2 E2 E2 E2 E2 E2 E2 E2
E3 = E3 E3 E3 E3 E3 E3 E3 E3
E4 = FC FC FC FC FC FC FC FC
E5 = FD FD FD FD FD FD FD FD
E6 = FE FE FE FE FE FE FE FE
E7 = FF FF FF FF FF FF FF FF
E8 = FC FC FC FC FC FC FC FC
E9 = FD FD FD FD FD FD FD FD
EA = FE FE FE FE FE FE FE FE
EB = FF FF FF FF FF FF FF FF
EC = FC FC FC FC FC FC FC FC
ED = FD FD FD FD FD FD FD FD
EE = FE FE FE FE FE FE FE FE
EF = FF FF FF FF FF FF FF FF *****
F0 = FC FC FC FC FC FC FC FC
F1 = FD FD FD FD FD FD FD FD
F2 = FE FE FE FE FE FE FE FE
F3 = FF FF FF FF FF FF FF FF
F4 = FC FC FC FC FC FC FC FC
F5 = FD FD FD FD FD FD FD FD
F6 = FE FE FE FE FE FE FE FE
F7 = FF FF FF FF FF FF FF FF
F8 = FC FC FC FC FC FC FC FC
F9 = FD FD FD FD FD FD FD FD
FA = FE FE FE FE FE FE FE FE
FB = FF FF FF FF FF FF FF FF
FC = FC FC FC FC FC FC FC FC
FD = FD FD FD FD FD FD FD FD
FE = FE FE FE FE FE FE FE FE
writing in Manufacturer Command Access Protect (B0h) <- 0x040404
B0 = FC FC FC FC FC FC FC FC
Device Code Read (BFh)
BF = FF FF FF FF FF FF FF FF *****
. . .
reg p1 p2 p3 p4 p5 p6 p7 p8
B0 = FC FC FC FC FC FC FC FC
B1 = FD FD FD FD FD FD FD FD
B2 = FE FE FE FE FE FE FE FE
B3 = FF FF FF FF FF FF FF FF
B4 = FC FC FC FC FC FC FC FC
B5 = FD FD FD FD FD FD FD FD
B6 = FE FE FE FE FE FE FE FE
B7 = FF FF FF FF FF FF FF FF
B8 = FC FC FC FC FC FC FC FC
B9 = FD FD FD FD FD FD FD FD
BA = FE FE FE FE FE FE FE FE
BB = FF FF FF FF FF FF FF FF
BC = FC FC FC FC FC FC FC FC
BD = FD FD FD FD FD FD FD FD
BE = FE FE FE FE FE FE FE FE
BF = FF FF FF FF FF FF FF FF *****
C0 = E0 E0 E0 E0 E0 E0 E0 E0
C1 = C1 C1 C1 C1 C1 C1 C1 C1
C2 = C2 C2 C2 C2 C2 C2 C2 C2
C3 = C3 C3 C3 C3 C3 C3 C3 C3
C4 = FC FC FC FC FC FC FC FC
C5 = FD FD FD FD FD FD FD FD
C6 = FE FE FE FE FE FE FE FE
C7 = FF FF FF FF FF FF FF FF
C8 = FC FC FC FC FC FC FC FC
C9 = FD FD FD FD FD FD FD FD
CA = FE FE FE FE FE FE FE FE
CB = FF FF FF FF FF FF FF FF
CC = FC FC FC FC FC FC FC FC
CD = FD FD FD FD FD FD FD FD
CE = FE FE FE FE FE FE FE FE
CF = FF FF FF FF FF FF FF FF
D0 = FC FC FC FC FC FC FC FC
D1 = FD FD FD FD FD FD FD FD
D2 = FE FE FE FE FE FE FE FE
D3 = FF FF FF FF FF FF FF FF *****
D4 = FC FC FC FC FC FC FC FC
D5 = FD FD FD FD FD FD FD FD
D6 = FE FE FE FE FE FE FE FE
D7 = FF FF FF FF FF FF FF FF
D8 = FC FC FC FC FC FC FC FC
D9 = 0
DA = FE FE FE FE FE FE FE FE *****
DB = 00 80 80 80 80 80 80 80 *****
DC = 0 *
DD = FD FD FD FD FD FD FD FD
DE = FE FE FE FE FE FE FE FE
DF = FF FF FF FF FF FF FF FF
E0 = FC FC FC FC FC FC FC FC
E1 = E1 E1 E1 E1 E1 E1 E1 E1
E2 = E2 E2 E2 E2 E2 E2 E2 E2
E3 = E3 E3 E3 E3 E3 E3 E3 E3
E4 = FC FC FC FC FC FC FC FC
E5 = FD FD FD FD FD FD FD FD
E6 = FE FE FE FE FE FE FE FE
E7 = FF FF FF FF FF FF FF FF
E8 = FC FC FC FC FC FC FC FC
E9 = FD FD FD FD FD FD FD FD
EA = FE FE FE FE FE FE FE FE
EB = FF FF FF FF FF FF FF FF
EC = FC FC FC FC FC FC FC FC
ED = FD FD FD FD FD FD FD FD
EE = FE FE FE FE FE FE FE FE
EF = FF FF FF FF FF FF FF FF *****
F0 = FC FC FC FC FC FC FC FC
F1 = FD FD FD FD FD FD FD FD
F2 = FE FE FE FE FE FE FE FE
F3 = FF FF FF FF FF FF FF FF
F4 = FC FC FC FC FC FC FC FC
F5 = FD FD FD FD FD FD FD FD
F6 = FE FE FE FE FE FE FE FE
F7 = FF FF FF FF FF FF FF FF
F8 = FC FC FC FC FC FC FC FC
F9 = FD FD FD FD FD FD FD FD
FA = FE FE FE FE FE FE FE FE
FB = FF FF FF FF FF FF FF FF
FC = FC FC FC FC FC FC FC FC
FD = FD FD FD FD FD FD FD FD
FE = FE FE FE FE FE FE FE FE
Unknown LCD driver chip: 0
***use minimal init as driver ili9341 ili9488 *** ->
Benchmark Time (microseconds)
Screen fill 1379552
Text 344032
Lines 3390180
Horiz/Vert Lines 144668
Rectangles (outline) 104260
Rectangles (filled) 3267444
Circles (filled) 1211480
Circles (outline) 1475108
Triangles (outline) 1075592
Triangles (filled) 1721664
Rounded rects (outline) 506432
Rounded rects (filled) 3795236
Done!
FreedomHuman, определенно у вас ошибки в подключении
007
reg p1 p2 p3 p4 p5 p6 p7 p8
008
00 = 0 *
009
01 = 01 01 01 01 01 01 01 01
010
02 = 02 02 02 02 02 02 02 02
011
03 = 03 03 03 03 03 03 03 03
012
04 = 0 *
013
05 = 0D 0D 0D 0D 0D 0D 0D 0D
014
06 = 0
как будто DB2 (третий бит) отвалился иль закоротил куда-то.
проверьте еще раз. // можете к прошлому сообщению добавить фотки подключения
Если у вас ардуино не 3.3в 8МГц, то 1. обязательны резисторы 10ком 2. на питание 3.3в прилепить стабилитрон 3.3в или белый светодиод. . (ну или использовать 2.8в)
// по подсветке , для вас не должно быть проблемой. (раньше с сотиков брал микруху повышайку в sot23-5 с обвязкой ) . с готовой платой MT3608, с Али, по 20-30руб стало еще проще.
//// таки где фотка подключенных диспа и адуины, чтоб посмотреть правильность и чистоту подключения? напоминаю подключение дисплейных пинов указано в начале скетча-читалки
// DB0 connects to digital pin 8 Arduino
// DB1 connects to digital pin 9
// DB2 connects to digital pin 2
// DB3 connects to digital pin 3
// DB4 connects to digital pin 4
// DB5 connects to digital pin 5
// DB6 connects to digital pin 6
// DB7 connects to digital pin 7
#define LCD_CS A3 //
#define LCD_CD A2 // (RS)
#define LCD_WR A1 //
#define LCD_RD A0 //
#define LCD_RESET A4 //
во втором ответе скетча, у вас, почему-то лог1 на 3м бите вызывает лог1 еще и на 5м бите.
007
reg p1 p2 p3 p4 p5 p6 p7 p8
008
00 = 0 *
009
01 = 01 01 01 01 01 01 01 01
010
02 = 02 02 02 02 02 02 02 02
011
03 = 03 03 03 03 03 03 03 03
012
04 = 1C 3C 3C 3C 3C 3C 3C 3C *****
013
05 = 1D 1D 1D 1D 1D 1D 1D 1D
014
06 = 1E 1E 1E 1E 1E 1E 1E 1E
015
07 = 1F 1F 1F 1F 1F 1F 1F 1F
возможно как раз из-за превышения 3.3в, если с резисторами и проводами точно все в порядке.
Ребята подскажите пожалуйста распиновку дисплея на шлейфе написано tft8k5659fpc-a1-e
Ребята подскажите пожалуйста распиновку дисплея на шлейфе написано tft8k5659fpc-a1-e
зачем? дисплей вы запустили на arduino UNO, и он у вас работает в составе шилда http://arduino.ru/forum/apparatnye-voprosy/arduino-uno-r324tft-shild#comment-256064 . Распиновка у него одна из стандартных. Даже проследив дорожки через буферные микросхемы , можно нарисовать распиновку дисплея. Библиотеки вывода на экран обычно работают и на ардуинке MEGA , изредка в скетче надо закоментить/раскоментить нужную строчку , с microSD посложнее если библтотека работает на аппаратном SPI. это все не раз оговаривалось на форуме.
Gavrik1980, IM2 не выведен в шлейф, как и другие пины из-за ненадобности .
Ребята подскажите пожалуйста распиновку дисплея на шлейфе написано tft8k5659fpc-a1-e
зачем? дисплей вы запустили на arduino UNO, и он у вас работает в составе шилда http://arduino.ru/forum/apparatnye-voprosy/arduino-uno-r324tft-shild#comment-256064 . Распиновка у него одна из стандартных. Даже проследив дорожки через буферные микросхемы , можно нарисовать распиновку дисплея. Библиотеки вывода на экран обычно работают и на ардуинке MEGA , изредка в скетче надо закоментить/раскоментить нужную строчку , с microSD посложнее если библтотека работает на аппаратном SPI. это все не раз оговаривалось на форуме.
Gavrik1980, IM2 не выведен в шлейф, как и другие пины из-за ненадобности .
Подскажите стандартная это распиновка от любой tft8k 44pin подходит.Просто хочу вывести RD что-бы можно было определять ID.Первый вывод слева или справа если смотреть на дисплей.Спасибо за ответ.На меге как не странно не работает.
Slider подскажи пожалуйста как узнать где находиться первый вывод этого дисплея (слева или справа идёт счет).На нём не где не пронумеровано.Спасибо за ответ!!!
dr-baks, дофотайте сам шлейф, крупным планом, а то на общем фото трудно различить.
и вы спрашивали про RD , я так понял что это про дисп TFT8K5659FPC-A1-E TFT1P5607 который на шилде? правильно? так там и подписан он как LCD_RD . от этой ножки его можно и проследить на какой пин он приходит на шлейфе , посмотрев еще даташит микросхемы через которую он идет. Также и все остальные ножки проследите и напишите какая у вас получилась распиновка.
Или это вопрос про дисплей не с шилда? тогда выкладывайте фотки самого шлейва , и сколько примерно размер в " этого дисп?
Slider,DB0...DB7 были подключены согласно utft -ной распиновки для uno
......
библа memorysaver.h стандарная ничего не раскоментывал памяти хватило.
Но ничего не получилось.Экран даже не моргнул.
Что ещё можно попробывать??
Comondante, это очень странно, IDE должна ругаться на недостаток памяти . проверьте правильность размещения библиотеки , и не присутствуют ли ее файлы в соседних папках.
Вот шлейф крупным планом
dr-baks,
1. третий раз говорю - в вашем случае распиновку можно определить проследив дорожки по шилду, вы же с него то сняли дисп.
все остальные способы несколько раз повторял в этой теме:
2. забить в гугл tfl lcd 44pin https://www.google.ru/search?q=tft+lcd+44pin, нажать картинки , и по минусам , толстым плюсам которые видно по шлейфу , подобрать подходящюю картинку распиновки . Далее уточнить по другим дорожкам. картинок там просто валом. именно такой шлейф 1в1 искать не нужно, как и размер и контроллер (могут стоять очень много разных)
вот очень похожая на ваш TFT8K5659FPC-A1-E TFT1P5607 , нумерация слева направо 1...44 по последнему фото где назв. диспа:
3. есть еще сайт продажи многих диспов http://www.wayengineer.com/ забиваете в нем поиск 44pin и находите ваш дисп и распиновки
вот похожая:
http://www.wayengineer.com/index.php?main_page=product_info&cPath=463_6_72&products_id=6907
http://www.wayengineer.com/index.php?main_page=product_info&cPath=463_6_72&products_id=1986 даташит http://www.wayengineer.com/download/S
http://www.wayengineer.com/index.php?main_page=product_info&cPath=463_6_189&products_id=5519
http://www.wayengineer.com/index.php?main_page=product_info&cPath=463_6_72&products_id=6935
шлейф вашедо диспа http://www.wayengineer.com/index.php?main_page=product_info&cPath=463_6_72&products_id=5494
// если вас не устраивает как работают микросхемы на шилде , ибо это м.б. не настоящие преобразователи уровней, а простые двухнаправленные повторители , ( направление на них переключает LCD_RD ) , типа глюки и. тд и тп , то снесите их феном и замените 10ком резисторами , согласно даташиту . И параллельно 3.3в стабу на шилде желательно поставить стабилитрон 3.3в (или понадеятся что его также ограничивают светодиоды подсветки повешанные тоже на этот стаб).
//// не претендую на 100% знание, но как то так.
Большое спасибо за помощь и ответ!!!!!!!!стабилитрон у меня на шилде нет придется его самому ставить.
Если проек будите делать на ардуино, то запитать tft можно от 3.3 в от самого ардуино. Питание на подсветку можно подать 5 в через ограничивающий резистор.
Итак, и я тут.
Пробовали подключать дисплей от HUAWEI ETS388?
(по клику - фуллсайз)
Есть какие идеи? Если что-то знакомое попадаетлось - рассказывайте, если нет - может попробую протокол расшифровать, логанализатор есть, тел рабочий.
Подскажите как подружить дисплей от Nokia X6-00 original с a=Arduino?
Yarik.Yar , я бы не связывался с неизвестными "динозаврами" , решайте сами . картинки ваши не видать, хотя это уже и не важно. подозрительно у него уж очень большой контроллер по сравнению с похожими монохромными nokia.
pendulum, как же вы собрались его паять, коли спрашиваете? никак . равно как и nokia 5230 и тд. и тп. Нужны доп. микросхемы - сериализер (преобразование последовательной шины в параллельную, обычно это BGA корпус) , и сам видеоконтроллер. Для подобных экранов отвечал на предыдущей странице, http://ardui . Для нашего случая , дисплеи должны иметь, в большинстве случаев, 37 пинов и выше + широкий шлейф.
// пожелание ко всем , прежде чем задать вопрос , поищите сначала готовые ответы в яндекс , гугле, и здесь.
Добрый день!
Случайно наткнулся на сайт делают реверс инжениринг экранчикам от nokia, LG, Sony.
Возможно кому то поможет в подключении LCD от: LG KF700, Sony ericsson VIVAZ, nokia 2730, 6300, N82, N95, N93, E73
С примерами подключения к Arduino с описаниями библиотек и скетчей.
http://andybrown.me.uk/category/hardware/#
Дальше еще один сайт описывающий разные контроллеры к дисплеям разных диагоналей.
https://weatherhelge.wordpress.com/display-2/
продолжу
1p 2p 3p 4p 5p 6p 7p 8parameter(byte) register 00 B5 09 B5 09 B5 09 B5 09 * register 00 B5 09 B5 09 B5 09 B5 09 * register 01 00 00 00 00 00 00 00 00 register 02 00 00 00 00 00 00 00 00 register 03 00 30 00 30 00 30 00 30 register 04 00 00 00 00 00 00 00 00 * register 05 01 7A 01 7A 01 7A 01 7A register 06 00 00 00 00 00 00 00 00 register 07 00 00 00 00 00 00 00 00 register 08 08 08 08 08 08 08 08 08 register 09 00 01 00 01 00 01 00 01 register 0A 00 00 00 00 00 00 00 00 register 0B 00 30 00 30 00 30 00 30 register 0C 00 00 00 00 00 00 00 00 register 0D 00 00 00 00 00 00 00 00 register 0E 00 00 00 00 00 00 00 00 register 0F 00 00 00 00 00 00 00 00 register 10 00 19 00 19 00 19 00 19 register 11 01 01 01 01 01 01 01 01 register 12 00 00 00 00 00 00 00 00 register 13 00 01 00 01 00 01 00 01 register 14 00 55 00 55 00 55 00 55 register 15 00 00 00 00 00 00 00 00 register 16 00 00 00 00 00 00 00 00 register 17 00 00 00 00 00 00 00 00 register 18 00 00 00 00 00 00 00 00 register 19 00 00 00 00 00 00 00 00 register 1A 00 00 00 00 00 00 00 00 register 1B 00 00 00 00 00 00 00 00 register 1C 00 00 00 00 00 00 00 00 register 1D 00 00 00 00 00 00 00 00 register 1E 00 00 00 00 00 00 00 00 register 1F 00 00 00 00 00 00 00 00 register 20 00 19 00 19 00 19 00 19 register 21 01 01 01 01 01 01 01 01 register 22 00 00 00 00 00 00 00 00 register 23 00 01 00 01 00 01 00 01 register 24 00 00 00 00 00 00 00 00 register 25 00 01 00 01 00 01 00 01 register 26 00 00 00 00 00 00 00 00 register 27 00 00 00 00 00 00 00 00 register 28 00 00 00 00 00 00 00 00 register 29 00 00 00 00 00 00 00 00 register 2A 00 00 00 00 00 00 00 00 register 2B 00 00 00 00 00 00 00 00 register 2C 00 00 00 00 00 00 00 00 register 2D 00 00 00 00 00 00 00 00 register 2E 00 00 00 00 00 00 00 00 register 2F 00 00 00 00 00 00 00 00 остальные регистры все 00из его даташита по поводу setxy 0x0210 0x0211 0x0212 0x0213
Window Address Control .............................................................................................................................................81
Window Horizontal RAM Address Start (R210h) Window Horizontal RAM Address End (R211h) ...................81
Window Vertical RAM Address Start (R212h), Window Vertical RAM Address End (R213h) ............................81
оно и понятно что много что в читалке будет как 00, чтобы прочесть другие регистры, надо отправлять не 8бит команду , а 16бит (8+8) .
библиотекa на базе ili9327 ili9326 SPFD5420A , из 13сообщ. http://ardu + даташит , иниты: https://yadi.sk/d/rmeqMdQw3DDGGH , потребовалось еще включить инверсию цветов (тест UTFT был на белом фоне , а не на черном как правильно).
Один косяк, дисплеи во время опытов , загнулись , жаль. Изображение потихоньку заплыло и больше не появилось на обоих что покупал. На команды отвечают, но уже не кажут. Возможно: 1. это китайские хилые аналоги, или 2. не понравилось им питалово в 3.3в (может инит был настроен на питалово 3.0-2.8в , а на питании выше, внутренние преобразователи выдавали большее напряжение и скончались. высокое положительное еще вырабатывали, а отрицательное уже нет. При подаче из вне , отрицательного питалова на соответствующий кондер на шлейфе, один дисп вообще ушел в к.з. Для себя сделал вывод, что для пытов, при 10ком резисторах , лучше запитывать дисплей от 2.8в-3.0в , т.е. если вместо стаба - резистор+стабилиитрон , то повешать стабилитрон не на 3.0в , а на 2.7в. В итоге как раз внутренние схемы от 10ком резисторов окажутся под напряжением не выше 3.0-3.3в.
start... 1p 2p 3p 4p 5p 6p 7p 8parameter(byte) register 00 0000 0000 0000 0000 0000 0000 0000 0000 *** register 00 0000 0000 0000 0000 0000 0000 0000 0000 *** register 01 0000 0000 0000 0000 0000 0000 0000 0000 register 02 0000 0000 0000 0000 0000 0000 0000 0000 register 03 0000 0000 0000 0000 0000 0000 0000 0000 register 04 0049 0049 006A 0000 00FF 00FF 0000 0000 *** register 05 0000 0000 0000 0000 0000 0000 0000 0000 register 06 0000 0000 0000 0000 0000 0000 0000 0000 register 07 0000 0000 0000 0000 0000 0000 0000 0000 register 08 0000 0000 0000 0000 0000 0000 0000 0000 register 09 0000 0000 0000 0000 0000 0000 0000 0000 register 0A 0008 0008 0000 0000 0000 0000 0000 0000 register 0B 0000 0000 0000 0000 0000 0000 0000 0000 register 0C 0007 0007 0000 0000 0000 0000 0000 0000 register 0D 0000 0000 0000 0000 0000 0000 0000 0000 register 0E 0000 0000 0000 0000 0000 0000 0000 0000 register 0F 0000 0000 0000 0000 0000 0000 0000 0000 register 10 0000 0000 0000 0000 0000 0000 0000 0000 register 11 0000 0000 0000 0000 0000 0000 0000 0000 register 12 0000 0000 0000 0000 0000 0000 0000 0000 register 13 0000 0000 0000 0000 0000 0000 0000 0000 register 14 0000 0000 0000 0000 0000 0000 0000 0000 register 15 0000 0000 0000 0000 0000 0000 0000 0000 register 16 0000 0000 0000 0000 0000 0000 0000 0000 register 17 0000 0000 0000 0000 0000 0000 0000 0000 register 18 0000 0000 0000 0000 0000 0000 0000 0000 register 19 0000 0000 0000 0000 0000 0000 0000 0000 register 1A 0000 0000 0000 0000 0000 0000 0000 0000 register 1B 0000 0000 0000 0000 0000 0000 0000 0000 register 1C 0000 0000 0000 0000 0000 0000 0000 0000 register 1D 0000 0000 0000 0000 0000 0000 0000 0000 register 1E 0000 0000 0000 0000 0000 0000 0000 0000 register 1F 0000 0000 0000 0000 0000 0000 0000 0000 register 20 0000 0000 0000 0000 0000 0000 0000 0000 register 21 0000 0000 0000 0000 0000 0000 0000 0000 register 22 0000 0000 0000 0000 0000 0000 0000 0000 register 23 0000 0000 0000 0000 0000 0000 0000 0000 register 24 0000 0000 0000 0000 0000 0000 0000 0000 register 25 0000 0000 0000 0000 0000 0000 0000 0000 register 26 0000 0000 0000 0000 0000 0000 0000 0000 register 27 0000 0000 0000 0000 0000 0000 0000 0000 register 28 0000 0000 0000 0000 0000 0000 0000 0000 register 29 0000 0000 0000 0000 0000 0000 0000 0000 register 2A 0000 0000 0000 0001 0067 0000 0000 0000 register 2B 0000 0000 0000 0002 007F 0000 0000 0000 register 2C 0000 0000 0000 0000 0000 0000 0000 0000 register 2D 0000 0000 0000 0000 0000 0000 0000 0000 register 2E 0000 0000 0000 0000 0000 0000 0000 0000 register 2F 0000 0000 0000 0000 0000 0000 0000 0000 register 30 0000 0000 0000 0002 007F 0000 0000 0000 register 31 0000 0000 0000 0000 0000 0000 0000 0000 register 32 0000 0000 0000 0000 0000 0000 0000 0000 register 33 0000 0000 0000 0000 0000 0000 0000 0000 register 34 0000 0000 0000 0000 0000 0000 0000 0000 register 35 0000 0000 0000 0000 0000 0000 0000 0000 register 36 0000 0000 0000 0000 0000 0000 0000 0000 register 37 0000 0000 0000 0000 0000 0000 0000 0000 register 38 0000 0000 0000 0000 0000 0000 0000 0000 register 39 0000 0000 0000 0000 0000 0000 0000 0000 register 3A 0007 0007 0000 0000 0000 0000 0000 0000 register 3B 0000 0000 0000 0000 0000 0000 0000 0000 register 3C 0000 0000 0000 0000 0000 0000 0000 0000 register 3D 0000 0000 0000 0000 0000 0000 0000 0000 register 3E 0000 0000 0000 0000 0000 0000 0000 0000 register 3F 0000 0000 0000 0000 0000 0000 0000 0000 register 40 0000 0000 0000 0000 0000 0000 0000 0000 register 41 0000 0000 0000 0000 0000 0000 0000 0000 register 42 0000 0000 0000 0000 0000 0000 0000 0000 register 43 0000 0000 0000 0000 0000 0000 0000 0000 register 44 0000 0000 0000 0000 0000 0000 0000 0000 register 45 0000 0000 0000 0000 0000 0000 0000 0000 register 46 0000 0000 0000 0000 0000 0000 0000 0000 register 47 0000 0000 0000 0000 0000 0000 0000 0000 register 48 0000 0000 0000 0000 0000 0000 0000 0000 register 49 0000 0000 0000 0000 0000 0000 0000 0000 register 4A 0000 0000 0000 0000 0000 0000 0000 0000 register 4B 0000 0000 0000 0000 0000 0000 0000 0000 register 4C 0000 0000 0000 0000 0000 0000 0000 0000 register 4D 0000 0000 0000 0000 0000 0000 0000 0000 register 4E 0000 0000 0000 0000 0000 0000 0000 0000 register 4F 0000 0000 0000 0000 0000 0000 0000 0000 register 50 0000 0000 0000 0000 0000 0000 0000 0000 register 51 0000 0000 0000 0000 0000 0000 0000 0000 register 52 0000 0000 0000 0000 0000 0000 0000 0000 register 53 0000 0000 0000 0000 0000 0000 0000 0000 register 54 0000 0000 0000 0000 0000 0000 0000 0000 register 55 0000 0000 0000 0000 0000 0000 0000 0000 register 56 0000 0000 0000 0000 0000 0000 0000 0000 register 57 0000 0000 0000 0000 0000 0000 0000 0000 register 58 0000 0000 0000 0000 0000 0000 0000 0000 register 59 0000 0000 0000 0000 0000 0000 0000 0000 register 5A 0000 0000 0000 0000 0000 0000 0000 0000 register 5B 0000 0000 0000 0000 0000 0000 0000 0000 register 5C 0000 0000 0000 0000 0000 0000 0000 0000 register 5D 0000 0000 0000 0000 0000 0000 0000 0000 register 5E 0000 0000 0000 0000 0000 0000 0000 0000 register 5F 0000 0000 0000 0000 0000 0000 0000 0000 register 60 0000 0000 0000 0000 0000 0000 0000 0000 register 61 0000 0000 0000 0000 0000 0000 0000 0000 register 62 0000 0000 0000 0000 0000 0000 0000 0000 register 63 0000 0000 0000 0000 0000 0000 0000 0000 register 64 0000 0000 0000 0000 0000 0000 0000 0000 register 65 0000 0000 0000 0000 0000 0000 0000 0000 register 66 0000 0000 0000 0000 0000 0000 0000 0000 register 67 0000 0000 0000 0000 0000 0000 0000 0000 register 68 0000 0000 0000 0000 0000 0000 0000 0000 register 69 0000 0000 0000 0000 0000 0000 0000 0000 register 6A 0000 0000 0000 0000 0000 0000 0000 0000 register 6B 0000 0000 0000 0000 0000 0000 0000 0000 register 6C 0000 0000 0000 0000 0000 0000 0000 0000 register 6D 0000 0000 0000 0000 0000 0000 0000 0000 register 6E 0000 0000 0000 0000 0000 0000 0000 0000 register 6F 0000 0000 0000 0000 0000 0000 0000 0000 register 70 0000 0000 0000 0000 0000 0000 0000 0000 register 71 0000 0000 0000 0000 0000 0000 0000 0000 register 72 0000 0000 0000 0000 0000 0000 0000 0000 register 73 0000 0000 0000 0000 0000 0000 0000 0000 register 74 0000 0000 0000 0000 0000 0000 0000 0000 register 75 0000 0000 0000 0000 0000 0000 0000 0000 register 76 0000 0000 0000 0000 0000 0000 0000 0000 register 77 0000 0000 0000 0000 0000 0000 0000 0000 register 78 0000 0000 0000 0000 0000 0000 0000 0000 register 79 0000 0000 0000 0000 0000 0000 0000 0000 register 7A 0000 0000 0000 0000 0000 0000 0000 0000 register 7B 0000 0000 0000 0000 0000 0000 0000 0000 register 7C 0000 0000 0000 0000 0000 0000 0000 0000 register 7D 0000 0000 0000 0000 0000 0000 0000 0000 register 7E 0000 0000 0000 0000 0000 0000 0000 0000 register 7F 0000 0000 0000 0000 0000 0000 0000 0000 register 80 0000 0000 0000 0000 0000 0000 0000 0000 register 81 0000 0000 0000 0000 0000 0000 0000 0000 register 82 0000 0000 0000 0000 0000 0000 0000 0000 register 83 0000 0000 0000 0000 0000 0000 0000 0000 register 84 0000 0000 0000 0000 0000 0000 0000 0000 register 85 0000 0000 0000 0000 0000 0000 0000 0000 register 86 0000 0000 0000 0000 0000 0000 0000 0000 register 87 0000 0000 0000 0000 0000 0000 0000 0000 register 88 0000 0000 0000 0000 0000 0000 0000 0000 register 89 0000 0000 0000 0000 0000 0000 0000 0000 register 8A 0000 0000 0000 0000 0000 0000 0000 0000 register 8B 0000 0000 0000 0000 0000 0000 0000 0000 register 8C 0000 0000 0000 0000 0000 0000 0000 0000 register 8D 0000 0000 0000 0000 0000 0000 0000 0000 register 8E 0000 0000 0000 0000 0000 0000 0000 0000 register 8F 0000 0000 0000 0000 0000 0000 0000 0000 register 90 0000 0000 0000 0000 0000 0000 0000 0000 register 91 0000 0000 0000 0000 0000 0000 0000 0000 register 92 0000 0000 0000 0000 0000 0000 0000 0000 register 93 0000 0000 0000 0000 0000 0000 0000 0000 register 94 0000 0000 0000 0000 0000 0000 0000 0000 register 95 0000 0000 0000 0000 0000 0000 0000 0000 register 96 0000 0000 0000 0000 0000 0000 0000 0000 register 97 0000 0000 0000 0000 0000 0000 0000 0000 register 98 0000 0000 0000 0000 0000 0000 0000 0000 register 99 0000 0000 0000 0000 0000 0000 0000 0000 register 9A 0000 0000 0000 0000 0000 0000 0000 0000 register 9B 0000 0000 0000 0000 0000 0000 0000 0000 register 9C 0000 0000 0000 0000 0000 0000 0000 0000 register 9D 0000 0000 0000 0000 0000 0000 0000 0000 register 9E 0000 0000 0000 0000 0000 0000 0000 0000 register 9F 0000 0000 0000 0000 0000 0000 0000 0000 register A0 0000 0000 0000 0000 0000 0000 0000 0000 register A1 0049 0049 006A 0000 00FF 00FF 0000 0000 register A2 0000 0000 0000 0000 0000 0000 0000 0000 register A3 0000 0000 0000 0000 0000 0000 0000 0000 register A4 0000 0000 0000 0000 0000 0000 0000 0000 register A5 0000 0000 0000 0000 0000 0000 0000 0000 register A6 0000 0000 0000 0000 0000 0000 0000 0000 register A7 0000 0000 0000 0000 0000 0000 0000 0000 register A8 0049 0049 006A 0000 00FF 00FF 0000 0000 register A9 0000 0000 0000 0000 0000 0000 0000 0000 register AA 0000 0000 0000 0000 0000 0000 0000 0000 register AB 0000 0000 0000 0000 0000 0000 0000 0000 register AC 0000 0000 0000 0000 0000 0000 0000 0000 register AD 0000 0000 0000 0000 0000 0000 0000 0000 register AE 0000 0000 0000 0000 0000 0000 0000 0000 register AF 0000 0000 0000 0000 0000 0000 0000 0000 register B0 0003 0003 0000 0000 0000 0000 0000 0000 register B1 0000 0000 0000 0000 0000 0000 0000 0000 register B2 0000 0000 0000 0000 0000 0000 0000 0000 register B3 0000 0000 0000 0000 0000 0000 0000 0000 register B4 0000 0000 0000 0000 0000 0000 0000 0000 register B5 0000 0000 0000 0000 0000 0000 0000 0000 register B6 0000 0000 0000 0000 0000 0000 0000 0000 register B7 0000 0000 0000 0000 0000 0000 0000 0000 register B8 0000 0000 0000 0000 0000 0000 0000 0000 register B9 0000 0000 0000 0000 0000 0000 0000 0000 register BA 0000 0000 0000 0000 0000 0000 0000 0000 register BB 0000 0000 0000 0000 0000 0000 0000 0000 register BC 0000 0000 0000 0000 0000 0000 0000 0000 register BD 0000 0000 0000 0000 0000 0000 0000 0000 register BE 0000 0000 0000 0000 0000 0000 0000 0000 register BF 0000 0000 0000 0000 0000 0000 0000 0000 *** register C0 0000 0000 0000 0000 0000 0000 0000 0000 register C1 0000 0000 0000 0000 0000 0000 0000 0000 register C2 0000 0000 0000 0000 0000 0000 0000 0000 register C3 0000 0000 0000 0000 0000 0000 0000 0000 register C4 0000 0000 0000 0000 0000 0000 0000 0000 register C5 0000 0000 0000 0000 0000 0000 0000 0000 register C6 0000 0000 0000 0000 0000 0000 0000 0000 register C7 0000 0000 0000 0000 0000 0000 0000 0000 register C8 0000 0000 0000 0000 0000 0000 0000 0000 register C9 0000 0000 0000 0000 0000 0000 0000 0000 register CA 0000 0000 0000 0000 0000 0000 0000 0000 register CB 0000 0000 0000 0000 0000 0000 0000 0000 register CC 0000 0000 0000 0000 0000 0000 0000 0000 register CD 0000 0000 0000 0000 0000 0000 0000 0000 register CE 0000 0000 0000 0000 0000 0000 0000 0000 register CF 0000 0000 0000 0000 0000 0000 0000 0000 register D0 0000 0000 0000 0000 0000 0000 0000 0000 register D1 0000 0000 0000 0000 0000 0000 0000 0000 register D2 0000 0000 0000 0000 0000 0000 0000 0000 register D3 0000 0000 0000 0000 0000 0000 0000 0000 *** register D4 0000 0000 0000 0000 0000 0000 0000 0000 register D5 0000 0000 0000 0000 0000 0000 0000 0000 register D6 0000 0000 0000 0000 0000 0000 0000 0000 register D7 0000 0000 0000 0000 0000 0000 0000 0000 register D8 0000 0000 0000 0000 0000 0000 0000 0000 register D9 0000 0000 0000 0000 0000 0000 0000 0000 register DA 0000 0000 0000 0000 0000 0000 0000 0000 *** register DB 0000 0000 0000 0000 0000 0000 0000 0000 *** register DC 0000 0000 0000 0000 0000 0000 0000 0000 *** register DD 0000 0000 0000 0000 0000 0000 0000 0000 register DE 0000 0000 0000 0000 0000 0000 0000 0000 register DF 0000 0000 0000 0000 0000 0000 0000 0000 register E0 0000 0000 0000 0000 0000 0000 0000 0000 register E1 0000 0000 0000 0000 0000 0000 0000 0000 register E2 0000 0000 0000 0000 0000 0000 0000 0000 register E3 0000 0000 0000 0000 0000 0000 0000 0000 register E4 0000 0000 0000 0000 0000 0000 0000 0000 register E5 0000 0000 0000 0000 0000 0000 0000 0000 register E6 0000 0000 0000 0000 0000 0000 0000 0000 register E7 0000 0000 0000 0000 0000 0000 0000 0000 register E8 0000 0000 0000 0000 0000 0000 0000 0000 register E9 0000 0000 0000 0000 0000 0000 0000 0000 register EA 0000 0000 0000 0000 0000 0000 0000 0000 register EB 0000 0000 0000 0000 0000 0000 0000 0000 register EC 0000 0000 0000 0000 0000 0000 0000 0000 register ED 0000 0000 0000 0000 0000 0000 0000 0000 register EE 0000 0000 0000 0000 0000 0000 0000 0000 register EF 0000 0000 0000 0000 0000 0000 0000 0000 *** register F0 0000 0000 0000 0000 0000 0000 0000 0000 register F1 0000 0000 0000 0000 0000 0000 0000 0000 register F2 0000 0000 0000 0000 0000 0000 0000 0000 register F3 0000 0000 0000 0000 0000 0000 0000 0000 register F4 0000 0000 0000 0000 0000 0000 0000 0000 register F5 0000 0000 0000 0000 0000 0000 0000 0000 register F6 0000 0000 0000 0000 0000 0000 0000 0000 register F7 0000 0000 0000 0000 0000 0000 0000 0000 register F8 0000 0000 0000 0000 0000 0000 0000 0000 register F9 0000 0000 0000 0000 0000 0000 0000 0000 register FA 0000 0000 0000 0000 0000 0000 0000 0000 register FB 0000 0000 0000 0000 0000 0000 0000 0000 register FC 0000 0000 0000 0000 0000 0000 0000 0000 register FD 0000 0000 0000 0000 0000 0000 0000 0000 register FE 0000 0000 0000 0000 0000 0000 0000 0000 register FF 0000 0000 0000 0000 0000 0000 0000 0000start... 1p 2p 3p 4p 5p 6p 7p 8parameter(byte) register 00 0000 0000 0000 0000 0000 0000 0000 0000 *** register 00 0000 0000 0000 0000 0000 0000 0000 0000 *** register 01 0000 0000 0000 0000 0000 0000 0000 0000 register 02 0000 0000 0000 0000 0000 0000 0000 0000 register 03 0000 0000 0000 0000 0000 0000 0000 0000 register 04 0002 0002 00E8 009F 0021 00FF 0000 0000 *** register 05 0000 0000 0000 0000 0000 0000 0000 0000 register 06 0000 0000 0000 0000 0000 0000 0000 0000 register 07 0000 0000 0000 0000 0000 0000 0000 0000 register 08 0000 0000 0000 0000 0000 0000 0000 0000 register 09 0000 0000 0000 0000 0000 0000 0000 0000 register 0A 0008 0008 0000 0000 0000 0000 0000 0000 register 0B 0000 0000 0000 0000 0000 0000 0000 0000 register 0C 0007 0007 0000 0000 0000 0000 0000 0000 register 0D 0000 0000 0000 0000 0000 0000 0000 0000 register 0E 0000 0000 0000 0000 0000 0000 0000 0000 register 0F 0000 0000 0000 0000 0000 0000 0000 0000 register 10 0000 0000 0000 0000 0000 0000 0000 0000 register 11 0000 0000 0000 0000 0000 0000 0000 0000 register 12 0000 0000 0000 0000 0000 0000 0000 0000 register 13 0000 0000 0000 0000 0000 0000 0000 0000 register 14 0000 0000 0000 0000 0000 0000 0000 0000 register 15 0000 0000 0000 0000 0000 0000 0000 0000 register 16 0000 0000 0000 0000 0000 0000 0000 0000 register 17 0000 0000 0000 0000 0000 0000 0000 0000 register 18 0000 0000 0000 0000 0000 0000 0000 0000 register 19 0000 0000 0000 0000 0000 0000 0000 0000 register 1A 0000 0000 0000 0000 0000 0000 0000 0000 register 1B 0000 0000 0000 0000 0000 0000 0000 0000 register 1C 0000 0000 0000 0000 0000 0000 0000 0000 register 1D 0000 0000 0000 0000 0000 0000 0000 0000 register 1E 0000 0000 0000 0000 0000 0000 0000 0000 register 1F 0000 0000 0000 0000 0000 0000 0000 0000 register 20 0000 0000 0000 0000 0000 0000 0000 0000 register 21 0000 0000 0000 0000 0000 0000 0000 0000 register 22 0000 0000 0000 0000 0000 0000 0000 0000 register 23 0000 0000 0000 0000 0000 0000 0000 0000 register 24 0000 0000 0000 0000 0000 0000 0000 0000 register 25 0000 0000 0000 0000 0000 0000 0000 0000 register 26 0000 0000 0000 0000 0000 0000 0000 0000 register 27 0000 0000 0000 0000 0000 0000 0000 0000 register 28 0000 0000 0000 0000 0000 0000 0000 0000 register 29 0000 0000 0000 0000 0000 0000 0000 0000 register 2A 0000 0000 0000 0001 0067 0000 0000 0000 register 2B 0000 0000 0000 0002 007F 0000 0000 0000 register 2C 0000 4EFF C95E ED13 1F7E D38D 5790 CE13 register 2D 0000 0000 0000 0000 0000 0000 0000 0000 register 2E 0000 4EFF C95E ED13 1F7E D38D 5790 CE13 register 2F 0000 0000 0000 0000 0000 0000 0000 0000 register 30 0000 0000 0000 0002 007F 0000 0000 0000 register 31 0000 0000 0000 0000 0000 0000 0000 0000 register 32 0000 0000 0000 0000 0000 0000 0000 0000 register 33 0000 0000 0000 0000 0000 0000 0000 0000 register 34 0000 0000 0000 0000 0000 0000 0000 0000 register 35 0000 0000 0000 0000 0000 0000 0000 0000 register 36 0000 0000 0000 0000 0000 0000 0000 0000 register 37 0000 0000 0000 0000 0000 0000 0000 0000 register 38 0000 0000 0000 0000 0000 0000 0000 0000 register 39 0000 0000 0000 0000 0000 0000 0000 0000 register 3A 0007 0007 0000 0000 0000 0000 0000 0000 register 3B 0000 0000 0000 0000 0000 0000 0000 0000 register 3C 0000 4EFF C95E ED13 1F7E D38D 5790 CE13 register 3D 0000 0000 0000 0000 0000 0000 0000 0000 register 3E 0000 FFFF 4EFF D686 B9C9 5EED 131E 2C1F register 3F 0000 0000 0000 0000 0000 0000 0000 0000 register 40 0000 0000 0000 0000 0000 0000 0000 0000 register 41 0000 0000 0000 0000 0000 0000 0000 0000 register 42 0000 0000 0000 0000 0000 0000 0000 0000 register 43 0000 0000 0000 0000 0000 0000 0000 0000 register 44 0000 0000 0000 0000 0000 0000 0000 0000 register 45 0000 0000 0000 0000 0000 0000 0000 0000 register 46 0000 0000 0000 0000 0000 0000 0000 0000 register 47 0000 0000 0000 0000 0000 0000 0000 0000 register 48 0000 0000 0000 0000 0000 0000 0000 0000 register 49 0000 0000 0000 0000 0000 0000 0000 0000 register 4A 0000 0000 0000 0000 0000 0000 0000 0000 register 4B 0000 0000 0000 0000 0000 0000 0000 0000 register 4C 0000 0000 0000 0000 0000 0000 0000 0000 register 4D 0000 0000 0000 0000 0000 0000 0000 0000 register 4E 0000 0000 0000 0000 0000 0000 0000 0000 register 4F 0000 0000 0000 0000 0000 0000 0000 0000 register 50 0000 0000 0000 0000 0000 0000 0000 0000 register 51 0000 0000 0000 0000 0000 0000 0000 0000 register 52 0000 0000 0000 0000 0000 0000 0000 0000 register 53 0000 0000 0000 0000 0000 0000 0000 0000 register 54 0000 0000 0000 0000 0000 0000 0000 0000 register 55 0000 0000 0000 0000 0000 0000 0000 0000 register 56 0000 0000 0000 0000 0000 0000 0000 0000 register 57 0000 0000 0000 0000 0000 0000 0000 0000 register 58 0000 0000 0000 0000 0000 0000 0000 0000 register 59 0000 0000 0000 0000 0000 0000 0000 0000 register 5A 0000 0000 0000 0000 0000 0000 0000 0000 register 5B 0000 0000 0000 0000 0000 0000 0000 0000 register 5C 0000 0000 0000 0000 0000 0000 0000 0000 register 5D 0000 0000 0000 0000 0000 0000 0000 0000 register 5E 0000 0000 0000 0000 0000 0000 0000 0000 register 5F 0000 0000 0000 0000 0000 0000 0000 0000 register 60 0000 0000 0000 0000 0000 0000 0000 0000 register 61 0000 0000 0000 0000 0000 0000 0000 0000 register 62 0000 0000 0000 0000 0000 0000 0000 0000 register 63 0000 0000 0000 0000 0000 0000 0000 0000 register 64 0000 0000 0000 0000 0000 0000 0000 0000 register 65 0000 0000 0000 0000 0000 0000 0000 0000 register 66 0000 0000 0000 0000 0000 0000 0000 0000 register 67 0000 0000 0000 0000 0000 0000 0000 0000 register 68 0000 0000 0000 0000 0000 0000 0000 0000 register 69 0000 0000 0000 0000 0000 0000 0000 0000 register 6A 0000 0000 0000 0000 0000 0000 0000 0000 register 6B 0000 0000 0000 0000 0000 0000 0000 0000 register 6C 0000 0000 0000 0000 0000 0000 0000 0000 register 6D 0000 0000 0000 0000 0000 0000 0000 0000 register 6E 0000 0000 0000 0000 0000 0000 0000 0000 register 6F 0000 0000 0000 0000 0000 0000 0000 0000 register 70 0000 0000 0000 0000 0000 0000 0000 0000 register 71 0000 0000 0000 0000 0000 0000 0000 0000 register 72 0000 0000 0000 0000 0000 0000 0000 0000 register 73 0000 0000 0000 0000 0000 0000 0000 0000 register 74 0000 0000 0000 0000 0000 0000 0000 0000 register 75 0000 0000 0000 0000 0000 0000 0000 0000 register 76 0000 0000 0000 0000 0000 0000 0000 0000 register 77 0000 0000 0000 0000 0000 0000 0000 0000 register 78 0000 0000 0000 0000 0000 0000 0000 0000 register 79 0000 0000 0000 0000 0000 0000 0000 0000 register 7A 0000 0000 0000 0000 0000 0000 0000 0000 register 7B 0000 0000 0000 0000 0000 0000 0000 0000 register 7C 0000 0000 0000 0000 0000 0000 0000 0000 register 7D 0000 0000 0000 0000 0000 0000 0000 0000 register 7E 0000 0000 0000 0000 0000 0000 0000 0000 register 7F 0000 0000 0000 0000 0000 0000 0000 0000 register 80 0000 0000 0000 0000 0000 0000 0000 0000 register 81 0000 0000 0000 0000 0000 0000 0000 0000 register 82 0000 0000 0000 0000 0000 0000 0000 0000 register 83 0000 0000 0000 0000 0000 0000 0000 0000 register 84 0000 0000 0000 0000 0000 0000 0000 0000 register 85 0000 0000 0000 0000 0000 0000 0000 0000 register 86 0000 0000 0000 0000 0000 0000 0000 0000 register 87 0000 0000 0000 0000 0000 0000 0000 0000 register 88 0000 0000 0000 0000 0000 0000 0000 0000 register 89 0000 0000 0000 0000 0000 0000 0000 0000 register 8A 0000 0000 0000 0000 0000 0000 0000 0000 register 8B 0000 0000 0000 0000 0000 0000 0000 0000 register 8C 0000 0000 0000 0000 0000 0000 0000 0000 register 8D 0000 0000 0000 0000 0000 0000 0000 0000 register 8E 0000 0000 0000 0000 0000 0000 0000 0000 register 8F 0000 0000 0000 0000 0000 0000 0000 0000 register 90 0000 0000 0000 0000 0000 0000 0000 0000 register 91 0000 0000 0000 0000 0000 0000 0000 0000 register 92 0000 0000 0000 0000 0000 0000 0000 0000 register 93 0000 0000 0000 0000 0000 0000 0000 0000 register 94 0000 0000 0000 0000 0000 0000 0000 0000 register 95 0000 0000 0000 0000 0000 0000 0000 0000 register 96 0000 0000 0000 0000 0000 0000 0000 0000 register 97 0000 0000 0000 0000 0000 0000 0000 0000 register 98 0000 0000 0000 0000 0000 0000 0000 0000 register 99 0000 0000 0000 0000 0000 0000 0000 0000 register 9A 0000 0000 0000 0000 0000 0000 0000 0000 register 9B 0000 0000 0000 0000 0000 0000 0000 0000 register 9C 0000 0000 0000 0000 0000 0000 0000 0000 register 9D 0000 0000 0000 0000 0000 0000 0000 0000 register 9E 0000 0000 0000 0000 0000 0000 0000 0000 register 9F 0000 0000 0000 0000 0000 0000 0000 0000 register A0 0000 0000 0000 0000 0000 0000 0000 0000 register A1 0002 0002 00E8 009F 0021 00FF 0000 0000 register A2 0000 0000 0000 0000 0000 0000 0000 0000 register A3 0000 0000 0000 0000 0000 0000 0000 0000 register A4 0000 0000 0000 0000 0000 0000 0000 0000 register A5 0000 0000 0000 0000 0000 0000 0000 0000 register A6 0000 0000 0000 0000 0000 0000 0000 0000 register A7 0000 0000 0000 0000 0000 0000 0000 0000 register A8 0002 0002 00E8 009F 0021 00FF 0000 0000 register A9 0000 0000 0000 0000 0000 0000 0000 0000 register AA 0000 0000 0000 0000 0000 0000 0000 0000 register AB 0000 0000 0000 0000 0000 0000 0000 0000 register AC 0000 0000 0000 0000 0000 0000 0000 0000 register AD 0000 0000 0000 0000 0000 0000 0000 0000 register AE 0000 0000 0000 0000 0000 0000 0000 0000 register AF 0000 0000 0000 0000 0000 0000 0000 0000 register B0 0003 0003 0000 0000 0000 0000 0000 0000 register B1 0000 0000 0000 0000 0000 0000 0000 0000 register B2 0000 0000 0000 0000 0000 0000 0000 0000 register B3 0000 0000 0000 0000 0000 0000 0000 0000 register B4 0000 0000 0000 0000 0000 0000 0000 0000 register B5 0000 0000 0000 0000 0000 0000 0000 0000 register B6 0000 0000 0000 0000 0000 0000 0000 0000 register B7 0000 0000 0000 0000 0000 0000 0000 0000 register B8 0000 0000 0000 0000 0000 0000 0000 0000 register B9 0000 0000 0000 0000 0000 0000 0000 0000 register BA 0000 0000 0000 0000 0000 0000 0000 0000 register BB 0000 0000 0000 0000 0000 0000 0000 0000 register BC 0000 0000 0000 0000 0000 0000 0000 0000 register BD 0000 0000 0000 0000 0000 0000 0000 0000 register BE 0000 0000 0000 0000 0000 0000 0000 0000 register BF 0000 0000 0000 0000 0000 0000 0000 0000 *** register C0 0000 0000 0000 0000 0000 0000 0000 0000 register C1 0000 0000 0000 0000 0000 0000 0000 0000 register C2 0000 0000 0000 0000 0000 0000 0000 0000 register C3 0000 0000 0000 0000 0000 0000 0000 0000 register C4 0000 0000 0000 0000 0000 0000 0000 0000 register C5 0000 0000 0000 0000 0000 0000 0000 0000 register C6 0000 0000 0000 0000 0000 0000 0000 0000 register C7 0000 0000 0000 0000 0000 0000 0000 0000 register C8 0000 0000 0000 0000 0000 0000 0000 0000 register C9 0000 0000 0000 0000 0000 0000 0000 0000 register CA 0000 0000 0000 0000 0000 0000 0000 0000 register CB 0000 0000 0000 0000 0000 0000 0000 0000 register CC 0000 0000 0000 0000 0000 0000 0000 0000 register CD 0000 0000 0000 0000 0000 0000 0000 0000 register CE 0000 0000 0000 0000 0000 0000 0000 0000 register CF 0000 0000 0000 0000 0000 0000 0000 0000 register D0 0000 0000 0000 0000 0000 0000 0000 0000 register D1 0000 0000 0000 0000 0000 0000 0000 0000 register D2 0000 0000 0000 0000 0000 0000 0000 0000 register D3 0000 0000 0000 0000 0000 0000 0000 0000 *** register D4 0000 0000 0000 0000 0000 0000 0000 0000 register D5 0000 0000 0000 0000 0000 0000 0000 0000 register D6 0000 0000 0000 0000 0000 0000 0000 0000 register D7 0000 0000 0000 0000 0000 0000 0000 0000 register D8 0000 0000 0000 0000 0000 0000 0000 0000 register D9 0000 0000 0000 0000 0000 0000 0000 0000 register DA 0000 0000 0000 0000 0000 0000 0000 0000 *** register DB 0000 0000 0000 0000 0000 0000 0000 0000 *** register DC 0000 0000 0000 0000 0000 0000 0000 0000 *** register DD 0000 0000 0000 0000 0000 0000 0000 0000 register DE 0000 0000 0000 0000 0000 0000 0000 0000 register DF 0000 0000 0000 0000 0000 0000 0000 0000 register E0 0000 0000 0000 0000 0000 0000 0000 0000 register E1 0000 0000 0000 0000 0000 0000 0000 0000 register E2 0000 0000 0000 0000 0000 0000 0000 0000 register E3 0000 0000 0000 0000 0000 0000 0000 0000 register E4 0000 0000 0000 0000 0000 0000 0000 0000 register E5 0000 0000 0000 0000 0000 0000 0000 0000 register E6 0000 0000 0000 0000 0000 0000 0000 0000 register E7 0000 0000 0000 0000 0000 0000 0000 0000 register E8 0000 0000 0000 0000 0000 0000 0000 0000 register E9 0000 0000 0000 0000 0000 0000 0000 0000 register EA 0000 0000 0000 0000 0000 0000 0000 0000 register EB 0000 0000 0000 0000 0000 0000 0000 0000 register EC 0000 0000 0000 0000 0000 0000 0000 0000 register ED 0000 0000 0000 0000 0000 0000 0000 0000 register EE 0000 0000 0000 0000 0000 0000 0000 0000 register EF 0000 0000 0000 0000 0000 0000 0000 0000 *** register F0 0000 0000 0000 0000 0000 0000 0000 0000 register F1 0000 0000 0000 0000 0000 0000 0000 0000 register F2 0000 0000 0000 0000 0000 0000 0000 0000 register F3 0000 0000 0000 0000 0000 0000 0000 0000 register F4 0000 0000 0000 0000 0000 0000 0000 0000 register F5 0000 0000 0000 0000 0000 0000 0000 0000 register F6 0000 0000 0000 0000 0000 0000 0000 0000 register F7 0000 0000 0000 0000 0000 0000 0000 0000 register F8 0000 0000 0000 0000 0000 0000 0000 0000 register F9 0000 0000 0000 0000 0000 0000 0000 0000 register FA 0000 0000 0000 0000 0000 0000 0000 0000 register FB 0000 0000 0000 0000 0000 0000 0000 0000 register FC 0000 0000 0000 0000 0000 0000 0000 0000 register FD 0000 0000 0000 0000 0000 0000 0000 0000 register FE 0000 0000 0000 0000 0000 0000 0000 0000 register FF 0000 0000 0000 0000 0000 0000 0000 0000//R61523 LCD_Write_COM(0x11); LCD_Write_COM(0x13); delay(100); LCD_Write_COM(0xB0);//Manufacture Command Access Protect Off LCD_Write_DATA(0x04); LCD_Write_COM(0xB4);//Command Access Protect LCD_Write_DATA(0x00); delay(130); LCD_Write_COM(0xB3); //Frame Memory Access and Interface setting LCD_Write_DATA(0x82);// LCD_Write_DATA(0x00);// LCD_Write_COM(0xC0);//Panel Driving Setting//Andy LCD_Write_DATA(0x03);/* LCD_Write_DATA(0x80); LCD_Write_DATA(0x00); LCD_Write_DATA(0x00); LCD_Write_DATA(0x02); LCD_Write_DATA(0x00); LCD_Write_DATA(0x01); */ LCD_Write_COM(0xC1);//Display_Timing_Setting for Normal Mode LCD_Write_DATA(0x00); LCD_Write_DATA(0x00); LCD_Write_DATA(0x13);//BC0=1:Line inversion LCD_Write_DATA(0x08);//RTN0[4:0]=Setting prohibited LCD_Write_DATA(0x0A);//FP0[3:0],BP0[3:0] LCD_Write_COM(0xC4);//Source/VCOM/Gate Driving Timing Setting LCD_Write_DATA(0x11);// LCD_Write_DATA(0x01);// LCD_Write_DATA(0x23);// LCD_Write_DATA(0x01);// LCD_Write_COM(0xD1);//VCOM Control LCD_Write_DATA(0x01);//SELVCM=0 --00 LCD_Write_DATA(0x30);//VCOMH=0.805*VREG1OUT,0x00(0.685)~0x3f(1.0) 18 --1c LCD_Write_DATA(0x07);//VCOM=1.22*VREG1OUT,0x00(0.7)~0x1f(1.32) 1A --1f LCD_Write_COM(0xC5);//Frame Rate and Inversion Control LCD_Write_DATA(0x01);//FRA[2:0]=125(Hz) LCD_Write_COM(0xC8); //Gamma Setting A set LCD_Write_DATA(0x08); LCD_Write_DATA(0x10); LCD_Write_DATA(0x66); LCD_Write_DATA(0xCB); LCD_Write_DATA(0x0B); LCD_Write_DATA(0x89); LCD_Write_DATA(0x36); LCD_Write_DATA(0x06); LCD_Write_DATA(0x05); LCD_Write_DATA(0x08); LCD_Write_DATA(0x06); LCD_Write_DATA(0x63); LCD_Write_DATA(0x99); LCD_Write_DATA(0x0B); LCD_Write_DATA(0xAC); LCD_Write_DATA(0x66); LCD_Write_DATA(0x10); LCD_Write_DATA(0x05); LCD_Write_COM(0xD0); //POWER_SETTING_COMMON LCD_Write_DATA(0x00);//00 VCI1=VCI=2.8V --07 ==04 LCD_Write_DATA(0x73);//55 DDVDH=2*VCI1,VGH=6*VCI1,VGL=-4*VCI1 --41 ==40 LCD_Write_DATA(0xC0);//C0 VREG1OUT=2.5*1.85=4.625V,VREG1OUT ?Q (DDVDH - 0.25)V. --1d ==13 LCD_Write_DATA(0x9F);// LCD_Write_COM(0xD2);//Power Setting for Normal Mode LCD_Write_DATA(0x01);//fDCDC2=Fosc/32,fDCDC1=Fosc/2 LCD_Write_DATA(0x00); LCD_Write_DATA(0x00); LCD_Write_COM(0xE0);//NVM Access Control LCD_Write_DATA(0x00); LCD_Write_DATA(0x38); LCD_Write_COM(0x3a);//Set_pixel_format LCD_Write_DATA(0x05);//65k/262k// LCD_Write_COM(0x36); //SET_ADDRESS_MODE LCD_Write_DATA(0x08);//>88,<00 было 48 , чтобы перевернуть 08 //Windows set LCD_Write_COM(0x2A);//Set_column_address LCD_Write_DATA(0x00); LCD_Write_DATA(0x00); LCD_Write_DATA(0x01); LCD_Write_DATA(0x67); LCD_Write_COM(0x2B);//Set_page_address LCD_Write_DATA(0x00); LCD_Write_DATA(0x00); LCD_Write_DATA(0x02); LCD_Write_DATA(0x7F); delay(120); LCD_Write_COM(0x29);//display_on LCD_Write_COM(0x2C);//Write_memory_startпример использовать UTFT\examples\Arduino (AVR)\UTFT_Demo_480x320 . ( добавил еще UTFT\examples\Arduino (AVR)\UTFT_Demo_640x360_R61523 , но его еще надо допиливать)
Здравствуйте FORFRENDS .
В 143 посте дисплей от А7100 ?
croc19, в 143 посту идет речь о дисплее с китайского Samsung s5 (пост 44).
Дисплей от А7100 так и лежит неопознаный. Долго искал на него распановку, а потом просто не было времени.
Распиновка у меня получилась такая.
Возможно RD, WR, DC и CS сдвинуть влево. У меня он немного коцаный, возможно нерабочий. Пробывал запустить, пока не
получилось. Буду пробывать дальше.
что полезного выяснил для проблемных дисплеев:
пока добиваю разные R61523 , от Sony Ericsson VIVAZ U8 U8i pro к arduino для UTFT
даташит https://ti.tuwien.ac.at/cps/teaching/courses/networked-embedded-systems/materials/Renesas%20R61523_101_091225.pdf
1. что не читается ID дисплея , дело действительно оказалось в
и , о чудо , теперь читается с BFh Device Code Read 01 22 15 23 что и означает R61523
v4.1 read ID from BFh start... LCD TFT DB0-DB7 -> PORTC: pin37-30(ArduinoMega atmega2560) or pin28-35(MegaCore atmega128) 1p 2p 3p 4p 5p 6p 7p 8parameter(byte) register 00 0000 0000 0000 0000 0000 0000 0000 0000 *** register 04 0002 00E8 009F 0021 00FF 0000 0000 0000 *** register 2A 0000 0000 0001 0067 0000 0000 0000 0000 register 2B 0000 0000 0002 007F 0000 0000 0000 0000 chek writing in 2Bh - 00 00 00 55 read 2Bh register 2B 0000 0000 0000 0055 0000 0000 0000 0000 read B0h register B0 0003 0000 0000 0000 0000 0000 0000 0000 read BFh ************************************************** register BF 0000 0000 0000 0000 0000 0000 0000 0000 write in Manufacture Command Access Protect B0h - 0x04 read BFh ************** Device Code Read ****************** register BF 0001 0022 0015 0023 0001 0000 0000 0000 read B0h-FFh register B0 0004 0000 0000 0000 0000 0000 0000 0000 register B1 0000 0000 0000 0000 0000 0000 0000 0000 register B2 0000 0000 0000 0000 0000 0000 0000 0000 register B3 0080 0000 0000 0000 0000 0000 0000 0000 register B4 0000 0000 0000 0000 0000 0000 0000 0000 register B5 0000 0000 0000 0000 0000 0000 0000 0000 register B6 0001 0000 0000 0000 0000 0000 0000 0000 register B7 0000 0000 0000 0000 0000 0000 0000 0000 register B8 0000 0000 0000 0000 0000 0000 0000 0000 register B9 0000 0000 0000 0000 0000 0000 0000 0000 register BA 0000 0000 0000 0000 0000 0000 0000 0000 register BB 0000 0000 0000 0000 0000 0000 0000 0000 register BC 0000 0000 0000 0000 0000 0000 0000 0000 register BD 0000 0000 0000 0000 0000 0000 0000 0000 register BE 0000 0000 0000 0000 0000 0000 0000 0000 register BF 0001 0022 0015 0023 0001 0000 0000 0000 *** register C0 0000 009F 0000 0000 0002 0000 0001 0000 register C1 0001 0000 0019 0008 0008 0000 0000 0000 register C2 0000 0000 0000 0000 0000 0000 0000 0000 register C3 0001 0000 0019 0008 0008 0000 0000 0000 register C4 0011 0001 0013 0001 0000 0000 0000 0000 register C5 0000 0000 0000 0000 0000 0000 0000 0000 register C6 0000 0000 0000 0000 0000 0000 0000 0000 register C7 0000 0000 0000 0000 0000 0000 0000 0000 register C8 0000 0000 0000 0000 0000 0000 0000 0000 register C9 0000 0000 0000 0000 0000 0000 0000 0000 register CA 0000 0000 0000 0000 0000 0000 0000 0000 register CB 0000 0000 0000 0000 0000 0000 0000 0000 register CC 0000 0000 0000 0000 0000 0000 0000 0000 register CD 0000 0000 0000 0000 0000 0000 0000 0000 register CE 0000 0000 0000 0000 0000 0000 0000 0000 register CF 0000 0000 0000 0000 0000 0000 0000 0000 register D0 0000 0074 00C0 008F 0001 0000 0000 0000 register D1 0000 0000 00CD 00F0 0000 0000 0000 0000 register D2 0003 0024 0002 0000 0000 0000 0000 0000 register D3 0000 0000 0000 0000 0000 0000 0000 0000 *** register D4 0003 0024 0002 0000 0000 0000 0000 0000 register D5 0000 0000 0000 0000 0000 0000 0000 0000 register D6 0001 0030 0002 0016 0000 0000 0000 0000 register D7 0006 0016 0088 0000 0066 00AA 000A 0088 register D8 0000 0000 0000 0000 0000 0000 0000 0000 register D9 00FF 009F 0000 0000 0000 0000 0000 0000 register DA 0000 0000 0000 0000 0000 0000 0000 0000 *** register DB 0000 0000 0000 0000 0000 0000 0000 0000 *** register DC 0000 0000 0000 0000 0000 0000 0000 0000 *** register DD 0000 0000 0000 0000 0000 0000 0000 0000 register DE 0000 0000 0000 0000 0000 0000 0000 0000 register DF 0000 0000 0000 0000 0000 0000 0000 0000 register E0 0000 0018 0000 0007 0000 0000 0000 0000 register E1 0000 0000 0000 0000 0000 0000 0000 0000 register E2 0000 0000 0000 0000 0000 0000 0000 0000 register E3 0000 0000 00F9 00FF 00DF 00FD 00F1 00E5 register E4 0000 0000 00AA 00AA 0000 0000 0000 0000 register E5 0000 0000 0000 0000 0000 0000 0000 0000 register E6 0000 0000 0000 0000 0000 0000 0000 0000 register E7 0000 0000 0000 0000 0000 0000 0000 0000 register E8 0000 0000 0000 0000 0000 0000 0000 0000 register E9 0000 0000 0000 0000 0000 0000 0000 0000 register EA 0000 0000 0000 0000 0000 0000 0000 0000 register EB 0000 0000 0000 0000 0000 0000 0000 0000 register EC 0000 0000 0000 0000 0000 0000 0000 0000 register ED 0000 0000 0000 0000 0000 0000 0000 0000 register EE 0000 0000 0000 0000 0000 0000 0000 0000 register EF 0000 0000 0000 0000 0000 0000 0000 0000 *** register F0 0000 0000 0000 0000 0000 0000 0000 0000 register F1 0000 0000 0000 0000 0000 0000 0000 0000 register F2 0000 0000 0000 0000 0000 0000 0000 0000 register F3 0000 0020 0000 0000 0000 0000 0000 0000 register F4 0000 0000 0000 0000 0000 0000 0000 0000 register F5 0000 0000 0000 0000 0000 0000 0000 0000 register F6 0000 0000 0000 0000 0000 0000 0000 0000 register F7 0000 0000 0000 0000 0000 0000 0000 0000 register F8 0000 0000 0000 0000 0000 0000 0000 0000 register F9 0000 0000 0000 0000 0000 0000 0000 0000 register FA 0001 0000 0000 0000 0000 0000 0000 0000 register FB 0000 0000 0000 0000 0000 0000 0000 0000 register FC 0000 0000 0000 0000 0000 0000 0000 0000 register FD 0000 0000 0001 0000 0000 0000 0000 0000 register FE 0000 0000 0000 0000 0030 0000 0000 0000 register FF 0000 0000 0000 0000 0000 0000 0000 0000v4.1 read ID from BFh start... LCD TFT DB0-DB7 -> PORTC: pin37-30(ArduinoMega atmega2560) or pin28-35(MegaCore atmega128) 1p 2p 3p 4p 5p 6p 7p 8parameter(byte) register 00 0000 0000 0000 0000 0000 0000 0000 0000 *** register 04 0049 006A 0000 0000 00FF 0000 0000 0000 *** register 2A 0000 0000 0001 0067 0000 0000 0000 0000 register 2B 0000 0000 0002 007F 0000 0000 0000 0000 chek writing in 2Bh - 00 00 00 55 read 2Bh register 2B 0000 0000 0000 0055 0000 0000 0000 0000 read B0h register B0 0003 0000 0000 0000 0000 0000 0000 0000 read BFh ************************************************** register BF 0000 0000 0000 0000 0000 0000 0000 0000 write in Manufacture Command Access Protect B0h - 0x04 read BFh ************** Device Code Read ****************** register BF 0001 0022 0015 0023 0001 0000 0000 0000 read B0h-FFh register B0 0004 0000 0000 0000 0000 0000 0000 0000 register B1 0000 0000 0000 0000 0000 0000 0000 0000 register B2 0000 0000 0000 0000 0000 0000 0000 0000 register B3 0080 0000 0000 0000 0000 0000 0000 0000 register B4 0000 0000 0000 0000 0000 0000 0000 0000 register B5 0000 0000 0000 0000 0000 0000 0000 0000 register B6 0001 0000 0000 0000 0000 0000 0000 0000 register B7 0000 0000 0000 0000 0000 0000 0000 0000 register B8 0000 0000 0000 0000 0000 0000 0000 0000 register B9 0000 0000 0000 0000 0000 0000 0000 0000 register BA 0000 0000 0000 0000 0000 0000 0000 0000 register BB 0000 0000 0000 0000 0000 0000 0000 0000 register BC 0000 0000 0000 0000 0000 0000 0000 0000 register BD 0000 0000 0000 0000 0000 0000 0000 0000 register BE 0000 0000 0000 0000 0000 0000 0000 0000 register BF 0001 0022 0015 0023 0001 0000 0000 0000 *** register C0 0000 009F 0000 0000 0002 0000 0001 0000 register C1 0001 0000 0019 0008 0008 0000 0000 0000 register C2 0000 0000 0000 0000 0000 0000 0000 0000 register C3 0001 0000 0019 0008 0008 0000 0000 0000 register C4 0011 0001 0013 0001 0000 0000 0000 0000 register C5 0000 0000 0000 0000 0000 0000 0000 0000 register C6 0000 0000 0000 0000 0000 0000 0000 0000 register C7 0000 0000 0000 0000 0000 0000 0000 0000 register C8 0000 0000 0000 0000 0000 0000 0000 0000 register C9 0000 0000 0000 0000 0000 0000 0000 0000 register CA 0000 0000 0000 0000 0000 0000 0000 0000 register CB 0000 0000 0000 0000 0000 0000 0000 0000 register CC 0000 0000 0000 0000 0000 0000 0000 0000 register CD 0000 0000 0000 0000 0000 0000 0000 0000 register CE 0000 0000 0000 0000 0000 0000 0000 0000 register CF 0000 0000 0000 0000 0000 0000 0000 0000 register D0 0000 0074 00C0 008F 0001 0000 0000 0000 register D1 0000 0000 00DC 00EE 0000 0000 0000 0000 register D2 0003 0024 0002 0000 0000 0000 0000 0000 register D3 0000 0000 0000 0000 0000 0000 0000 0000 *** register D4 0003 0024 0002 0000 0000 0000 0000 0000 register D5 0000 0000 0000 0000 0000 0000 0000 0000 register D6 0001 0030 0002 0016 0000 0000 0000 0000 register D7 0006 0016 0088 0000 0066 00AA 000A 0088 register D8 0000 0000 0000 0000 0000 0000 0000 0000 register D9 00FF 009F 0000 0000 0000 0000 0000 0000 register DA 0000 0000 0000 0000 0000 0000 0000 0000 *** register DB 0000 0000 0000 0000 0000 0000 0000 0000 *** register DC 0000 0000 0000 0000 0000 0000 0000 0000 *** register DD 0000 0000 0000 0000 0000 0000 0000 0000 register DE 0000 0000 0000 0000 0000 0000 0000 0000 register DF 0000 0000 0000 0000 0000 0000 0000 0000 register E0 0000 0018 0000 0007 0000 0000 0000 0000 register E1 0000 0000 0000 0000 0000 0000 0000 0000 register E2 0000 0000 0000 0000 0000 0000 0000 0000 register E3 0000 0000 00FF 00FF 00D9 00F3 00F1 00E5 register E4 0000 0000 00AA 00AA 0000 0000 0000 0000 register E5 0000 0000 0000 0000 0000 0000 0000 0000 register E6 0000 0000 0000 0000 0000 0000 0000 0000 register E7 0000 0000 0000 0000 0000 0000 0000 0000 register E8 0000 0000 0000 0000 0000 0000 0000 0000 register E9 0000 0000 0000 0000 0000 0000 0000 0000 register EA 0000 0000 0000 0000 0000 0000 0000 0000 register EB 0000 0000 0000 0000 0000 0000 0000 0000 register EC 0000 0000 0000 0000 0000 0000 0000 0000 register ED 0000 0000 0000 0000 0000 0000 0000 0000 register EE 0000 0000 0000 0000 0000 0000 0000 0000 register EF 0000 0000 0000 0000 0000 0000 0000 0000 *** register F0 0000 0000 0000 0000 0000 0000 0000 0000 register F1 0000 0000 0000 0000 0000 0000 0000 0000 register F2 0000 0000 0000 0000 0000 0000 0000 0000 register F3 0000 0020 0000 0000 0000 0000 0000 0000 register F4 0000 0000 0000 0000 0000 0000 0000 0000 register F5 0000 0000 0000 0000 0000 0000 0000 0000 register F6 0000 0000 0000 0000 0000 0000 0000 0000 register F7 0000 0000 0000 0000 0000 0000 0000 0000 register F8 0000 0000 0000 0000 0000 0000 0000 0000 register F9 0000 0000 0000 0000 0000 0000 0000 0000 register FA 0001 0000 0000 0000 0000 0000 0000 0000 register FB 0000 0000 0000 0000 0000 0000 0000 0000 register FC 0000 0000 0000 0000 0000 0000 0000 0000 register FD 0000 0000 0001 0000 0000 0000 0000 0000 register FE 0000 0000 0000 0000 0030 0000 0000 0000 register FF 0000 0000 0000 0000 0000 0000 0000 0000другой с желтым шлейфом, но немного не похожим
v4.1 read ID from BFh start... LCD TFT DB0-DB7 -> PORTC: pin37-30(ArduinoMega atmega2560) or pin28-35(MegaCore atmega128) 1p 2p 3p 4p 5p 6p 7p 8parameter(byte) register 00 0000 0000 0000 0000 0000 0000 0000 0000 *** register 04 0049 006A 0000 00FF 00FF 0000 0000 0000 *** register 2A 0000 0000 0001 0067 0000 0000 0000 0000 register 2B 0000 0000 0002 007F 0000 0000 0000 0000 chek writing in 2Bh - 00 00 00 55 read 2Bh register 2B 0000 0000 0000 0055 0000 0000 0000 0000 read B0h register B0 0003 0000 0000 0000 0000 0000 0000 0000 read BFh ************************************************** register BF 0000 0000 0000 0000 0000 0000 0000 0000 write in Manufacture Command Access Protect B0h - 0x04 read BFh ************** Device Code Read ****************** register BF 0001 0022 0015 0023 0001 0000 0000 0000 read B0h-FFh register B0 0004 0000 0000 0000 0000 0000 0000 0000 register B1 0000 0000 0000 0000 0000 0000 0000 0000 register B2 0000 0000 0000 0000 0000 0000 0000 0000 register B3 0080 0000 0000 0000 0000 0000 0000 0000 register B4 0000 0000 0000 0000 0000 0000 0000 0000 register B5 0000 0000 0000 0000 0000 0000 0000 0000 register B6 0001 0000 0000 0000 0000 0000 0000 0000 register B7 0000 0000 0000 0000 0000 0000 0000 0000 register B8 0000 0000 0000 0000 0000 0000 0000 0000 register B9 0000 0000 0000 0000 0000 0000 0000 0000 register BA 0000 0000 0000 0000 0000 0000 0000 0000 register BB 0000 0000 0000 0000 0000 0000 0000 0000 register BC 0000 0000 0000 0000 0000 0000 0000 0000 register BD 0000 0000 0000 0000 0000 0000 0000 0000 register BE 0000 0000 0000 0000 0000 0000 0000 0000 register BF 0001 0022 0015 0023 0001 0000 0000 0000 *** register C0 0000 009F 0000 0000 0002 0000 0001 0000 register C1 0001 0000 0019 0008 0008 0000 0000 0000 register C2 0000 0000 0000 0000 0000 0000 0000 0000 register C3 0001 0000 0019 0008 0008 0000 0000 0000 register C4 0011 0001 0013 0001 0000 0000 0000 0000 register C5 0000 0000 0000 0000 0000 0000 0000 0000 register C6 0000 0000 0000 0000 0000 0000 0000 0000 register C7 0000 0000 0000 0000 0000 0000 0000 0000 register C8 0000 0000 0000 0000 0000 0000 0000 0000 register C9 0000 0000 0000 0000 0000 0000 0000 0000 register CA 0000 0000 0000 0000 0000 0000 0000 0000 register CB 0000 0000 0000 0000 0000 0000 0000 0000 register CC 0000 0000 0000 0000 0000 0000 0000 0000 register CD 0000 0000 0000 0000 0000 0000 0000 0000 register CE 0000 0000 0000 0000 0000 0000 0000 0000 register CF 0000 0000 0000 0000 0000 0000 0000 0000 register D0 0000 0074 00C0 008F 0001 0000 0000 0000 register D1 0000 0000 0053 000E 0000 0000 0000 0000 register D2 0003 0024 0002 0000 0000 0000 0000 0000 register D3 0000 0000 0000 0000 0000 0000 0000 0000 *** register D4 0003 0024 0002 0000 0000 0000 0000 0000 register D5 0000 0000 0000 0000 0000 0000 0000 0000 register D6 0001 0030 0002 0016 0000 0000 0000 0000 register D7 0006 0016 0088 0000 0066 00AA 000A 0088 register D8 0000 0000 0000 0000 0000 0000 0000 0000 register D9 00FF 009F 0000 0000 0000 0000 0000 0000 register DA 0000 0000 0000 0000 0000 0000 0000 0000 *** register DB 0000 0000 0000 0000 0000 0000 0000 0000 *** register DC 0000 0000 0000 0000 0000 0000 0000 0000 *** register DD 0000 0000 0000 0000 0000 0000 0000 0000 register DE 0000 0000 0000 0000 0000 0000 0000 0000 register DF 0000 0000 0000 0000 0000 0000 0000 0000 register E0 0000 0018 0000 0007 0000 0000 0000 0000 register E1 0000 0000 0000 0000 0000 0000 0000 0000 register E2 0000 0000 0000 0000 0000 0000 0000 0000 register E3 0000 0000 00FF 00FF 00DF 00F1 00F1 00E5 register E4 0000 0000 00AA 00AA 0000 0000 0000 0000 register E5 0000 0000 0000 0000 0000 0000 0000 0000 register E6 0000 0000 0000 0000 0000 0000 0000 0000 register E7 0000 0000 0000 0000 0000 0000 0000 0000 register E8 0000 0000 0000 0000 0000 0000 0000 0000 register E9 0000 0000 0000 0000 0000 0000 0000 0000 register EA 0000 0000 0000 0000 0000 0000 0000 0000 register EB 0000 0000 0000 0000 0000 0000 0000 0000 register EC 0000 0000 0000 0000 0000 0000 0000 0000 register ED 0000 0000 0000 0000 0000 0000 0000 0000 register EE 0000 0000 0000 0000 0000 0000 0000 0000 register EF 0000 0000 0000 0000 0000 0000 0000 0000 *** register F0 0000 0000 0000 0000 0000 0000 0000 0000 register F1 0000 0000 0000 0000 0000 0000 0000 0000 register F2 0000 0000 0000 0000 0000 0000 0000 0000 register F3 0000 0020 0000 0000 0000 0000 0000 0000 register F4 0000 0000 0000 0000 0000 0000 0000 0000 register F5 0000 0000 0000 0000 0000 0000 0000 0000 register F6 0000 0000 0000 0000 0000 0000 0000 0000 register F7 0000 0000 0000 0000 0000 0000 0000 0000 register F8 0000 0000 0000 0000 0000 0000 0000 0000 register F9 0000 0000 0000 0000 0000 0000 0000 0000 register FA 0001 0000 0000 0000 0000 0000 0000 0000 register FB 0000 0000 0000 0000 0000 0000 0000 0000 register FC 0000 0000 0000 0000 0000 0000 0000 0000 register FD 0000 0000 0001 0000 0000 0000 0000 0000 register FE 0000 0000 0000 0000 0030 0000 0000 0000 register FF 0000 0000 0000 0000 0000 0000 0000 00002. дисплей показывает двойное изображение ( сжато , раздваивается )
как будто выбрана неправильная битность аппаратно-програмно или цветность програмно , но ни какие изменения не спасали , пока не разблокировал в BFh разрешение изменения регистров и изучением даташита , занес нужный параметр в C0h - Panel Driving Setting , биты SS, BGR , GS , SM , REV
выглядело так на дисплее с желтым шлейфом vivaz U8 :
методом научного тыка получился минимальный инит
изображение получилось правильное
это минимальный инит, без гамма коррекции и настройки питаний преобразователей для матрицы, что не есть хорошо. Тогда в оригинальном ините , можно изменить первый параметр C0h c 0x03 на 0x0b . Но для полноты м.б. лучше заменить все различия в применяемых регистрах по даташиту из области B0h-FFh . // к примеру C0h , D0h , ...
напомню , setXY у R61523 , такой же как у ili9341, HX8340B, HX8353C, ili9327, ili9481, ili9486, ili9488, R61581, S1D19122, SSD1963*
дисплей показывает двойное изображение ( растянуто, накладывается )
собственно это происходит на ините для неориг. дисплея , на обычном ините все норм
//R61523 LCD_Write_COM(0x11); LCD_Write_COM(0x13); delay(100); LCD_Write_COM(0xB0);//Manufacture Command Access Protect Off LCD_Write_DATA(0x04); LCD_Write_COM(0xB4);//Command Access Protect LCD_Write_DATA(0x00); delay(130); LCD_Write_COM(0xB3); //Frame Memory Access and Interface setting LCD_Write_DATA(0x82);// LCD_Write_DATA(0x00);// LCD_Write_COM(0xC0);//Panel Driving Setting//Andy LCD_Write_DATA(0x03);/* LCD_Write_DATA(0x80); LCD_Write_DATA(0x00); LCD_Write_DATA(0x00); LCD_Write_DATA(0x02); LCD_Write_DATA(0x00); LCD_Write_DATA(0x01); */ LCD_Write_COM(0xC1);//Display_Timing_Setting for Normal Mode LCD_Write_DATA(0x00); LCD_Write_DATA(0x00); LCD_Write_DATA(0x13);//BC0=1:Line inversion LCD_Write_DATA(0x08);//RTN0[4:0]=Setting prohibited LCD_Write_DATA(0x0A);//FP0[3:0],BP0[3:0] LCD_Write_COM(0xC4);//Source/VCOM/Gate Driving Timing Setting LCD_Write_DATA(0x11);// LCD_Write_DATA(0x01);// LCD_Write_DATA(0x23);// LCD_Write_DATA(0x01);// LCD_Write_COM(0xD1);//VCOM Control LCD_Write_DATA(0x01);//SELVCM=0 --00 LCD_Write_DATA(0x30);//VCOMH=0.805*VREG1OUT,0x00(0.685)~0x3f(1.0) 18 --1c LCD_Write_DATA(0x07);//VCOM=1.22*VREG1OUT,0x00(0.7)~0x1f(1.32) 1A --1f LCD_Write_COM(0xC5);//Frame Rate and Inversion Control LCD_Write_DATA(0x01);//FRA[2:0]=125(Hz) LCD_Write_COM(0xC8); //Gamma Setting A set LCD_Write_DATA(0x08); LCD_Write_DATA(0x10); LCD_Write_DATA(0x66); LCD_Write_DATA(0xCB); LCD_Write_DATA(0x0B); LCD_Write_DATA(0x89); LCD_Write_DATA(0x36); LCD_Write_DATA(0x06); LCD_Write_DATA(0x05); LCD_Write_DATA(0x08); LCD_Write_DATA(0x06); LCD_Write_DATA(0x63); LCD_Write_DATA(0x99); LCD_Write_DATA(0x0B); LCD_Write_DATA(0xAC); LCD_Write_DATA(0x66); LCD_Write_DATA(0x10); LCD_Write_DATA(0x05); LCD_Write_COM(0xD0); //POWER_SETTING_COMMON LCD_Write_DATA(0x00);//00 VCI1=VCI=2.8V --07 ==04 LCD_Write_DATA(0x73);//55 DDVDH=2*VCI1,VGH=6*VCI1,VGL=-4*VCI1 --41 ==40 LCD_Write_DATA(0xC0);//C0 VREG1OUT=2.5*1.85=4.625V,VREG1OUT ?Q (DDVDH - 0.25)V. --1d ==13 LCD_Write_DATA(0x9F);// LCD_Write_COM(0xD2);//Power Setting for Normal Mode LCD_Write_DATA(0x01);//fDCDC2=Fosc/32,fDCDC1=Fosc/2 LCD_Write_DATA(0x00); LCD_Write_DATA(0x00); LCD_Write_COM(0xE0);//NVM Access Control LCD_Write_DATA(0x00); LCD_Write_DATA(0x38); LCD_Write_COM(0x3a);//Set_pixel_format LCD_Write_DATA(0x05);//65k/262k// LCD_Write_COM(0x36); //SET_ADDRESS_MODE LCD_Write_DATA(0x08);//>88,<00 было 48 , чтобы перевернуть 08 //Windows set LCD_Write_COM(0x2A);//Set_column_address LCD_Write_DATA(0x00); LCD_Write_DATA(0x00); LCD_Write_DATA(0x01); LCD_Write_DATA(0x67); LCD_Write_COM(0x2B);//Set_page_address LCD_Write_DATA(0x00); LCD_Write_DATA(0x00); LCD_Write_DATA(0x02); LCD_Write_DATA(0x7F); delay(120); LCD_Write_COM(0x29);//display_on LCD_Write_COM(0x2C);//Write_memory_startвот минимальный инит
3. сдвиг изображения ( картинки )
пока , изменял регистры, изображение и область вывода смещалось . даташит R61523 целая кладезь этих сдвигов и областей, рекомендую к прочтению тому у кого картинка не сдвигалась по даташиту, видимо это было связано с тем , что надо было разблокировать редактирование регистров в B0h. также замечал , что безразблокировки , частично не работает регистр 36h , не работало в нем изменение BGR - RGB . (в принципе главным изменением BGR было в регистре C0h )
croc19 , вы бы качественно сфотали шлейф с обоих сторон, можете изменить свое сообщение.
собрал читалку ID reader lcd tft для 8бит дисплеев на Arduino UNO или шилдов с адафруитской распиновкой, на базе библиотеки Adafruit 2.8" https://github.com/adafruit/TFTLCD-Library , в отличии от LCD_ID_Reader Version 1.2 из статьи о библиотеках 2.4" tft lcd adafruit распиновки http://arduino-kit.ru/catalog/id/displey-2.4-tft-240h320-sensornyiy-%2B-microsd , делат опрос скрытых ID , занося в B0h 0x03 (0xffffff) и 0x04 .
подключение стандартное адафруитское:
void initi(void) { res=1; delay(1); res=0; delay(10); res=1; delay(3); //****************************************************** write_command(0xB0); write_data(0x00,0x3F); write_data(0x00,0x3F); delay(200); write_command(0xFE); write_data(0x00,0x00); write_data(0x00,0x00); write_data(0x00,0x00); write_data(0x00,0x21); write_data(0x00,0xB4); write_command(0xB3); write_data(0x00,0x00); write_data(0x00,0x10); write_command(0xE0); write_data(0x00,0x00); write_data(0x00,0x40); delay(200); write_command(0xB3); write_data(0x00,0x00); write_data(0x00,0x00); write_command(0xFE); write_data(0x00,0x00); write_data(0x00,0x00); write_data(0x00,0x00); write_data(0x00,0x21); write_data(0x00,0x30); write_command(0xB0); write_data(0x00,0x3F); write_data(0x00,0x3F); write_command(0xB3); write_data(0x00,0x02);//02 write_data(0x00,0x00); write_data(0x00,0x00); write_data(0x00,0x00); write_command(0xB4); write_data(0x00,0x00); write_command(0xC0); write_data(0x00,0x03); write_data(0x00,0x4F); write_data(0x00,0x00); write_data(0x00,0x10); write_data(0x00,0xA2);//A2 write_data(0x00,0x00); write_data(0x00,0x01); write_data(0x00,0x00); write_command(0xC1); write_data(0x00,0x01); write_data(0x00,0x01);//02 write_data(0x00,0x19);////28 write_data(0x00,0x08); write_data(0x00,0x08); delay(200); write_command(0xC3); write_data(0x00,0x01); write_data(0x00,0x00); write_data(0x00,0x28);//28 write_data(0x00,0x08); write_data(0x00,0x08); delay(200); write_command(0xC4); write_data(0x00,0x11); write_data(0x00,0x01); write_data(0x00,0x00); write_data(0x00,0x00); write_command(0xC8); write_data(0x00,0x0C); write_data(0x00,0x0C); write_data(0x00,0x0D); write_data(0x00,0x14); write_data(0x00,0x18); write_data(0x00,0x0E); write_data(0x00,0x09); write_data(0x00,0x09); write_data(0x00,0x03); write_data(0x00,0x05); write_data(0x00,0x00); write_data(0x00,0x03); write_data(0x00,0x08); write_data(0x00,0x07); write_data(0x00,0x0E); write_data(0x00,0x15); write_data(0x00,0x12); write_data(0x00,0x0A); write_data(0x00,0x0E); write_data(0x00,0x0A); write_data(0x00,0x0A); write_data(0x00,0x00); write_command(0xC9); write_data(0x00,0x0C); write_data(0x00,0x0C); write_data(0x00,0x0D); write_data(0x00,0x14); write_data(0x00,0x18); write_data(0x00,0x0E); write_data(0x00,0x09); write_data(0x00,0x09); write_data(0x00,0x03); write_data(0x00,0x05); write_data(0x00,0x00); write_data(0x00,0x03); write_data(0x00,0x08); write_data(0x00,0x07); write_data(0x00,0x0E); write_data(0x00,0x15); write_data(0x00,0x12); write_data(0x00,0x0A); write_data(0x00,0x0E); write_data(0x00,0x0A); write_data(0x00,0x0A); write_data(0x00,0x00); write_command(0xCA); write_data(0x00,0x0C); write_data(0x00,0x0C); write_data(0x00,0x0D); write_data(0x00,0x14); write_data(0x00,0x18); write_data(0x00,0x0E); write_data(0x00,0x09); write_data(0x00,0x09); write_data(0x00,0x03); write_data(0x00,0x05); write_data(0x00,0x00); write_data(0x00,0x03); write_data(0x00,0x08); write_data(0x00,0x07); write_data(0x00,0x0E); write_data(0x00,0x15); write_data(0x00,0x12); write_data(0x00,0x0A); write_data(0x00,0x0E); write_data(0x00,0x0A); write_data(0x00,0x0A); write_data(0x00,0x00); write_command(0xD0); write_data(0x00,0x63); write_data(0x00,0x53); write_data(0x00,0x82); write_data(0x00,0x3F); write_command(0xD1); write_data(0x00,0x6A); write_data(0x00,0x64); write_command(0xD2); write_data(0x00,0x03); write_data(0x00,0x24); write_command(0xD4); write_data(0x00,0x03); write_data(0x00,0x24); write_command(0xE2); write_data(0x00,0x3F); write_command(0x35); write_data(0x00,0x00); write_command(0x36); write_data(0x00,0x00); write_command(0x3A); write_data(0x00,0x55);//66=18BIT;55=16BIT write_command(0x2A); write_data(0x00,0x00); write_data(0x00,0x00); write_data(0x00,0x00); write_data(0x00,0xEF); write_command(0x2B); write_data(0x00,0x00); write_data(0x00,0x00); write_data(0x00,0x01); write_data(0x00,0x3f); delay(120); write_command(0x11); delay(120); write_command(0x29); delay(120); write_command(0x2c); }переделал инит R61526 под UTFT, была инверсия цветов
для реверса яркости пикселя измелил бит REV в регистре C0h ( The grayscale is reversed by setting REV = 1 ) .если надо перевернуть картинку то первый параметр регистра C0h надо не 0x13 ,а 0x36 (в бинарном виде 0b00110110 ) .
//**R61526 для UTFT_v2.77b2_uno_ili9327_8bit_turbo.rar ***************************** // подменить инит в UTFT\tft_drivers\ili9327_8\initlcd.h LCD_Write_COM(0xB0); LCD_Write_DATA(0x3F); LCD_Write_DATA(0x3F); delay(200); LCD_Write_COM(0xFE); LCD_Write_DATA(0x00); LCD_Write_DATA(0x00); LCD_Write_DATA(0x00); LCD_Write_DATA(0x21); LCD_Write_DATA(0xB4); LCD_Write_COM(0xB3); LCD_Write_DATA(0x00); LCD_Write_DATA(0x10); LCD_Write_COM(0xE0); LCD_Write_DATA(0x00); LCD_Write_DATA(0x40); delay(200); LCD_Write_COM(0xB3); LCD_Write_DATA(0x00); LCD_Write_DATA(0x00); LCD_Write_COM(0xFE); LCD_Write_DATA(0x00); LCD_Write_DATA(0x00); LCD_Write_DATA(0x00); LCD_Write_DATA(0x21); LCD_Write_DATA(0x30); LCD_Write_COM(0xB0); LCD_Write_DATA(0x3F); LCD_Write_DATA(0x3F); LCD_Write_COM(0xB3); LCD_Write_DATA(0x02);//02 LCD_Write_DATA(0x00); LCD_Write_DATA(0x00); LCD_Write_DATA(0x00); LCD_Write_COM(0xB4); LCD_Write_DATA(0x00); LCD_Write_COM(0xC0); LCD_Write_DATA(0x36); // было 0x03 - инверсия цветов. 0x13-норм 0x36-перевернуть LCD_Write_DATA(0x4F); LCD_Write_DATA(0x00); LCD_Write_DATA(0x10); LCD_Write_DATA(0xA2);//A2 LCD_Write_DATA(0x00); LCD_Write_DATA(0x01); LCD_Write_DATA(0x00); LCD_Write_COM(0xC1); LCD_Write_DATA(0x01); LCD_Write_DATA(0x01);//02 LCD_Write_DATA(0x19);////28 LCD_Write_DATA(0x08); LCD_Write_DATA(0x08); delay(200); LCD_Write_COM(0xC3); LCD_Write_DATA(0x01); LCD_Write_DATA(0x00); LCD_Write_DATA(0x28);//28 LCD_Write_DATA(0x08); LCD_Write_DATA(0x08); delay(200); LCD_Write_COM(0xC4); LCD_Write_DATA(0x11); LCD_Write_DATA(0x01); LCD_Write_DATA(0x00); LCD_Write_DATA(0x00); LCD_Write_COM(0xC8); LCD_Write_DATA(0x0C); LCD_Write_DATA(0x0C); LCD_Write_DATA(0x0D); LCD_Write_DATA(0x14); LCD_Write_DATA(0x18); LCD_Write_DATA(0x0E); LCD_Write_DATA(0x09); LCD_Write_DATA(0x09); LCD_Write_DATA(0x03); LCD_Write_DATA(0x05); LCD_Write_DATA(0x00); LCD_Write_DATA(0x03); LCD_Write_DATA(0x08); LCD_Write_DATA(0x07); LCD_Write_DATA(0x0E); LCD_Write_DATA(0x15); LCD_Write_DATA(0x12); LCD_Write_DATA(0x0A); LCD_Write_DATA(0x0E); LCD_Write_DATA(0x0A); LCD_Write_DATA(0x0A); LCD_Write_DATA(0x00); LCD_Write_COM(0xC9); LCD_Write_DATA(0x0C); LCD_Write_DATA(0x0C); LCD_Write_DATA(0x0D); LCD_Write_DATA(0x14); LCD_Write_DATA(0x18); LCD_Write_DATA(0x0E); LCD_Write_DATA(0x09); LCD_Write_DATA(0x09); LCD_Write_DATA(0x03); LCD_Write_DATA(0x05); LCD_Write_DATA(0x00); LCD_Write_DATA(0x03); LCD_Write_DATA(0x08); LCD_Write_DATA(0x07); LCD_Write_DATA(0x0E); LCD_Write_DATA(0x15); LCD_Write_DATA(0x12); LCD_Write_DATA(0x0A); LCD_Write_DATA(0x0E); LCD_Write_DATA(0x0A); LCD_Write_DATA(0x0A); LCD_Write_DATA(0x00); LCD_Write_COM(0xCA); LCD_Write_DATA(0x0C); LCD_Write_DATA(0x0C); LCD_Write_DATA(0x0D); LCD_Write_DATA(0x14); LCD_Write_DATA(0x18); LCD_Write_DATA(0x0E); LCD_Write_DATA(0x09); LCD_Write_DATA(0x09); LCD_Write_DATA(0x03); LCD_Write_DATA(0x05); LCD_Write_DATA(0x00); LCD_Write_DATA(0x03); LCD_Write_DATA(0x08); LCD_Write_DATA(0x07); LCD_Write_DATA(0x0E); LCD_Write_DATA(0x15); LCD_Write_DATA(0x12); LCD_Write_DATA(0x0A); LCD_Write_DATA(0x0E); LCD_Write_DATA(0x0A); LCD_Write_DATA(0x0A); LCD_Write_DATA(0x00); LCD_Write_COM(0xD0); LCD_Write_DATA(0x63); LCD_Write_DATA(0x53); LCD_Write_DATA(0x82); LCD_Write_DATA(0x3F); LCD_Write_COM(0xD1); LCD_Write_DATA(0x6A); LCD_Write_DATA(0x64); LCD_Write_COM(0xD2); LCD_Write_DATA(0x03); LCD_Write_DATA(0x24); LCD_Write_COM(0xD4); LCD_Write_DATA(0x03); LCD_Write_DATA(0x24); LCD_Write_COM(0xE2); LCD_Write_DATA(0x3F); LCD_Write_COM(0x35); LCD_Write_DATA(0x00); LCD_Write_COM(0x36); LCD_Write_DATA(0x00); LCD_Write_COM(0x3A); LCD_Write_DATA(0x55);//66=18BIT;55=16BIT LCD_Write_COM(0x2A); LCD_Write_DATA(0x00); LCD_Write_DATA(0x00); LCD_Write_DATA(0x00); LCD_Write_DATA(0xEF); LCD_Write_COM(0x2B); LCD_Write_DATA(0x00); LCD_Write_DATA(0x00); LCD_Write_DATA(0x01); LCD_Write_DATA(0x3f); delay(120); LCD_Write_COM(0x11); delay(120); LCD_Write_COM(0x29); delay(120); LCD_Write_COM(0x2c);Запилил UTFT с ним: https://yadi.sk/d/WQAn_SAe3Egw9R , пример UTFT\examples\Arduino (AVR)\UTFT_Demo_320x240
Рабочий скетч для tft lcd 2.4" R61526 для UNO , от MCUFRIEND , включающий в себя инит и не требующий никаких библиотек:
#define LCD_RD A0 #define LCD_WR A1 #define LCD_RS A2 #define LCD_CS A3 #define LCD_REST A4 #define BLACK 0x0000 #define BLUE 0x001F #define RED 0xF800 #define GREEN 0x07E0 #define CYAN 0x07FF #define MAGENTA 0xF81F #define YELLOW 0xFFE0 #define WHITE 0xFFFF void Lcd_Writ_Bus(char VH) { PORTD = (PORTD & B00000011) | ((VH) & B11111100); PORTB = (PORTB & B11111100) | ((VH) & B00000011); *(portOutputRegister(digitalPinToPort(LCD_WR))) &= ~digitalPinToBitMask(LCD_WR); *(portOutputRegister(digitalPinToPort(LCD_WR)))|= digitalPinToBitMask(LCD_WR); //digitalWrite(LCD_WR,LOW); //digitalWrite(LCD_WR,HIGH); } void Lcd_Write_Com(unsigned char VH) { *(portOutputRegister(digitalPinToPort(LCD_RS))) &= ~digitalPinToBitMask(LCD_RS);//LCD_RS=0; Lcd_Writ_Bus(VH);; } void Lcd_Write_Data(unsigned char VH) { *(portOutputRegister(digitalPinToPort(LCD_RS)))|= digitalPinToBitMask(LCD_RS);//LCD_RS=1; Lcd_Writ_Bus(VH); } void Lcd_Write_Com_Data(unsigned char com,unsigned char dat) { Lcd_Write_Com(com); Lcd_Write_Data(dat); } void Lcd_Init(void) { digitalWrite(LCD_REST,HIGH); delay(5); digitalWrite(LCD_REST,LOW); delay(15); digitalWrite(LCD_REST,HIGH); delay(15); digitalWrite(LCD_CS,HIGH); digitalWrite(LCD_WR,HIGH); digitalWrite(LCD_CS,LOW); //CS Lcd_Write_Com(0xCB); //9341 Lcd_Write_Data(0x39); Lcd_Write_Data(0x2C); Lcd_Write_Data(0x00); Lcd_Write_Data(0x34); Lcd_Write_Data(0x02); Lcd_Write_Com(0xCF); Lcd_Write_Data(0x00); Lcd_Write_Data(0XC1); Lcd_Write_Data(0X30); Lcd_Write_Com(0xE8); Lcd_Write_Data(0x85); Lcd_Write_Data(0x00); Lcd_Write_Data(0x78); Lcd_Write_Com(0xEA); Lcd_Write_Data(0x00); Lcd_Write_Data(0x00); Lcd_Write_Com(0xED); Lcd_Write_Data(0x64); Lcd_Write_Data(0x03); Lcd_Write_Data(0X12); Lcd_Write_Data(0X81); Lcd_Write_Com(0xF7); Lcd_Write_Data(0x20); Lcd_Write_Com(0xC0); //Power control Lcd_Write_Data(0x23); //VRH[5:0] Lcd_Write_Com(0xC1); //Power control Lcd_Write_Data(0x10); //SAP[2:0];BT[3:0] Lcd_Write_Com(0xC5); //VCM control Lcd_Write_Data(0x3e); //Contrast Lcd_Write_Data(0x28); Lcd_Write_Com(0xC7); //VCM control2 Lcd_Write_Data(0x86); //-- Lcd_Write_Com(0x36); // Memory Access Control Lcd_Write_Data(0x48); Lcd_Write_Com(0x3A); Lcd_Write_Data(0x55); Lcd_Write_Com(0xB1); Lcd_Write_Data(0x00); Lcd_Write_Data(0x18); Lcd_Write_Com(0xB6); // Display Function Control Lcd_Write_Data(0x08); Lcd_Write_Data(0x82); Lcd_Write_Data(0x27); //9341 Lcd_Write_Com(0xB0); Lcd_Write_Data(0x3F); Lcd_Write_Data(0x3F); delay(15); Lcd_Write_Com(0xB3); Lcd_Write_Data(0x02); Lcd_Write_Data(0x00); Lcd_Write_Data(0x00); Lcd_Write_Data(0x00); Lcd_Write_Data(0x00); Lcd_Write_Com(0xB4); Lcd_Write_Data(0x00); Lcd_Write_Com( 0xC0 ); Lcd_Write_Data( 0x33); //03 Lcd_Write_Data( 0x4F); Lcd_Write_Data( 0x00); Lcd_Write_Data( 0x10); Lcd_Write_Data( 0xA2); Lcd_Write_Data( 0x00); Lcd_Write_Data( 0x01); Lcd_Write_Data( 0x00); Lcd_Write_Com( 0xC1 ); Lcd_Write_Data( 0x01); Lcd_Write_Data( 0x02); Lcd_Write_Data( 0x20); Lcd_Write_Data( 0x08); Lcd_Write_Data( 0x08); delay(15); Lcd_Write_Com( 0xC3 ); Lcd_Write_Data(0x01); Lcd_Write_Data(0x00); Lcd_Write_Data(0x28); Lcd_Write_Data(0x08); Lcd_Write_Data(0x08); delay(15); Lcd_Write_Com(0xC4); Lcd_Write_Data(0x11 ); Lcd_Write_Data(0x01); Lcd_Write_Data(0x23); Lcd_Write_Data(0x04); Lcd_Write_Data(0x00); Lcd_Write_Com(0xC8);//Gamma Lcd_Write_Data(0x05); Lcd_Write_Data(0x0C); Lcd_Write_Data(0x0b); Lcd_Write_Data(0x15); Lcd_Write_Data(0x11); Lcd_Write_Data(0x09); Lcd_Write_Data(0x05); Lcd_Write_Data(0x07); Lcd_Write_Data(0x13); Lcd_Write_Data(0x10); Lcd_Write_Data(0x20); Lcd_Write_Data(0x13); Lcd_Write_Data(0x07); Lcd_Write_Data(0x05); Lcd_Write_Data(0x09); Lcd_Write_Data(0x11); Lcd_Write_Data(0x15); Lcd_Write_Data(0x0b); Lcd_Write_Data(0x0c); Lcd_Write_Data(0x05); Lcd_Write_Data(0x05); Lcd_Write_Data(0x02); Lcd_Write_Com(0xC9);//Gamma Lcd_Write_Data(0x05); Lcd_Write_Data(0x0C); Lcd_Write_Data(0x05); Lcd_Write_Data(0x15); Lcd_Write_Data(0x11 ); Lcd_Write_Data(0x09); Lcd_Write_Data(0x05); Lcd_Write_Data(0x07); Lcd_Write_Data(0x13); Lcd_Write_Data(0x10); Lcd_Write_Data(0x20); Lcd_Write_Data(0x13); Lcd_Write_Data(0x07); Lcd_Write_Data(0x05); Lcd_Write_Data(0x09); Lcd_Write_Data(0x11); Lcd_Write_Data(0x15); Lcd_Write_Data(0x0b); Lcd_Write_Data(0x0c); Lcd_Write_Data(0x05); Lcd_Write_Data(0x05); Lcd_Write_Data(0x02); Lcd_Write_Com(0xCA);//Gamma Lcd_Write_Data(0x05); Lcd_Write_Data(0x0C); Lcd_Write_Data(0x0b); Lcd_Write_Data(0x15); Lcd_Write_Data(0x11); Lcd_Write_Data(0x09); Lcd_Write_Data(0x05); Lcd_Write_Data(0x07); Lcd_Write_Data(0x13); Lcd_Write_Data(0x10); Lcd_Write_Data(0x20); Lcd_Write_Data(0x13); Lcd_Write_Data(0x07); Lcd_Write_Data(0x05); Lcd_Write_Data(0x09); Lcd_Write_Data(0x11); Lcd_Write_Data(0x15); Lcd_Write_Data(0x0b); Lcd_Write_Data(0x0c); Lcd_Write_Data(0x05); Lcd_Write_Data(0x05); Lcd_Write_Data(0x02); Lcd_Write_Com(0xD0); Lcd_Write_Data(0x33); Lcd_Write_Data(0x53); Lcd_Write_Data(0x87); Lcd_Write_Data(0x3b); Lcd_Write_Data(0x30); Lcd_Write_Data(0x00); Lcd_Write_Com(0xD1 ); Lcd_Write_Data(0x2c); Lcd_Write_Data(0x61); Lcd_Write_Data(0x10); Lcd_Write_Com(0xD2 ); Lcd_Write_Data(0x03); Lcd_Write_Data(0x24); Lcd_Write_Com(0xD4 ); Lcd_Write_Data(0x03); Lcd_Write_Data(0x24); Lcd_Write_Com(0xE2); Lcd_Write_Data(0x3f); delay(15); Lcd_Write_Com(0x35 ); Lcd_Write_Data(0x00); Lcd_Write_Com(0x36 ); Lcd_Write_Data(0x00); Lcd_Write_Com(0x3A ); Lcd_Write_Data(0x55);//55 16bit color Lcd_Write_Com(0x2A ); Lcd_Write_Data(0x00); Lcd_Write_Data(0x00); Lcd_Write_Data(0x00); Lcd_Write_Data(0xEF); Lcd_Write_Com(0x2B ); Lcd_Write_Data(0x00); Lcd_Write_Data(0x00); Lcd_Write_Data(0x01); Lcd_Write_Data(0x3F); Lcd_Write_Com(0x11) ; delay(15); Lcd_Write_Com(0x29); delay(15); Lcd_Write_Com(0x2C) ; delay(15); } void Address_set(unsigned int x1,unsigned int y1,unsigned int x2,unsigned int y2) { Lcd_Write_Com_Data(0x2a,x1>>8); Lcd_Write_Com_Data(0x2a,x1); Lcd_Write_Com_Data(0x2a,x2>>8); Lcd_Write_Com_Data(0x2a,x2); Lcd_Write_Com_Data(0x2b,y1>>8); Lcd_Write_Com_Data(0x2b,y1); Lcd_Write_Com_Data(0x2b,y2>>8); Lcd_Write_Com_Data(0x2b,y2); Lcd_Write_Com(0x2c); } void Lcd_open_windows(unsigned int x,unsigned int y,unsigned int l,unsigned int w) { unsigned char dis_dir; if(dis_dir ==0) { Lcd_Write_Com(0x2a); Lcd_Write_Data(x>>8); Lcd_Write_Data(x-((x>>8)<<8 )); Lcd_Write_Data((x+l-1)>>8); Lcd_Write_Data((x+l-1)-(((x+l-1)>>8)<<8)); Lcd_Write_Com(0x2b); Lcd_Write_Data(y>>8); Lcd_Write_Data(y-((y>>8)<<8 )); Lcd_Write_Data((y+w-1)>>8); Lcd_Write_Data((y+w-1)-(((y+w-1)>>8)<<8)); } else { Lcd_Write_Com(0x2b); Lcd_Write_Data(x>>8); Lcd_Write_Data(x-((x>>8)<<8 )); Lcd_Write_Data((x+l-1)>>8); Lcd_Write_Data((x+l-1)-(((x+l-1)>>8)<<8)); Lcd_Write_Com(0x2a); Lcd_Write_Data(y>>8); Lcd_Write_Data(y-((y>>8)<<8 )); Lcd_Write_Data((y+w-1)>>8); Lcd_Write_Data((y+w-1)-(((y+w-1)>>8)<<8)); } Lcd_Write_Com(0x2c); } void Lcd_point(unsigned int x, unsigned int y,unsigned int c) { Lcd_open_windows(x,y,1,1); Lcd_Write_Data(c>>8); Lcd_Write_Data(c); } void H_line(unsigned int x, unsigned int y, unsigned int l, unsigned int c) { unsigned int i,j; Lcd_Write_Com(0x02c); //write_memory_start digitalWrite(LCD_RS,HIGH); digitalWrite(LCD_CS,LOW); l=l+x; Address_set(x,l,y,y);//x1.x2.y1.y2 j=l*2; for(i=1;i<=j;i++) {Lcd_Write_Data(c>>8); Lcd_Write_Data(c); } digitalWrite(LCD_CS,HIGH); } void V_line(unsigned int x, unsigned int y, unsigned int l, unsigned int c) { unsigned int i,j; Lcd_Write_Com(0x02c); //write_memory_start digitalWrite(LCD_RS,HIGH); digitalWrite(LCD_CS,LOW); l=l+y; Address_set(x,x,y,l); j=l*2; for(i=1;i<=j;i++) { Lcd_Write_Data(c>>8); Lcd_Write_Data(c); } digitalWrite(LCD_CS,HIGH); } void Rect(unsigned int x,unsigned int y,unsigned int w,unsigned int h,unsigned int c) { H_line(x , y , w, c); H_line(x , y+h, w, c); V_line(x , y , h, c); V_line(x+w, y , h, c); } void Rectf(unsigned int x,unsigned int y,unsigned int w,unsigned int h,unsigned int c) { unsigned int i; for(i=0;i<h;i++) { H_line(x , y , w, c); H_line(x , y+i, w, c); } } int RGB(int r,int g,int b) {return r << 16 | g << 8 | b; } void LCD_Clear(unsigned int j) { unsigned int i,m; Address_set(0,0,320,240); Lcd_Write_Com(0x02c); //write_memory_start digitalWrite(LCD_RS,HIGH); digitalWrite(LCD_CS,LOW); for(i=0;i<80;i++) for(m=0;m<240;m++) { Lcd_Write_Data(j>>8); Lcd_Write_Data(j); } digitalWrite(LCD_CS,HIGH); } void setup() { for(int p=2;p<10;p++) { pinMode(p,OUTPUT); } pinMode(A0,OUTPUT); pinMode(A1,OUTPUT); pinMode(A2,OUTPUT); pinMode(A3,OUTPUT); pinMode(A4,OUTPUT); digitalWrite(A0, HIGH); digitalWrite(A1, HIGH); digitalWrite(A2, HIGH); digitalWrite(A3, HIGH); digitalWrite(A4, HIGH); Lcd_Init(); LCD_Clear(RED); LCD_Clear(GREEN); LCD_Clear(CYAN); LCD_Clear(MAGENTA); LCD_Clear(YELLOW); } void loop() { Lcd_point(10,10,0x1f00); // Lcd_Write_Data(0x1f00>>8); // Lcd_Write_Data(0x1f00); //V_line(10,10,100,0x1f00); //// Rect(100,100,100,100,0x1f00); // for(int i=0;i<1000;i++) // { // Rect(random(300),random(300),random(300),random(300),random(65535)); // rectangle at x, y, with, hight, color //} // LCD_Clear(0xf800); }взятый с сайта mcufriend http://www.mcufriend.com/down/html/?80.html . можно с этого скетча переделать инит (мож по цветопередаче чем-то лучше будет) в UTFT или вкорячить в адафруитскую либу .
Всем доброго! Ух, вроде всё перечитал, а нужного ответа для себя так и не нашёл. Помидорами просьба не кидать, лучше, если пропустил, ткните носом где почитать. В наличии Arduino MEGA 2560 R3 и дисплей LMS222GF38-0 от погибшего в неравном бою Sony Ericsson )))) Хотелось бы прицепить чтобы работал.. 26 pin. Методом научного тыка выяснилось, что 8 из них GND, 1 и 2 судя по всему подсветка. Был бы бесконечно благодарен за информацию. Поиск выдаёт только продажи, ни какой инфы по железяке нет.
Сфотографируй покачественнее шлейф с двух сторон.
Ну как то так, лучше не получается на эту камеру снять.
Tango , похоже гиблое дело подкл. этот дисп. Разъем 2х сторонний неудобно паять, распиновка не обычная, в таком случае схему бы, а на этот тлф в инете нет. А искать в сети диспы 2.2" SE в надежде встретить похожий дисп от другой модели и схему её, эт того не стоит, когда за меньшие труды вы можете достать или приобрести адекватный дисп или готовый шилд lcd tft для ардуино.
Tango , похоже гиблое дело подкл. этот дисп. Разъем 2х сторонний неудобно паять, распиновка не обычная, в таком случае схему бы, а на этот тлф в инете нет. А искать в сети диспы 2.2" SE в надежде встретить похожий дисп от другой модели и схему её, эт того не стоит, когда за меньшие труды вы можете достать или приобрести адекватный дисп или готовый шилд lcd tft для ардуино.
Я это уже понял)))) тоже перелопатил всё что можно было. Да дело то и не в монтаже, можно было бы использовать штатный разъем от телефона, но распиновки нет на этот...Ну ладно, буду ждать два дисплея с али...Скоро прийти должны. Спасибо!
не просто тфт. а тачи и те стоят 500р. зачем себе мозг клепать за такие деньги
не просто тфт. а тачи и те стоят 500р. зачем себе мозг клепать за такие деньги
Вот и заказал себе два таких, жду с нетерпением ))))
не просто тфт. а тачи и те стоят 500р. зачем себе мозг клепать за такие деньги
Доброго времени суток госода.
Есть дисплей от китайского S5, хочу подцепить его к уно) прошу не пинать, это только первые шаги "тоько вторые сутки как ардуино попал в руки ко мне").
вот что известно о нем..
Плохо видно. Сфоткай покачественнее шлейф с 2 сторон.
slider
Спасибо за тему. Очень полезная. Правда я не Ардуинщик.
Покупаю на радиорынке сломанные китайские телефоны по 50-100руб. Стараюсь с дисплеями от 3,5 дюймов.
С разрешением 480х320. У них меньше вариантов контроллеров и размер большой.
Если разрешишь, выложу пару наработок.
Покупаю на радиорынке сломанные китайские телефоны по 50-100руб. Стараюсь с дисплеями от 3,5 дюймов.
С разрешением 480х320. У них меньше вариантов контроллеров и размер большой.
Если разрешишь, выложу пару наработок.
да конечно, распиновки, фотки, откуда сняты диспы и решения на них приветствуются :))) !!! , в отличии от повторяющихся и нецелесообразных вопросов.
Интересны большие диспы.
Нормально так, за 50-100р за китайские тлф 3,5" ! мне все некогда доехать до ларьков по ремонту сотовых тож спросить большие диспы, с ними поинересней.
пока взял на таобао 3,5-4.0" 480x320 800x480 8/16 бит , цены ого конечно, за диспы высокого разрешения с конроллером имеющим свою видеопамять. По дешману в магазах только с шиной lvds, mipi ,... можно приобрести, но их к ардуине просто так не подключишь. Даже AMOLED, около 4", за 50-100руб встречал , тож "не наш" интерфейс :( . :)
// FreedomHuman, сфотайте шлейф отдельно крупным планом , чтоб дорожки было видно проследить. если у тлф нет макросъемки , то через какуюнить линзу . или фотоаппаратом
FreedomHuman, ничего похожего с tft lcd 39 pin в инете не нашел. // hl-f46124va
по дорожкам,
развел примерно распиновку, предположив что это ili9488 ::
для считывания ID попробуйте читалку v5.2 , подключив к ардуинке UNO , nano, Pro mini , ...
// FreedomHuman, вы походу из Питера?
Доброго времени суток. Я из Ростова.)Вот то что вычитано.
и блин подсветки нет.. замерил на телефоне откуда подсветка, там 19 вольт на подсветку))))
вот еще лог.
FreedomHuman, определенно у вас ошибки в подключении
007reg p1 p2 p3 p4 p5 p6 p7 p800800 = 0 *00901 = 01 01 01 01 01 01 01 0101002 = 02 02 02 02 02 02 02 0201103 = 03 03 03 03 03 03 03 0301204 = 0 *01305 = 0D 0D 0D 0D 0D 0D 0D 0D01406 = 0во втором ответе скетча, у вас, почему-то лог1 на 3м бите вызывает лог1 еще и на 5м бите.
007reg p1 p2 p3 p4 p5 p6 p7 p800800 = 0 *00901 = 01 01 01 01 01 01 01 0101002 = 02 02 02 02 02 02 02 0201103 = 03 03 03 03 03 03 03 0301204 = 1C 3C 3C 3C 3C 3C 3C 3C *****01305 = 1D 1D 1D 1D 1D 1D 1D 1D01406 = 1E 1E 1E 1E 1E 1E 1E 1E01507 = 1F 1F 1F 1F 1F 1F 1F 1Fвозможно как раз из-за превышения 3.3в, если с резисторами и проводами точно все в порядке.
Привет SLIDER.
Мучаю сейчас дисплей с контроллером ili9327. Написал читалку. Контроллер определяется четко. Но после инициализации
молчит. Дисплей белый. Мусора нет. Пытаюсь закрасить, не реагирует. Не сталкивался стаким поведением?
Инициализацию взял из UTFT. Может быть такое, что логика работает, а с кристалла на стекло выхода нет?
Привет SLIDER.
Мучаю сейчас дисплей с контроллером ili9327. Написал читалку. Контроллер определяется четко. Но после инициализации
молчит. Дисплей белый. Мусора нет. Пытаюсь закрасить, не реагирует. Не сталкивался стаким поведением?
Инициализацию взял из UTFT. Может быть такое, что логика работает, а с кристалла на стекло выхода нет?
может , как здесь page=5#comment-258859 .
после запуска инита (он включает преобразователи), проверьте питание на кондерах шлейфа, д.б. около +6в и отрицательное -3...-5в .
в выключенном состоянии кондеры не д.б. в К.З. - хотя это уже надо сильно постараться.
Дисплей снят с китайского S5. На шлейфе HL-f46084va v1.0. 4,6 дюйма. Заявлен как 272х480
Не могу вставить pdf , поэтому ссылка на него легко гуглится.
Плата к нему
Чем запускаю
Контроллер дисплея ILI9488. Выводы в PDF. Запустился сразу.
HL-F40089VA V1.1
Еще с одного китайца. 4 дюйма.



ну вот, не сложно оказывается. здоорово. большие диспы и 8 бит. простенькие ардуинки потянут и выводов свободных много останется (до 12).
подредактируйте какого разрешения и размера в " . а то инет говорит что у китайского S5 720p и FullHD дисплеи . и размер 5" .
// вместо pdf , можно просто принтскрин экрана сделать кнопка на всех клавах есть, вставить в виндовский паинт и вырезать нужную картинку.
Китайских S5 как я понял море. На разных контроллерах и дисплеях. 5 дюймовых на рынке пока не попадалось.
А этому порадовался. Хотя экран не сочный.
С 9327 так и не решил пока. Напряжения есть. А стартовать не хочет. Буду проверять уровни напряжений.
Может для данного стекла не подходят. Тогда попробую в регистрах инита поколдовать с ними.
Друзья, может у кого имеются наработки по такому дисплею из китайского NOKIA N8 ???
На шлейфе KT320KA-028A , интересует распиновка и контроллер ...
chugun
Попробуй разобраться сам. Расположение сигналов с кристалла примерно такое.
Фотки нечеткие. Лучше фото шлейфа с 2 сторон покрупнее.
У тебя D8-D15 не выведены. Значит шина 8 битная. Землю на шлейфе вызвонишь.Сигналы управления
как нарисовал . Два варианта, либо так, либо наоборот. ТЕ тебе не нужен. Он может быть не выведен на шлейф.
R1 и R2 скорее всего переключают шину на 8 или 16 бит. IM0 тоже может быть не выведен.
Питание +3,3v обычно два пина . Один аналоговое, другой цифровое питание. Они на шлейфе обычно
горизонтальными дорожками разводятся.
Спрашивай что не понятно и крупное фото выложи.
А дальше slider уже устал писать. Подключаешь и считываешь ID контроллера.