Nanobyte 0 6 сентября, 2006 Опубликовано 6 сентября, 2006 · Жалоба Так ото-ж. Видимо, есть у контроллера вторая страница ОЗУ либо, что вероятнее, используется не простой линейный вывод на дисплей, а какой-нибудь чересстрочный, когда изображение проявляется на экране сразу во многих местах, и мерцание будет незаметно. Кстати, при изучении похожих DS, обратил внимание, что многие команды ждут начала развёртки. Может, в этом всё дело ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
EWAVR 0 15 сентября, 2006 Опубликовано 15 сентября, 2006 (изменено) · Жалоба Может ли кто-нибудь поделиться datasheet'ом на контроллеры, похожие на тот, что стоят в LS020? Экпериментальным путем нашел пару бесполезных команд для LS020: 0x11 [число] - циклическая вертикальная прокрутка на заданное число пикселей 0x00 0x40 - дисплей залит черным цветом 0x00 0x80 - дисплей залит белым цветом 0x00 0x00 - изображение восстанавливается 0x00 0x20 - отсчет по горизонтальной оси начинается справа. (Предполагается, что дисплей ориентирован так, как в телефоне) Изменено 15 сентября, 2006 пользователем EWAVR Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
GeorgeV 0 15 сентября, 2006 Опубликовано 15 сентября, 2006 · Жалоба Покопался в схемах на разные серии Сименсов MC60, C60, S55, S65. Похоже что S65 отличается развернутой на 180 градусов распиновкой. А в остальном все ноги совпадают. 8, 9, 10 - подсветка в различных вариантах, 6, 7 - питание и земля, 1 и 3 строки, столбцы (по крайней мере я так расшифровал), 2 - сброс, 4, 5 синхро и данные. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Nanobyte 0 15 сентября, 2006 Опубликовано 15 сентября, 2006 · Жалоба 2 EWAVR У немцев на форуме написано, что в LS020 применяется контроллер LR38826, но он выводит 256k цветов. Посмотрите прилагаемый список контроллеров от Sharp, может подходящий и найдётся. http://sharp-world.com/products/device/lin...lsi200607_e.pdf Вот DS на LR38826: LR38826.pdf DS на LR38826 и другие брал здесь: http://www.ic-on-line.cn/ Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Petka 0 16 сентября, 2006 Опубликовано 16 сентября, 2006 · Жалоба 2 Alexey Belyaev: Возможны следующие варианты: 1) Какой-то общий протокол. 2) Возможно, какая-либо линия, или несколько, двунаправленная (во время RESET, к примеру). 3) Наиболее вероятно, измеряют входное сопротивление линий. Что-то типа определения скорости при подключении к USB. Кстати, у супернемцев на форуме, этот вопрос обсуждается. 4) Почти невероятно - какой-либо датчик (сенсор) на телефоне. Схему пока подробно не рассматривал. По поводу Display ID - по всей видимости, отвечает программе главный процессор, а для него важно разрешение и глубина цвета, поэтому ID и одинаковый. Главное, разница есть, и управлять дисплеем приходится по разному. Есть ещё способ (или вариант (3)): 5) в разных типах дисплеев применены на некоторых входных линиях различные варианты подтяжек(pullup или pulldown). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Nanobyte 0 16 сентября, 2006 Опубликовано 16 сентября, 2006 · Жалоба Именно это и имелось в виду в варианте 3), т.е. как и в определении скорости для USB. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Petka 0 17 сентября, 2006 Опубликовано 17 сентября, 2006 · Жалоба Именно это и имелось в виду в варианте 3), т.е. как и в определении скорости для USB. Неа, видимо я плохо изъяснился. В USB устройство определяется по нагрузочному сопротивлению линий данных. Я же имел ввиду вот что: допустим устройство имеет только 8 входов. каждый из входов может быть подтянут внутри устройства либо к нулю, любо к единице. итого устройство может закодировать 256 значений. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Nanobyte 0 17 сентября, 2006 Опубликовано 17 сентября, 2006 · Жалоба Да, действительно, это я не понял . Очень даже вероятный способ. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Shadow_ru 0 29 сентября, 2006 Опубликовано 29 сентября, 2006 · Жалоба Человек вот тут http://rifer.ucoz.ru/forum/2-17-1 Разобрался с С55 дисплеем. Буду краток... схему распиновки можно найти в инете или из сервис-мануала по телу. Я зацепил его на AT90S2313 при питании 3.3V(кстати экран выдержал зверские эксперименты с повыщением питания до 5В), написал простую прогу для перебора начений внутренних регистров до появления картинки на экране. Как ни странно значения нашлись. вот они: LCD_Reset(); SPI.SCE=0; Send_SPI(0x21,0); // включить питание, расшир. команды Send_SPI(0x9,0); // включить внутренний геренатор питания дисплея LCD_Reset(); SPI.SCE=0; Send_SPI(0x21,0); // опять включить питание, расшир. команды Send_SPI(0x9,0); // и опять включить внутренний геренатор питания дисплея Send_SPI(0x9C,0); // установить напряжение этого генератора 7.6В Send_SPI('H',0); // установить что-то, без чего оно не рабоатет Send_SPI(0x20,0); // установить стандартные комманды Send_SPI(0x0C,0); // установить неинверсный дисплей если нужен инверсный то Send_SPI(0x20,0); // установить стандартные комманды Send_SPI(0x0D,0); // установить инверсный дисплей где 0х0С это значение записываемое в регистр, а число 0 после запятой означает что посылка именно в регистр. в общем вот void LCD_Reset() { SPI.DC=0; SPI.SCE=1; SPI.RST=0; // reset Delay(5000); // уж заресетим так заресетим! SPI.RST=1; // end reset Delay(500); } (прим. в Delay - число пропущенных тактов мк на частоте 11.059М) void Send_SPI(unsigned char d, char type) { char x; static char b; SPI.SCE=0; SPI.DC=type; for(x=8;x;x--) { if (d&0x80) SPI.DIN=1; else SPI.DIN=0; Delay(10); // ждём, пока установится значение на входе данных SPI.CLK=1; // тактуем d<<=1; Delay(10); // ждём, пока лсд примет бит SPI.CLK=0; // вырубаем такт } SPI.DIN=0; SPI.SCE=1; } кому надо, тот разберётся. РЕСЕТ НУЖНО СДЕЛАТЬ ИМЕННО ТАК! не знаю почему. но иначе он не пускается! буду рад услышать объяснения этому чудесному явлению на [email protected] адресация строк и столбцов на экране void SetXY(char xc,char yc) { Send_SPI(0x40 | yc,0); Send_SPI(0x80 | xc,0); } кстати нумерация строи идёт снизу(от контактов) вверх с 0-евой строки а экранчик очень хороший. отличная контрастность. красота! жаль маленький для самодельного mp3 плейера отлично подошел. всем спасибо. удачных разработок! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
sonycman 0 23 января, 2007 Опубликовано 23 января, 2007 (изменено) · Жалоба Тоже хочу прикрутить к меге цветной дисплей. x65 понравился - большой, и инфы в сети много. Но вот толковых даташитов, видимо, нет, жаль. у меня ATmega128 тактована от 20Mhz и SPI в sck/2. Всё равно видна отрисовка. Даже маленького квадратика. Ну это уже явно не AVR виноват. Значит, дисплей довольно медленно обновляет изображение. Запись-то идёт за мгновение. Это плохо. Последний раз имел дело с мелтовским индикатором МТ12232А - так там такие задержки на включение/выключение пикселя, что рисовать бегущую строку плавно весьма проблематично... Неужели и тут такая-же инертность будет? А проблему с контрастностью удалось победить? Изменено 23 января, 2007 пользователем sonycman Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
011119xx 0 29 января, 2007 Опубликовано 29 января, 2007 · Жалоба Теперь и у меня есть дисплей с обозначением LS020B8UD05. Буду пробовать. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
011119xx 0 29 января, 2007 Опубликовано 29 января, 2007 · Жалоба Странно, но в DS на LR38826 ничего конкретного не описано, так общая мало полезная информация. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
satellite-plus 0 29 января, 2007 Опубликовано 29 января, 2007 · Жалоба Странно, но в DS на LR38826 ничего конкретного не описано, так общая мало полезная информация. Посмотри тут. http://www.superkranz.de/christian/S65_Dis...aySoftware.html Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
011119xx 0 29 января, 2007 Опубликовано 29 января, 2007 · Жалоба Вот мой код для инициялизации. init_scr bcf bit_cs bsf bit_dc data_spi_word 0xfdfd data_spi_word 0xfdfd movlw 0x44 call delay_ms data_spi_word 0xef00 data_spi_word 0xee04 data_spi_word 0x1b04 data_spi_word 0xfefe data_spi_word 0xfefe data_spi_word 0xef90 data_spi_word 0x4a04 data_spi_word 0x7f3f data_spi_word 0xee04 data_spi_word 0x4306 movlw 0x07 call delay_ms data_spi_word 0xef90 data_spi_word 0x0983 data_spi_word 0x0800 data_spi_word 0x0baf data_spi_word 0x0a00 data_spi_word 0x0500 data_spi_word 0x0600 data_spi_word 0x0700 data_spi_word 0xef00 data_spi_word 0xee0c data_spi_word 0xef90 data_spi_word 0x0080 data_spi_word 0xefb0 data_spi_word 0x4902 data_spi_word 0xef00 data_spi_word 0x7f01 data_spi_word 0xe181 data_spi_word 0xe202 data_spi_word 0xe276 data_spi_word 0xe183 data_spi_word 0x8001 data_spi_word 0xef90 data_spi_word 0x0000 bsf bit_cs RETURN После инициализации на экране случайный мусор. У меня экран как на картинке, цоколевка правильная. Вывод reset цепляй на Uпитания экрана, из-за этого у меня долго не получалось,думал тоже что спалил контроллер но нет. На самом деле не сложно. А что у Вас в data_spi_word 0x0000? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Screw 0 29 января, 2007 Опубликовано 29 января, 2007 · Жалоба хочу вам кое чем помочь.... схемы на большинство телефонов можно взять тут: http://yasikgsm.narod.ru/ На С62 схему не ищите, не найдете. Это произведение компании Sony-Ericsson на их телефоны вообще нет никакой документации. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться