Юзаем дисплеи от сотовых и других потаскунчиков.

Дисплеи, датчики и прочие функциональные узлы, управляемые МК.
VXXXV
Открыл глаза
Сообщения: 49
Зарегистрирован: Сб фев 02, 2013 17:20:04
Откуда: Донецк

Re: Юзаем дисплеи от сотовых и других потаскунчиков.

Сообщение VXXXV »

HHIMERA писал(а):
VXXXV писал(а):заработало, рисует два цветных прямоугольника, блымает

Отсюда
http://vrtp.ru/index.php?showtopic=1120&st=1380#
из архива
http://vrtp.ru/index.php?act=Attach&type=post&id=381312
в файле lcd.c возьмите полную инициализацию дисплея...

К сожалению я в том коде нефирштейн :shock: запаяю новый разъем, начну с просто 0x11 и 0x29 :tea:
HHIMERA
Друг Кота
Сообщения: 4583
Зарегистрирован: Вс дек 05, 2010 06:10:34
Откуда: ЮВ

Re: Юзаем дисплеи от сотовых и других потаскунчиков.

Сообщение HHIMERA »

Не-не-не... профилонить не прокатит... :))
Есть дисплеи, где и половины инициализации уже много... а есть - только по полной...
Если у вас дисплей-оригинал, то нужна полная...
"Я не даю готовых решений, я заставляю думать!"(С)
VXXXV
Открыл глаза
Сообщения: 49
Зарегистрирован: Сб фев 02, 2013 17:20:04
Откуда: Донецк

Re: Юзаем дисплеи от сотовых и других потаскунчиков.

Сообщение VXXXV »

Разок он мне мусор показал в той инициализации что давали, вобщем завтра точно покажет. В полной я так понял есть ориентация экрана и цветность, и все?
Последний раз редактировалось VXXXV Пн фев 04, 2013 15:29:52, всего редактировалось 1 раз.
MaxGoblin
Открыл глаза
Сообщения: 41
Зарегистрирован: Сб окт 29, 2011 21:46:14

Re: Юзаем дисплеи от сотовых и других потаскунчиков.

Сообщение MaxGoblin »

У меня дисплей завелся, показал разноцветный мусор. Но только есть мерцание как в сети 50, 60Гц. Нарягает сильно, но не могу от него избавиться.
Заметил что при заливка всего экана цветом происходит как то странно, от края экрана и одновременно с середины в одном направлении начинается заливать. Как с этим бороться?
Фото скину вечером если необходимо.
srg320
Встал на лапы
Сообщения: 85
Зарегистрирован: Пт фев 01, 2013 17:47:26
Откуда: Украина, Луганская область

Re: Юзаем дисплеи от сотовых и других потаскунчиков.

Сообщение srg320 »

Для того, чтобы дисплей не мерцал, были нормальные цвета и правильно проходила заливка необходимо провести полную инициализацию дисплея - ещё с десяток регистров прописать.
MaxGoblin
Открыл глаза
Сообщения: 41
Зарегистрирован: Сб окт 29, 2011 21:46:14

Re: Юзаем дисплеи от сотовых и других потаскунчиков.

Сообщение MaxGoblin »

В инициализации я происал вот так.
Чего сдесь не хватает для полноты?

void LCDinit ()// инициализация дисплея
{
WR = 1;
RES = 0;
delay_ms(10);
RES = 1;
delay_ms(100);
CS=0;

SendCom(0x11); // SLPOUT
delay_ms(100);

SendCom(0x3A);
SendDat(0x08);

SendCom(0x36);
SendDat(0x14);

SendCom(0x2A);
SendDat(0x00);
SendDat(0x00);
SendDat(0x00);
SendDat(0xEF);

SendCom(0x2B);
SendDat(0x00);
SendDat(0x00);
SendDat(0x01);
SendDat(0x8F);

SendCom(0x29); // DISPON
delay_ms(100);
}
srg320
Встал на лапы
Сообщения: 85
Зарегистрирован: Пт фев 01, 2013 17:47:26
Откуда: Украина, Луганская область

Re: Юзаем дисплеи от сотовых и других потаскунчиков.

Сообщение srg320 »

По памяти не помню, буду дома - напишу.
srg320
Встал на лапы
Сообщения: 85
Зарегистрирован: Пт фев 01, 2013 17:47:26
Откуда: Украина, Луганская область

Re: Юзаем дисплеи от сотовых и других потаскунчиков.

Сообщение srg320 »

Вобщем, инициализацию дисплея я выдрал из исходников андроида.
Возможно там что-то лишнее, но я использовал всё как есть.
Вот коды команд:

Код: Выделить всё

#define POWCTL         0xF3
#define VCMCTL         0xF4
#define SRCCTL         0xF5
#define SLPOUT         0x11
#define TEON         0x35
#define MADCTL         0x36
#define COLMOD         0x3A
#define DISCTL         0xF2
#define IFCTL         0xF6
#define GATECTL         0xFD
#define WRDISBV         0x51
#define WRCABCMB      0x5E
#define MIECTL1         0xCA
#define BCMODE         0xCB
#define MIECTL2         0xCC
#define MIECTL3         0xCD
#define RPGAMCTL      0xF7
#define RNGAMCTL      0xF8
#define GPGAMCTL      0xF9
#define GNGAMCTL      0xFA
#define BPGAMCTL      0xFB
#define BNGAMCTL      0xFC
#define CASET         0x2A
#define PASET         0x2B
#define RAMWR                   0x2C
#define WRCTRLD         0x53
#define WRCABC         0x55
#define DISPON         0x29
#define DISPOFF         0x28
#define SLPIN         0x10
#define RDDIDIF         0x04
#define   RDID1         0xDA
#define   RDID2         0xDB
#define   RDID3         0xDC


Вот структура инициализации, используемая в моей программе:

Код: Выделить всё

const struct setting_table S6D04D1_power_on_setting_table[] = {
{   POWCTL,  7, { 0x80, 0x00, 0x00, 0x0B, 0x33, 0x7F, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 },   0 },
{   VCMCTL,  5, { 0x6E, 0x6E, 0x7F, 0x7F, 0x33, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 },   0 },
{   SRCCTL,  5, { 0x12, 0x00, 0x03, 0xF0, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 },   0 },//
{   SLPOUT,  0, { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 120 },
{   MADCTL,  1, { 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 },   0 },   
{   COLMOD,  1, { 0x77, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 },  30 },   //
{   DISCTL, 11, { 0x14, 0x14, 0x03, 0x08, 0x08, 0x08, 0x08, 0x1C, 0x04, 0x14, 0x14, 0x00, 0x00, 0x00, 0x00 },   0 },   
{  GATECTL,  2, { 0x22, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 },   0 },   
{  WRDISBV,  1, { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 },   0 }, //BRIGHTNESS//   
{ WRCABCMB,  1, { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 },   0 },   //
{  MIECTL1,  3, { 0x80, 0x80, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 },   0 },   //
{   BCMODE,  1, { 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 },   0 },//   
{  MIECTL2,  3, { 0x20, 0x01, 0x8F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 },   0 },   
{  MIECTL3,  2, { 0x7C, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 },   0 },   //
{ RPGAMCTL, 15, { 0x00, 0x23, 0x15, 0x15, 0x1C, 0x19, 0x18, 0x1E, 0x24, 0x25, 0x25, 0x20, 0x10, 0x22, 0x21 },   0 },   //
{ RNGAMCTL, 15, { 0x19, 0x00, 0x15, 0x15, 0x1C, 0x1F, 0x1E, 0x24, 0x1E, 0x1F, 0x25, 0x20, 0x10, 0x22, 0x21 },   0 },   //
{ GPGAMCTL, 15, { 0x06, 0x23, 0x14, 0x14, 0x1D, 0x1A, 0x19, 0x1F, 0x24, 0x26, 0x30, 0x1E, 0x1E, 0x22, 0x21 },   0 },   //
{ GNGAMCTL, 15, { 0x19, 0x06, 0x14, 0x14, 0x1D, 0x20, 0x1F, 0x25, 0x1E, 0x20, 0x30, 0x1E, 0x1E, 0x22, 0x21 },   0 },   //
{ BPGAMCTL, 15, { 0x2C, 0x23, 0x20, 0x20, 0x23, 0x2F, 0x30, 0x39, 0x09, 0x09, 0x18, 0x13, 0x13, 0x22, 0x21 },   0 },   //
{ BNGAMCTL, 15, { 0x19, 0x2C, 0x20, 0x20, 0x23, 0x35, 0x36, 0x3F, 0x03, 0x03, 0x18, 0x13, 0x13, 0x22, 0x21 },   0 },   //
{     TEON,  1, { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 },   0 },   //
{    CASET,  4, { 0x00, 0x00, 0x01, 0x8F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 },   0 },   
{    PASET,  4, { 0x00, 0x00, 0x00, 0xEF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 },   0 },   
{    RAMWR,  0, { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 },   0 },   
{  WRCTRLD,  1, { 0x2C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 },   0 },   //
{   WRCABC,  1, { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 },   0 },   //
{   DISPON,  0, { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 },  50 },   
};


К примеру, команда POWCTL (0xF3) имеет 7 параметров (0x80, 0x00, 0x00, 0x0B, 0x33, 0x7F, 0x7F), последнее число определяет задержку после команды.
MaxGoblin, в вашем случае будет так:
SendCom(0xF3);
SendDat(0x80);
SendDat(0x00);
SendDat(0x00);
SendDat(0x0B);
SendDat(0x33);
SendDat(0x7F);
SendDat(0x7F);

SendCom(0xF4);
SendDat(0x6E);
SendDat(0x6E);
SendDat(0x7F);
SendDat(0x7F);
SendDat(0x33);

и т.д. следующие команды
VXXXV
Открыл глаза
Сообщения: 49
Зарегистрирован: Сб фев 02, 2013 17:20:04
Откуда: Донецк

Re: Юзаем дисплеи от сотовых и других потаскунчиков.

Сообщение VXXXV »

Написал инициализацию полностью, изменений никаких, два черных квадрата и все. Вот что написал:

Код: Выделить всё

SendCom(0xF3);
      SendDat(0x80);
      SendDat(0x00);
      SendDat(0x00);
      SendDat(0x0B);
      SendDat(0x33);
      SendDat(0x7F);
      SendDat(0x7F);
    SendCom(0xF4);
      SendDat(0x6E);
      SendDat(0x6E);
      SendDat(0x7F);
      SendDat(0x7F);
      SendDat(0x33);
    SendCom(0xF5);
      SendDat(0x12);
      SendDat(0x03);
      SendDat(0xF0);
      SendDat(0x70);
    SendCom(0x11);
      delay_ms(100);
    SendCom(0x36);
      SendDat(0x20);
    SendCom(0x3A);
      SendDat(0x77);   
      delay_ms(30);
    SendCom(0xF2);
      SendDat(0x14);
      SendDat(0x14);
      SendDat(0x03);
      SendDat(0x03);
      SendDat(0x04);
      SendDat(0x03);
      SendDat(0x04);
      SendDat(0x10);
      SendDat(0x04);
      SendDat(0x14);
      SendDat(0x14);
    SendCom(0xFD);
      SendDat(0x22);
      SendDat(0x01);
    SendCom(0x51);
    SendCom(0x5E); 
    SendCom(0xCA);
      SendDat(0x80);
      SendDat(0x80);
      SendDat(0x20); 
    SendCom(0xCB);
      SendDat(0x03);
    SendCom(0xCC);
      SendDat(0x20);
      SendDat(0x01);
      SendDat(0x8F);
    SendCom(0xCD);
      SendDat(0x7C);
      SendDat(0x01);
    SendCom(0xF7);
      SendDat(0x23);
      SendDat(0x15);
      SendDat(0x15);
      SendDat(0x1C);
      SendDat(0x19);
      SendDat(0x18);
      SendDat(0x1E);
      SendDat(0x24);
      SendDat(0x25);
      SendDat(0x25);
      SendDat(0x20);
      SendDat(0x10);
      SendDat(0x22);
      SendDat(0x21);
    SendCom(0xF8);
      SendDat(0x19);
      SendDat(0x15);
      SendDat(0x15);
      SendDat(0x1C);
      SendDat(0x1F);
      SendDat(0x1E);
      SendDat(0x24);
      SendDat(0x1E);
      SendDat(0x1F);
      SendDat(0x25);
      SendDat(0x20);
      SendDat(0x10);
      SendDat(0x22);
      SendDat(0x21);
    SendCom(0xF9);
      SendDat(0x06);
      SendDat(0x23);
      SendDat(0x14);
      SendDat(0x14);
      SendDat(0x1D);
      SendDat(0x1A);
      SendDat(0x19);
      SendDat(0x1F);
      SendDat(0x24);
      SendDat(0x26);
      SendDat(0x30);
      SendDat(0x1E);
      SendDat(0x1E);
      SendDat(0x22);
      SendDat(0x21);
    SendCom(0xFA);
      SendDat(0x19);
      SendDat(0x06);
      SendDat(0x14);
      SendDat(0x14);
      SendDat(0x1D);
      SendDat(0x20);
      SendDat(0x1F);
      SendDat(0x25);
      SendDat(0x1E);
      SendDat(0x20);
      SendDat(0x30);
      SendDat(0x1E);
      SendDat(0x1E);
      SendDat(0x22);
      SendDat(0x21);
    SendCom(0xFB);
      SendDat(0x2C);
      SendDat(0x23);
      SendDat(0x20);
      SendDat(0x20);
      SendDat(0x23);
      SendDat(0x2F);
      SendDat(0x30);
      SendDat(0x39);
      SendDat(0x09);
      SendDat(0x09);
      SendDat(0x18);
      SendDat(0x13);
      SendDat(0x13);
      SendDat(0x22);
      SendDat(0x21);
    SendCom(0xFC);
      SendDat(0x19);
      SendDat(0x2C);
      SendDat(0x20);
      SendDat(0x20);
      SendDat(0x23);
      SendDat(0x35);
      SendDat(0x36);
      SendDat(0x3F);
      SendDat(0x03);
      SendDat(0x03);
      SendDat(0x18);
      SendDat(0x13);
      SendDat(0x13);
      SendDat(0x22);
      SendDat(0x21);
    SendCom(0x35);
    SendCom(0x2A);
      SendDat(0x01);
      SendDat(0x8F);
    SendCom(0x2B);
      SendDat(0xEF);
    SendCom(0x2C);
    SendCom(0x53);
      SendDat(0x2C);
    SendCom(0x55);
    SendCom(0x29); // DISPON
    delay_ms(50); 
srg320
Встал на лапы
Сообщения: 85
Зарегистрирован: Пт фев 01, 2013 17:47:26
Откуда: Украина, Луганская область

Re: Юзаем дисплеи от сотовых и других потаскунчиков.

Сообщение srg320 »

VXXXV, зачем нули попропускали, они же там не просто так.
Вот то, что сразу заметил и исправил:
SendCom(0xF3);
SendDat(0x80);
SendDat(0x00);
SendDat(0x00);
SendDat(0x0B);
SendDat(0x33);
SendDat(0x7F);
SendDat(0x7F);
SendCom(0xF4);
SendDat(0x6E);
SendDat(0x6E);
SendDat(0x7F);
SendDat(0x7F);
SendDat(0x33);
SendCom(0xF5);
SendDat(0x12);
SendDat(0x00);
SendDat(0x03);
SendDat(0xF0);
SendDat(0x70);
SendCom(0x11);
delay_ms(100);
SendCom(0x36);
SendDat(0x20);
SendCom(0x3A);
SendDat(0x77);
delay_ms(30);
SendCom(0xF2);
SendDat(0x14);
SendDat(0x14);
SendDat(0x03);
SendDat(0x03);
SendDat(0x04);
SendDat(0x03);
SendDat(0x04);
SendDat(0x10);
SendDat(0x04);
SendDat(0x14);
SendDat(0x14);
SendCom(0xFD);
SendDat(0x22);
SendDat(0x01);
SendCom(0x51);
SendDat(0x00);
SendCom(0x5E);
SendDat(0x00);
SendCom(0xCA);
SendDat(0x80);
SendDat(0x80);
SendDat(0x20);
SendCom(0xCB);
SendDat(0x03);
SendCom(0xCC);
SendDat(0x20);
SendDat(0x01);
SendDat(0x8F);
SendCom(0xCD);
SendDat(0x7C);
SendDat(0x01);
SendCom(0xF7);
SendDat(0x00);
SendDat(0x23);
SendDat(0x15);
SendDat(0x15);
SendDat(0x1C);
SendDat(0x19);
SendDat(0x18);
SendDat(0x1E);
SendDat(0x24);
SendDat(0x25);
SendDat(0x25);
SendDat(0x20);
SendDat(0x10);
SendDat(0x22);
SendDat(0x21);
SendCom(0xF8);
SendDat(0x19);
SendDat(0x00);
SendDat(0x15);
SendDat(0x15);
SendDat(0x1C);
SendDat(0x1F);
SendDat(0x1E);
SendDat(0x24);
SendDat(0x1E);
SendDat(0x1F);
SendDat(0x25);
SendDat(0x20);
SendDat(0x10);
SendDat(0x22);
SendDat(0x21);
SendCom(0xF9);
SendDat(0x06);
SendDat(0x23);
SendDat(0x14);
SendDat(0x14);
SendDat(0x1D);
SendDat(0x1A);
SendDat(0x19);
SendDat(0x1F);
SendDat(0x24);
SendDat(0x26);
SendDat(0x30);
SendDat(0x1E);
SendDat(0x1E);
SendDat(0x22);
SendDat(0x21);
SendCom(0xFA);
SendDat(0x19);
SendDat(0x06);
SendDat(0x14);
SendDat(0x14);
SendDat(0x1D);
SendDat(0x20);
SendDat(0x1F);
SendDat(0x25);
SendDat(0x1E);
SendDat(0x20);
SendDat(0x30);
SendDat(0x1E);
SendDat(0x1E);
SendDat(0x22);
SendDat(0x21);
SendCom(0xFB);
SendDat(0x2C);
SendDat(0x23);
SendDat(0x20);
SendDat(0x20);
SendDat(0x23);
SendDat(0x2F);
SendDat(0x30);
SendDat(0x39);
SendDat(0x09);
SendDat(0x09);
SendDat(0x18);
SendDat(0x13);
SendDat(0x13);
SendDat(0x22);
SendDat(0x21);
SendCom(0xFC);
SendDat(0x19);
SendDat(0x2C);
SendDat(0x20);
SendDat(0x20);
SendDat(0x23);
SendDat(0x35);
SendDat(0x36);
SendDat(0x3F);
SendDat(0x03);
SendDat(0x03);
SendDat(0x18);
SendDat(0x13);
SendDat(0x13);
SendDat(0x22);
SendDat(0x21);
SendCom(0x35);
SendDat(0x00);
SendCom(0x2A);
SendDat(0x00);
SendDat(0x00);
SendDat(0x01);
SendDat(0x8F);
SendCom(0x2B);
SendDat(0x00);
SendDat(0x00);
SendDat(0x00);
SendDat(0xEF);
SendCom(0x2C);
SendCom(0x53);
SendDat(0x2C);
SendCom(0x55);
SendDat(0x00);
SendCom(0x29); // DISPON
delay_ms(50);
VXXXV
Открыл глаза
Сообщения: 49
Зарегистрирован: Сб фев 02, 2013 17:20:04
Откуда: Донецк

Re: Юзаем дисплеи от сотовых и других потаскунчиков.

Сообщение VXXXV »

Всеравно без изменений :(
HHIMERA
Друг Кота
Сообщения: 4583
Зарегистрирован: Вс дек 05, 2010 06:10:34
Откуда: ЮВ

Re: Юзаем дисплеи от сотовых и других потаскунчиков.

Сообщение HHIMERA »

"Разделяй и властвуй!"(С)
Оставьте одну только инициализацию (после инициализации вставьте вечный цикл)... или вставьте задержку после инициализации секунд на 5-6-10...
По первому включению должен быть цветной мусор на весь экран, без миганий и прочих артефактов... Если что-то не так, значит смотрите подключение и инициализацию...
Пересброс цветного мусора не даст... только передёргивание по питанию, частенько с паузой между включениями...
"Я не даю готовых решений, я заставляю думать!"(С)
VXXXV
Открыл глаза
Сообщения: 49
Зарегистрирован: Сб фев 02, 2013 17:20:04
Откуда: Донецк

Re: Юзаем дисплеи от сотовых и других потаскунчиков.

Сообщение VXXXV »

Цветной мусор есть, но когда делаю заливку экрана (любым цветом) то справа выезжают черные квадратики, в самом верху и с середины. Если так залить другой код только с инициалтзацией, квадраты не исчезнут, только если питание секунд на 5 отключить снова весь экран в мусоре.
MaxGoblin
Открыл глаза
Сообщения: 41
Зарегистрирован: Сб окт 29, 2011 21:46:14

Re: Юзаем дисплеи от сотовых и других потаскунчиков.

Сообщение MaxGoblin »

Я вот так например провел инициализацию.(Все работает так как надо).

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


void LCDinit ()// инициализация дисплея
{
WR = 1;
//CS=1;
RES = 0;
delay_ms(10);
RES = 1;
delay_ms(100);
CS=0;
SendCom(0xF3);
SendDat(0x80);
SendDat(0x00);
SendDat(0x00);
SendDat(0x0B);
SendDat(0x33);
SendDat(0x7F);
SendDat(0x7F);
SendCom(0xF4);
SendDat(0x6E);
SendDat(0x6E);
SendDat(0x7F);
SendDat(0x7F);
SendDat(0x33);
SendCom(0xF5);
SendDat(0x12);
SendDat(0x00);
SendDat(0x03);
SendDat(0xF0);
SendDat(0x70);
SendCom(0x11);
delay_ms(100);
SendCom(0x36);
SendDat(0x14);
SendCom(0x3A);
SendDat(0x77);
delay_ms(30);
SendCom(0xF2);
SendDat(0x14);
SendDat(0x14);
SendDat(0x03);
SendDat(0x03);
SendDat(0x04);
SendDat(0x03);
SendDat(0x04);
SendDat(0x10);
SendDat(0x04);
SendDat(0x14);
SendDat(0x14);
SendCom(0xFD);
SendDat(0x22);
SendDat(0x01);
SendCom(0x51);
SendDat(0x00);
SendCom(0x5E);
SendDat(0x00);
SendCom(0xCA);
SendDat(0x80);
SendDat(0x80);
SendDat(0x20);
SendCom(0xCB);
SendDat(0x03);
SendCom(0xCC);
SendDat(0x20);
SendDat(0x01);
SendDat(0x8F);
SendCom(0xCD);
SendDat(0x7C);
SendDat(0x01);
SendCom(0x35);
SendDat(0x00);
SendCom(0x2A);
SendDat(0x00);
SendDat(0x00);
SendDat(0x01);
SendDat(0x8F);
SendCom(0x2B);
SendDat(0x00);
SendDat(0x00);
SendDat(0x00);
SendDat(0xEF);
SendCom(0x2C);
SendCom(0x53);
SendDat(0x2C);
SendCom(0x55);
SendDat(0x00);
SendCom(0x29); // DISPON
delay_ms(50);
}




И вот так описал функцию очистки экрана.





void CLSLcd(void)
{
unsigned int i, k; // объявляем переменную i
CS=0; //Ноль
//----------
SendCom(0x2A); //Команда ориетации по Y координате
SendDat(0x0); //Данныеначала Y координат (0)
SendDat(0x0); //
SendDat(0); //Данные конца Y координат (240)
SendDat(240); //
//----------
SendCom(0x2B); //Команда ориетации по Х координате
SendDat(0x0); //Данныеначала X координат (0)
SendDat(0x0); //
SendDat(1); //Данные конца X координат (400)
SendDat(400); //
//----------
SendCom(0x2C); //Команда записи в память дисплея

for (i = 1; i <= 401; i++)
{
for (k = 1; k <= 241; k++)
{
SendDat(255); //
SendDat(255); //
SendDat(255); //
}
}
}



Заливка происходит равномерно по всему экрану и без дерганий.





to: VXXXV.

Может у вас что то не так описано в функции очистки что у вас квадратами рисует.
HHIMERA
Друг Кота
Сообщения: 4583
Зарегистрирован: Вс дек 05, 2010 06:10:34
Откуда: ЮВ

Re: Юзаем дисплеи от сотовых и других потаскунчиков.

Сообщение HHIMERA »

2VXXXV
Если по сбросу цветной мусор заполнил весь экран, значит играйтесь регистром COLMOD(3Ah)...
Попробуйте записать в него или 05H, или 55Н... и заливайте дисплей не 24-бит данными, а 16-бит... по два байта на точку...
F8H и 00H должны давать красный цвет заливки... 00Н и 00Н - чёрный, а FFH и FFH - белый...
"Я не даю готовых решений, я заставляю думать!"(С)
VXXXV
Открыл глаза
Сообщения: 49
Зарегистрирован: Сб фев 02, 2013 17:20:04
Откуда: Донецк

Re: Юзаем дисплеи от сотовых и других потаскунчиков.

Сообщение VXXXV »

Все перепробывал, когда выводятся другие цвета квадратов, то видно их мерцание. Цвета меняются даже когда другое значение яркости ставлю, в основном черный чаще выскакивает. Может я дисп подпалил немного. Вот фото квадратов
Изображение
Chettuser

Re: Юзаем дисплеи от сотовых и других потаскунчиков.

Сообщение Chettuser »

Народ, длинные простыни текста можно спрятать под спойлер, например:
Спойлер...текст...
VXXXV
Открыл глаза
Сообщения: 49
Зарегистрирован: Сб фев 02, 2013 17:20:04
Откуда: Донецк

Re: Юзаем дисплеи от сотовых и других потаскунчиков.

Сообщение VXXXV »

Новый перл от китая. Поехал купил дисплей китайский и шлейф, тоже китайский. Решил востановить телефон, вкинул новый шлейф а телефон фигушки. Пришлось брать выпаивать разъем и впаивать в оригинальный шлейф, после этого телефон ожил. Затем настала очередь дисплея с поднебесной, купленого за 10у.е. Неменяя в инициализации ничего, снова мусор, а при закраске экрана черт знает что. Пробывал разные коды, но результат тот же, на регистр 0х36 полный мороз. Подсветка очень яркая снизу (на фото видно почти белый цвет вместо желтого), вобщем качество г.... Дисплеи нокии те что я брал (тоже китай) по качеству как оригинал, ну а у самсунга...вобщем ложу их на дальнюю полку.
Изображение
MaxGoblin
Открыл глаза
Сообщения: 41
Зарегистрирован: Сб окт 29, 2011 21:46:14

Re: Юзаем дисплеи от сотовых и других потаскунчиков.

Сообщение MaxGoblin »

А предыдущий экран который вы подключали тоже китаец?
VXXXV
Открыл глаза
Сообщения: 49
Зарегистрирован: Сб фев 02, 2013 17:20:04
Откуда: Донецк

Re: Юзаем дисплеи от сотовых и других потаскунчиков.

Сообщение VXXXV »

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

Вернуться в «Периферия»