Дисплеи от мобильных телефонов- осцилограммы работы
- neonix
- Электрический кот
- Сообщения: 1040
- Зарегистрирован: Чт фев 19, 2009 17:46:34
- Контактная информация:
Re: Дисплеи от мобильных телефонов- осцилограммы работы
Напиши свой код, я гляну скажу что подправить. У меня как раз такой дисплей в проекте используется. С той инициализацией, что у меня всё работает исправно, возможно проблема с временными задержками.
Where technology meets enjoyment.
- plutonium
- Первый раз сказал Мяу!
- Сообщения: 36
- Зарегистрирован: Чт окт 21, 2010 21:05:35
- Откуда: г.Архангельск
- Контактная информация:
Re: Дисплеи от мобильных телефонов- осцилограммы работы
Вот сама ини
Я пишу на паскале... ну думаю тут все понятно
а вот отправка на дисплей непосредственно
собсно тут тема такая что при переходе с RS=0 в RS=1 или наоборот дергается CS. при подаче только данных CS не дергаю
тут я отрабатываю как по диаграмме
Код: Выделить всё
RESET:=0;
delay_ms(100);
RESET:=1;
delay_ms(1000);
write(cmd,0x01); //reset sw
delay_ms(50);
write(cmd,0x03); //Booster voltage ON
delay_ms(40);
Write(cmd,0x11); //sleep out
delay_ms(40);
Write(cmd,0xc6); //initial escape
delay_ms(40);
Write(cmd,0xb9); //Refresh set
write(dat,0x00);
write(cmd,0xb6); //Display control
Write(dat,0x80); //
Write(dat,0x04); //
Write(dat,0x8a); //
write(dat,0x54); //
write(dat,0x45); //
Write(dat,0x52); //
Write(dat,0x43); //
write(cmd,0xb3); //Gray scale position set 0
Write(dat,0x02); //
Write(dat,0x0a); //
Write(dat,0x15); //
write(dat,0x1f); //
write(dat,0x28); //
Write(dat,0x30); //
Write(dat,0x37); //
Write(dat,0x3f); //
Write(dat,0x47); //
Write(dat,0x4c); //
write(dat,0x54); //
write(dat,0x65); //
Write(dat,0x75); //
Write(dat,0x80); //
Write(dat,0x85); //
write(cmd,0xb5); //Gamma curve
Write(dat,0x01); //
write(cmd,0xb7); //Temperature gradient
Write(dat,0x00); //
Write(dat,0x00); //
Write(dat,0x00); //
write(dat,0x00); //
write(dat,0x00); //
Write(dat,0x00); //
Write(dat,0x00); //
Write(dat,0x00); //
Write(dat,0x00); //
Write(dat,0x00); //
write(dat,0x00); //
write(dat,0x00); //
Write(dat,0x00); //
Write(dat,0x00); //
write(cmd,0xbd); //Common driver output select
Write(dat,0x00); //
write(cmd,0x36); //Memory access control
Write(dat,0x48); //
write(cmd,0x2d); //Colour set
Write(dat,0x00); //
Write(dat,0x03); //
Write(dat,0x05); //
write(dat,0x07); //
write(dat,0x09); //
Write(dat,0x0b); //
Write(dat,0x0d); //
Write(dat,0x0f); //
Write(dat,0x00); //
Write(dat,0x03); //
write(dat,0x05); //
write(dat,0x07); //
write(dat,0x09); //
Write(dat,0x0b); //
Write(dat,0x0d); //
Write(dat,0x0f); //
Write(dat,0x00); //
Write(dat,0x05); //
write(dat,0x0b); //
write(dat,0x0f); //
write(cmd,0xba); //Voltage control
Write(dat,0x2f); //
Write(dat,0x03); //
write(cmd,0x25); //Write contrast
Write(dat,0x7f); //
write(cmd,0xbe); //Power control
Write(dat,0x59); //
write(cmd,0x3a); //interfase pixel format
Write(dat,0x03); //
write(cmd,0x29); //Display ON
end;
Я пишу на паскале... ну думаю тут все понятно
а вот отправка на дисплей непосредственно
Код: Выделить всё
const
CMD:boolean=0;
DAT:boolean=1;
procedure write(w:boolean;datt:byte);
var i:byte;
begin
Clk:=0; // ставлю все в 0
Outd:=0;
if (old=1) and (w=0) then // проверяю старое значение RS
begin
CS:=1;
RS:=w;
CS:=0;
end;
if (old=0) and (w=1) then // собсно тоже
begin
CS:=1;
RS:=w;
CS:=0;
end;
if (old=0) and (w=0) then // и тут (мол если прутся одни команды то дергаем CS)
begin
CS:=1;
RS:=w;
CS:=0;
end;
for i:=0 to 7 do //собсно цикл передачи данных
begin
Outd:=datt.B7; // ставлю в порт DAT 7бит
Clk:=1; // защелкиваю в дисплей
datt:=datt shl 1; // делаю смещение влево Байта
Clk:=0; // готовлю к следующей защелке
delay_us(40); // тяну время 40 микросекунд
end;
old:=w; // запоминаю значение RS
end;
собсно тут тема такая что при переходе с RS=0 в RS=1 или наоборот дергается CS. при подаче только данных CS не дергаю
тут я отрабатываю как по диаграмме
Последний раз редактировалось plutonium Вс окт 31, 2010 22:17:42, всего редактировалось 1 раз.
- neonix
- Электрический кот
- Сообщения: 1040
- Зарегистрирован: Чт фев 19, 2009 17:46:34
- Контактная информация:
Re: Дисплеи от мобильных телефонов- осцилограммы работы
Вроде глянул на первый взгляд всё верно, но для начала попробуй изменить немного.
Поправь в конце вот так вот:
Если так и не поможет то выложу всю инициализацию как у меня.
PS: на будущее лучше такие большие исходники прикладывать к посту вложением, а не просто текстом на всю страницу
Поправь в конце вот так вот:
Код: Выделить всё
write(cmd,0xba); //Voltage control
Write(dat,0x2f); //
Write(dat,0x03); //
write(cmd,0x25); //Write contrast
Write(dat,0x64); // Стоит поиграться со значением контраста, у меня в примере контраст 100, если больше то на дисплее ничего нет
write(cmd,0xbe); //Power control
Write(dat,0x58); // У меня пишется в этот регистр значение 0х58
write(cmd,0x3a); //interfase pixel format
Write(dat,0x03); //
_delay_ms(20); Перед включением ждем 20 миллисекунд
write(cmd,0x29); //Display ON
Если так и не поможет то выложу всю инициализацию как у меня.
PS: на будущее лучше такие большие исходники прикладывать к посту вложением, а не просто текстом на всю страницу
Where technology meets enjoyment.
- plutonium
- Первый раз сказал Мяу!
- Сообщения: 36
- Зарегистрирован: Чт окт 21, 2010 21:05:35
- Откуда: г.Архангельск
- Контактная информация:
Re: Дисплеи от мобильных телефонов- осцилограммы работы
Да на самом деле контраст играет немалую роль в этом действе.
Сделал как у тебя растр белые не появился... но по команде Memory write какая то хрень на экране появляется.
Буду пробовать что то вразумительное вывести на нем.
Да кстати... принцип вывода на дисплей:
Column adress set
Page Adress set
Write memory
я прав? или еще пачка подводных камней
з.ы. Сижу ковыряю, разбираюсь как вообще организована работа с ним... после ч/б LCD этот кажется таким маразмом...
У тебя есть какой недь кусок кода воодще хотябы что либо выводящий
Принцип бы понять
попытка применить данный код... черный не дышащий экран
k:=0;
while true do //бесконечный цикл
begin
inc(k); // увеличим к на 1 (использую как изменение цвета)
if k=256 then k:=0;
write(cmd,0x2c); //запись в память
for i:=0 to 83 do // координата y
begin
for j:=0 to 103 do write(dat,k); // координата х
end;
write(cmd,0x29); // тупо давим на включение экрана
delay_ms(100); //зырим
end;
Сделал как у тебя растр белые не появился... но по команде Memory write какая то хрень на экране появляется.
Буду пробовать что то вразумительное вывести на нем.
Да кстати... принцип вывода на дисплей:
Column adress set
Page Adress set
Write memory
я прав? или еще пачка подводных камней
з.ы. Сижу ковыряю, разбираюсь как вообще организована работа с ним... после ч/б LCD этот кажется таким маразмом...
У тебя есть какой недь кусок кода воодще хотябы что либо выводящий
попытка применить данный код... черный не дышащий экран
k:=0;
while true do //бесконечный цикл
begin
inc(k); // увеличим к на 1 (использую как изменение цвета)
if k=256 then k:=0;
write(cmd,0x2c); //запись в память
for i:=0 to 83 do // координата y
begin
for j:=0 to 103 do write(dat,k); // координата х
end;
write(cmd,0x29); // тупо давим на включение экрана
delay_ms(100); //зырим
end;
- neonix
- Электрический кот
- Сообщения: 1040
- Зарегистрирован: Чт фев 19, 2009 17:46:34
- Контактная информация:
Re: Дисплеи от мобильных телефонов- осцилограммы работы
Рисование на дисплее выглядит примерно так.
Код: Выделить всё
void LCD_Pixel(uint8_t xPos, uint8_t yPos,uint16_t color)
{
LCD_LO(LCD_CS);
//x-координата
lcd_Command(0x2A);
lcd_Data(xPos);
lcd_Data(100);
//Y-координата
lcd_Command(0x2B);
lcd_Data(yPos+1);
lcd_Data(80);
lcd_Command(0x2C); // WR_MEM
lcd_clr16(color); после mem wr рисуем на экране 0xFFFF - белый цвет, 0х0000 черный цвет
LCD_HI(LCD_CS);
}Код: Выделить всё
void lcd_clr16 (uint16_t dat) //данные 16 бит
{
uint8_t c = (dat>>8) & 0xff;
lcd_Data(c);
c = dat & 0xff; сдвигаем данные
lcd_Data(c);
}Where technology meets enjoyment.
- plutonium
- Первый раз сказал Мяу!
- Сообщения: 36
- Зарегистрирован: Чт окт 21, 2010 21:05:35
- Откуда: г.Архангельск
- Контактная информация:
Re: Дисплеи от мобильных телефонов- осцилограммы работы
нда... дурная голова ногам... все проблема крылась совершенно в другом... блин эти грабли
Подключал дисплей к порту А контроллера ATMega16, питал мегу 3,3в. 16МГц.
дисплей от 3310 работал без проблем, потому на сам порт не обращал внимания.
потом всетаки решил чиркануть тест на все единицы всех портов. Измерил мультиком...
порты B,C,D единица= 3,2в. а вот порт А единица=2,5в. !!!
вся проблема крылась в ножках AREF, AVCC они висели в воздухе. запитал от 3,3в - единичка в порту А
выросла до 3,2в. Дисплей ожил мгновенно.
neonix огромный сенкс за помощь. Вот приперли еще дисплей LPH9157-2 от Siemens C75 ME75. Красава! экранищще.
да инфы нема, что за контроллер
Однозначное подтверждение: LPH8731-3C (Siemens A60,C60,M55,MC60,S55) имеет полностью совместимый контроллер EPSON S1D15G14

Подключал дисплей к порту А контроллера ATMega16, питал мегу 3,3в. 16МГц.
дисплей от 3310 работал без проблем, потому на сам порт не обращал внимания.
потом всетаки решил чиркануть тест на все единицы всех портов. Измерил мультиком...
порты B,C,D единица= 3,2в. а вот порт А единица=2,5в. !!!
вся проблема крылась в ножках AREF, AVCC они висели в воздухе. запитал от 3,3в - единичка в порту А
выросла до 3,2в. Дисплей ожил мгновенно.
neonix огромный сенкс за помощь. Вот приперли еще дисплей LPH9157-2 от Siemens C75 ME75. Красава! экранищще.
да инфы нема, что за контроллер
Однозначное подтверждение: LPH8731-3C (Siemens A60,C60,M55,MC60,S55) имеет полностью совместимый контроллер EPSON S1D15G14
- Вложения
-
- S55.jpg
- +
- (29.76 КБ) 16091 скачивание
Последний раз редактировалось plutonium Вс окт 31, 2010 21:47:28, всего редактировалось 1 раз.
- neonix
- Электрический кот
- Сообщения: 1040
- Зарегистрирован: Чт фев 19, 2009 17:46:34
- Контактная информация:
Re: Дисплеи от мобильных телефонов- осцилограммы работы
Ну и отлично , что всё заработало, на будущее советую ни при каких обстоятельствах не оставлять не подключенными питающие и земляные ноги МК, сам на такие грабли натыкался
Кстати у меня есть инициализация от LPH9157-2, но только она криво снялась ибо там очень высокая частота SPI, есть небольшие догадки о используемом в нём контроллере. Возможно будет время и я изучу этот дисплей по подробней и поделюсь с общественностью 
Where technology meets enjoyment.
- plutonium
- Первый раз сказал Мяу!
- Сообщения: 36
- Зарегистрирован: Чт окт 21, 2010 21:05:35
- Откуда: г.Архангельск
- Контактная информация:
Re: Дисплеи от мобильных телефонов- осцилограммы работы
Вот пока отложил М55 дисплей, сейчас тоже займусь LPH9157-2
догадок по контроллеру пока нет... но инет дал такую инфу по 132*176:
HD66766R - по идее отпадает - он для STN дисплеев (у нас TFT)
HX8303A
HD66773R - используется в модификации нашумевшего дисплея от CX65
S6D0114 (S6D0110)
LR38826 - Sharp контроллер, но по ходу не наш т.к. используется все в том же CX65 в LS020
короче тоже поковыряемся
такс для полноты картины, выкладываю только что наваяную распиновку этого дисплея

V_Sync я не использую (ну короче после обильного читания литературы, он используется для синхронизации встроенной в телефон Камеры, как я понял)
+VBOOST - я через резистор 550ом сажаю на +12в
-VBOOST - корпус.
догадок по контроллеру пока нет... но инет дал такую инфу по 132*176:
HD66766R - по идее отпадает - он для STN дисплеев (у нас TFT)
HX8303A
HD66773R - используется в модификации нашумевшего дисплея от CX65
S6D0114 (S6D0110)
LR38826 - Sharp контроллер, но по ходу не наш т.к. используется все в том же CX65 в LS020
короче тоже поковыряемся
такс для полноты картины, выкладываю только что наваяную распиновку этого дисплея
V_Sync я не использую (ну короче после обильного читания литературы, он используется для синхронизации встроенной в телефон Камеры, как я понял)
+VBOOST - я через резистор 550ом сажаю на +12в
-VBOOST - корпус.
- Вложения
-
- LPH9157-2.jpg
- *
- (39.75 КБ) 17703 скачивания
Последний раз редактировалось plutonium Вс окт 31, 2010 21:52:12, всего редактировалось 2 раза.
- plutonium
- Первый раз сказал Мяу!
- Сообщения: 36
- Зарегистрирован: Чт окт 21, 2010 21:05:35
- Откуда: г.Архангельск
- Контактная информация:
Re: Дисплеи от мобильных телефонов- осцилограммы работы
neonix
наверно всетаки обрадую... он запустился....
как ни смешно это звучит... НО ПО КОМАНДАМ ОН СОВМЕСТИМ с S1D15G14
Вот в него влетел код от M55
я делаю вывод что в нем контроллер не Sharp и не Hitachi
либо Epson либо Samsung... ну это так... мои предположения ничем не обоснованные

наверно всетаки обрадую... он запустился....
как ни смешно это звучит... НО ПО КОМАНДАМ ОН СОВМЕСТИМ с S1D15G14
Вот в него влетел код от M55
я делаю вывод что в нем контроллер не Sharp и не Hitachi
либо Epson либо Samsung... ну это так... мои предположения ничем не обоснованные
- Вложения
-
- C75.jpg
- +
- (31.73 КБ) 14221 скачивание
Последний раз редактировалось plutonium Вс окт 31, 2010 21:54:06, всего редактировалось 1 раз.
- neonix
- Электрический кот
- Сообщения: 1040
- Зарегистрирован: Чт фев 19, 2009 17:46:34
- Контактная информация:
Re: Дисплеи от мобильных телефонов- осцилограммы работы
Ну контроллер в нём кажеться Alps Solomon SSD1286 serial, ибо так его определяла прога которая читает инфу из сименсов. Я находил исходник под SSD1286, правда с паралельной шиной. Команды частично совпадали со снятыми мною. Этот контроллер или нет точно установить не удалось 
updated ----------
Ух ты, здорово блин, а всегда стабильно картинка рисуеться ??? А то может и того, что есть хватит для работы с ним
Кстати рано обрадовались, ведь по ходу дела он показывает в режиме 4096 цветов, это режим энергосбережения,а этот дисплей 262 тыс цветов. Всё таки приодеться разбираться с инициализацией.
updated ----------
Ух ты, здорово блин, а всегда стабильно картинка рисуеться ??? А то может и того, что есть хватит для работы с ним
Кстати рано обрадовались, ведь по ходу дела он показывает в режиме 4096 цветов, это режим энергосбережения,а этот дисплей 262 тыс цветов. Всё таки приодеться разбираться с инициализацией.
Последний раз редактировалось neonix Сб окт 30, 2010 14:13:10, всего редактировалось 1 раз.
Where technology meets enjoyment.
- plutonium
- Первый раз сказал Мяу!
- Сообщения: 36
- Зарегистрирован: Чт окт 21, 2010 21:05:35
- Откуда: г.Архангельск
- Контактная информация:
Re: Дисплеи от мобильных телефонов- осцилограммы работы
Рисуется всегда стабильно, при условии что контроллер и дисплей только включились (подали питание)
если потом контроллеру ATMega дать резет то больше не рисует
---
Рисует даже не в 4096 а в 256 цветов, (для своих поделок на М55 мне не нужно было 4096цветов)
если потом контроллеру ATMega дать резет то больше не рисует
---
Рисует даже не в 4096 а в 256 цветов, (для своих поделок на М55 мне не нужно было 4096цветов)
- neonix
- Электрический кот
- Сообщения: 1040
- Зарегистрирован: Чт фев 19, 2009 17:46:34
- Контактная информация:
Re: Дисплеи от мобильных телефонов- осцилограммы работы
Значит точно режим энергосбережения, попробуй убрать всю начальную инициализацию из исходника, и оставить только рисование на дисплей. Интересно что получиться в итоге.
Where technology meets enjoyment.
- plutonium
- Первый раз сказал Мяу!
- Сообщения: 36
- Зарегистрирован: Чт окт 21, 2010 21:05:35
- Откуда: г.Архангельск
- Контактная информация:
Re: Дисплеи от мобильных телефонов- осцилограммы работы
Вообщем, это конечно извращения,
1. Убрана инициализация, только рисование - экран чист.
2. Инициализация включена но из нее убрано Display ON, Contrast,Pixel Format - экран чист
3. Инит оставлен, вкючен Display ON, Контраста нет, Pixel Format нет- инит проходит, рисует ЧБ...явно 1 пиксель на 8 бит рисует справа налево
4. Из Инита убрано все кроме: Booster ON, Sleep OUT, Initial Escape,Refresh Set,Display On - инит проходит, ЧБ экран, рисует слева направо
5. В конце концов в инициализации 2 команды: Sleep Out, Display ON - все также как по пункту 4
убрать какую либо команду из ини что в 5 пунке - дисплей чист не инициализируется...
о как
Собсно вот вывод на дисплей, все бы хорошо и по идее уже с ним можно работать попиксельно (в инициализацию добавлен Pixel Format). Но вопервых контрастность минимальная - он тусклый... ну и конечно не все его возможности известны... я ухожу в поиск мануала по твоему предположению на контроллер... нарою чего подскажу... кстати у тебя нет случаем мануала по SSD1286?
-------P.S. Даташит по SSD1286 нашел, по командам...хм да он вообще никак не сходится с тем как я его инициализирую
Вот что имею на данный момент:

1. Убрана инициализация, только рисование - экран чист.
2. Инициализация включена но из нее убрано Display ON, Contrast,Pixel Format - экран чист
3. Инит оставлен, вкючен Display ON, Контраста нет, Pixel Format нет- инит проходит, рисует ЧБ...явно 1 пиксель на 8 бит рисует справа налево
4. Из Инита убрано все кроме: Booster ON, Sleep OUT, Initial Escape,Refresh Set,Display On - инит проходит, ЧБ экран, рисует слева направо
5. В конце концов в инициализации 2 команды: Sleep Out, Display ON - все также как по пункту 4
убрать какую либо команду из ини что в 5 пунке - дисплей чист не инициализируется...
о как
Собсно вот вывод на дисплей, все бы хорошо и по идее уже с ним можно работать попиксельно (в инициализацию добавлен Pixel Format). Но вопервых контрастность минимальная - он тусклый... ну и конечно не все его возможности известны... я ухожу в поиск мануала по твоему предположению на контроллер... нарою чего подскажу... кстати у тебя нет случаем мануала по SSD1286?
-------P.S. Даташит по SSD1286 нашел, по командам...хм да он вообще никак не сходится с тем как я его инициализирую
Вот что имею на данный момент:
- Вложения
-
- c75-1.jpg
- (24.8 КБ) 13806 скачиваний
Последний раз редактировалось plutonium Вс окт 31, 2010 21:55:23, всего редактировалось 1 раз.
- neonix
- Электрический кот
- Сообщения: 1040
- Зарегистрирован: Чт фев 19, 2009 17:46:34
- Контактная информация:
Re: Дисплеи от мобильных телефонов- осцилограммы работы
Хм тогда вполне возможно что существует несколько вариантов дисплея. Значит тут другой контроллер, надо искать по даташитам на Epson'вские контроллеры. Но на ум ничего не приходит 
Where technology meets enjoyment.
- plutonium
- Первый раз сказал Мяу!
- Сообщения: 36
- Зарегистрирован: Чт окт 21, 2010 21:05:35
- Откуда: г.Архангельск
- Контактная информация:
Re: Дисплеи от мобильных телефонов- осцилограммы работы
Итак... походу Контроллер, что стоит в LPH9157-2 фирмы ILITEK, командами полностью совместим с контроллером ILI9163,
Правда ILI9163 для экранов размером 132*162. какой именно ILI в нашем пока не нашел. Собсно я скачал мануал по ILI9163, все его команды четко отрабатывают, что написано то и делает. Кстати молодцы китайцы, Мануалы у них расписаны от и до.
Да кстати.. на контроллере в LPH9157-2 нога EXTC посажена на 0. О чем это говорит? А говорит это о том что нам предоставляется урезаный набор команд, и разрешены команды от 0x00 до 0x3A и 0xDA до 0xDC - все что не входит данный диапазон не работает.
Вот тут возникает вопрос! Как регулировать яркость данного дисплея... из всего что я нашел в разрешенных командах что хоть както меняет яркость это команда 0х26 Gamma Set... да не тут то было - у этой команды всего 4 режима... из них по дефолту самый яркий (но яркость эта...мягко сказать... ничего не сказать). Есть команда Color Setting... это набор данных из 128 байт... что и как менять я ваще в полном улете
Это я так понял калибровочная таблица цветов.
Правда ILI9163 для экранов размером 132*162. какой именно ILI в нашем пока не нашел. Собсно я скачал мануал по ILI9163, все его команды четко отрабатывают, что написано то и делает. Кстати молодцы китайцы, Мануалы у них расписаны от и до.
Да кстати.. на контроллере в LPH9157-2 нога EXTC посажена на 0. О чем это говорит? А говорит это о том что нам предоставляется урезаный набор команд, и разрешены команды от 0x00 до 0x3A и 0xDA до 0xDC - все что не входит данный диапазон не работает.
Вот тут возникает вопрос! Как регулировать яркость данного дисплея... из всего что я нашел в разрешенных командах что хоть както меняет яркость это команда 0х26 Gamma Set... да не тут то было - у этой команды всего 4 режима... из них по дефолту самый яркий (но яркость эта...мягко сказать... ничего не сказать). Есть команда Color Setting... это набор данных из 128 байт... что и как менять я ваще в полном улете
- neonix
- Электрический кот
- Сообщения: 1040
- Зарегистрирован: Чт фев 19, 2009 17:46:34
- Контактная информация:
Re: Дисплеи от мобильных телефонов- осцилограммы работы
Вот блин, решил глянуть на свой дисплей, так он у меня другой с желтой подложкой! Это значит что я не так сильно и ошибался, по поводу контроллера в моём дисплее.
Where technology meets enjoyment.
- neonix
- Электрический кот
- Сообщения: 1040
- Зарегистрирован: Чт фев 19, 2009 17:46:34
- Контактная информация:
Re: Дисплеи от мобильных телефонов- осцилограммы работы
Подключил свой дисплей, со старым кодом от S1D15G14 он никак не реагирует, переписал код для SSD1286, появился мусор на экране нарисовать ничего так и не удалось. Пока даже незнаю куда двигаться дальше. Версия что есть несколько разных контроллеров подтвердилась 
Where technology meets enjoyment.
- plutonium
- Первый раз сказал Мяу!
- Сообщения: 36
- Зарегистрирован: Чт окт 21, 2010 21:05:35
- Откуда: г.Архангельск
- Контактная информация:
Re: Дисплеи от мобильных телефонов- осцилограммы работы
Я победил свой LPH9157-2 с зеленым текстолитом:

Отличный дисплей с минимум инициализации (4 команды), согласно командам основная работа попиксельная.
Вот инициализация, пожалуйте:
Команда по 0, Данные по 1
Цвет на пиксель передается за два байта D7R D6R D5R D4R D3R D2G D1G D0G D7G D6G D5G D4B D3B D2B D1B D0B
Отличный дисплей с минимум инициализации (4 команды), согласно командам основная работа попиксельная.
Вот инициализация, пожалуйте:
Команда по 0, Данные по 1
Код: Выделить всё
procedure init_m();
var
i:word;
begin
old:=0;
RS:=0;
CS:=1;
RESET:=0;
delay_ms(500);
RESET:=1;
delay_ms(500);
Write(cmd,0x01); //Софт резет контроллера дисплея
delay_ms(20);
write(cmd,0x36);//Способ передачи внутренней памяти в дисплейную (Зеркально по Х или по Y, сканировать слева направо или наоборот
write(dat,0x80);
Write(cmd,0x11); //Выходим из слип режима
delay_ms(20);
write(cmd,0x3a); //Информация о выводе пикселя
Write(dat,0x55); //Два байта на пиксель 65536 цветов
delay_ms(20);
write(cmd,0x29); //Включаем дисплей
end;
Цвет на пиксель передается за два байта D7R D6R D5R D4R D3R D2G D1G D0G D7G D6G D5G D4B D3B D2B D1B D0B
- Вложения
-
- C75-2.jpg
- (35.29 КБ) 14608 скачиваний
Последний раз редактировалось plutonium Вс окт 31, 2010 22:18:22, всего редактировалось 2 раза.
- neonix
- Электрический кот
- Сообщения: 1040
- Зарегистрирован: Чт фев 19, 2009 17:46:34
- Контактная информация:
Re: Дисплеи от мобильных телефонов- осцилограммы работы
plutonium здорово
У меня такой же лежит только с паралельной шиной, надо будет попробовать запустить с этим примером инициализации. А свой с желтой подложкой я еще не победил, уж больно заумный он. Пока добился отображения но всё мерцает и очень бледное изображение. Мучаю его дальше 
Where technology meets enjoyment.
- plutonium
- Первый раз сказал Мяу!
- Сообщения: 36
- Зарегистрирован: Чт окт 21, 2010 21:05:35
- Откуда: г.Архангельск
- Контактная информация:
Re: Дисплеи от мобильных телефонов- осцилограммы работы
нда... я почитал про этот SSD1286, он полностью 16 битный, все команды и данные посылаются двухбайтно. инициализация немаленькая. Я считаю что он для AVRки не очень подходит (я имею ввдиду самые распространенные AVR c 8-32кб), код большой. Значит для своих проектов, если искать дисплей, то LPH9157-2 с зеленым текстолитом.
Если применять знакогенератор 6*8 (5*7 буквы) то на экране получается 16строк по 29 букв. Очень неплохо.
Если применять знакогенератор 6*8 (5*7 буквы) то на экране получается 16строк по 29 букв. Очень неплохо.