Страница 4 из 15
Добавлено: Вт авг 12, 2008 10:51:48
Иван23
интересная мысль надо попробовать
Добавлено: Ср авг 13, 2008 00:40:48
MetEl
yakuzaa писал(а):***
Вот не знаю что Нокия передаёт а мы все работаем не так.
И соответствует LPH7799 PCD8488-у, ЗАО"Пхилипс" по тех. требованиям чем каокойто, зачемто ещё один и даже циклический байт..
в диапазоне... на57й интерации...
Может "китайский" оригинальный??
Добавлено: Ср авг 13, 2008 09:17:18
yakuzaa
MetEl писал(а):yakuzaa писал(а):***
Вот не знаю что Нокия передаёт а мы все работаем не так.
И соответствует LPH7799 PCD8488-у, ЗАО"Пхилипс" по тех. требованиям чем каокойто, зачемто ещё один и даже циклический байт..
в диапазоне... на57й интерации...
Может "китайский" оригинальный??
почему тогда при установке в телефон "паленый" дисплей работает нормально?
Значит дело все-таки в порядке обмена командами! О! мысль! действительно! попробовать изменить *порядок* передачи команд дисплею - ну там контрасность, bias и т.д.

может поможет...

Добавлено: Ср авг 13, 2008 23:12:35
MetEl
временные диаграммы посмотри пжаста.
в полноте по ЖКД:
- время выставления лог уровней
- время считывания лог уровней (необходимое время удержания лог уровня на входе, необходимое, для гарантированного и правильного определения контроллером ЖКД)
- время обработки команд
- время выполнения команд
по МК
Отключить все прерывания(асм cli), лишние лишние функции и процедуры.
Высветить и погасить все пиксели используя аппаратные команды контроллера ЖКД.
И только после этого осуществить передачу видео информации(данных) на ЖКД.
Т.е. программно записать и стереть все ячейки(байты) матрицы ЖКД (по сути площадь дисплея является (контроллер одностраничного ЖКД) ОЗУ, с прямым выводом).
Далее изучая ТО ЖКД и сопряжения с контроллером, можно выявить неисправность(если она всётаки есть). К примеру-стр 23 ТО фигура 17, показывает что возможен отказ блоками по 24 строки(но может и по строчку...), либо по одному столбику.
стр 28 ТО позволяет определить прохождение токов и уровней напряжений (а значит и пульсаций) и их полярность от "генератора напряжения матрицы" и "биос генератора напряжения" (... сам репу чешу... блоки питания ключей матрицы ) стр 4 и их взаимодействие (стр 7) приводящее к открытию или закрытию ЖК пикселя (поляризации, в одну или в другую сторону, как именно не указывается) ... не всё понятно, хотя должно быть понятно и не спецам (надо знать что можно применить и как оно работает, к примеру сотру зеркальный слой и пропущу световое излучение, скажем, хочу проектор на стенку...пусть квадратный но меня устраивает ))) ).
ЗЫ: мне кажется что сдесь постоянный сбой, скорее с ОЗУ, а может и стеком. Налезают значения (ячейки ОЗУ) в вывод на дисплей. Отключите всё, толко одну страничку выведите(один раз). Всё работает. И правильно (по ТехническимТребованиям и ТО и ПС) ))).
Дайте код.
Добавлено: Чт авг 14, 2008 11:29:22
yakuzaa
вот исходный код пультика для ImageCraft ICCAVR:
http://www.microsyl.com/mp3/Remote.zip
с оригинальным дисплеем пашет нормально! ))
Добавлено: Чт авг 14, 2008 12:21:02
MetEl
Как то слишком мудрёно !!!
(((
не по данной теме...
Желание ничего не делать, а пользоваться уже готовым приводит к деградации способностей мозгов. А также приводит к штампованию решений и понятий. Узких и не всегда правильных. И как всегда это распространяется по нэту....
Дело в том , что один чел написал и все за ним , тупо переписывают. Не вникая не во что. А все хватаюи и радуются (((
А важен подход, зачем и почему так сделано. Можно конечно и по другому или даже не так совсем. Но для этого нужно самому, разобраться обязательно!
по данной теме.
ЖКД разных производителей совершенно обоснованно могут отличаться друг от друга, в рамках ТХ и Т.Условий. Это связано не только с широтой и климатом завода изготовителя но и в основном, материалами и т.оборудованием и даже технологией, которое используется при изготовлении. Ничего в этом такого нет, чтоб заострять внимание.
Вы как разработчик, укладываетесь во временные диаграммы ?!
стр 20 таб 12 и стр21 ??
не менее 100 нСек на удержание лог уровней.
Скажем, на сброс может быть потрачено до 30мСек (внутренняя схема). И пр.
Но по SPI(внешняя схема) все минимальные значения от 100нСек (т.е необходимо не менее 100нСек выждать после смены уровней, для реагирования ЖКД)
Если взять 10-к устройств, они тоже совершенно спокойно могут отличатся, по работе. Я не знаю, что и как передаёт мобильник, в котором оба ЖКД работают правильно. Но это же подтверждение, что чтото не правильно в сопряжении или программе!
Поставте задержку, в этой слишком запутанной программе. После смены любых управляющих сигналов. Этого там не сделано (не видно)... а должно! (с какой частотой(как быстро) МК переключает эти линии). Почему только в нижней части дисплея? Тоже вопрос... а что вы там пишете? Видать там и путаница. Возможно разрядность переменной, для координат по х и у. А может и вывод символов...
А также:
Какая частота и напряжение вашего МК. Какое напряжение подаёте на ЖКД?
ЗЫ: Конечно может вам бракованная партия досталась или не качественный товар(не прошедший ОТК).
ЗЫ ЗЫ:
Просто выведи на дисплей сам, один раз. Это будет уже решение проблемы. Она покажет бракованный или нет ЖКД.
Добавлено: Вт авг 19, 2008 09:28:35
yakuzaa
MetEl писал(а):
Вы как разработчик, укладываетесь во временные диаграммы ?!
стр 20 таб 12 и стр21 ??
не менее 100 нСек на удержание лог уровней.
Скажем, на сброс может быть потрачено до 30мСек (внутренняя схема). И пр.
Но по SPI(внешняя схема) все минимальные значения от 100нСек (т.е необходимо не менее 100нСек выждать после смены уровней, для реагирования ЖКД)
это конечно идея! обязательно попробую вклинить задержки после установки лог. уровней на D/C, Reset и т.д.!
но впредь работаю только с оригинальными дисплеями - с ними пашет все отлично и проблем нет!
Уважаемый(ая) MetEl! Можете ли вы тогда обьяснить тот факт, что алгоритмы "общения" с дисплеем в разных проэктах по крайней мере десяти разных авторов построены по практически одной и той же логике, что на ICCAVR, что на BASCOM, что на WinAVR - все исключительно по ДШ! неужели все такие невнимательные?
Может причина все-таки в другом?
Добавлено: Вт авг 19, 2008 10:51:42
MetEl
слушай всё так муторно...
какого общения? общение оно двустороннее. А тут только вывод. (((
Или передача данных.
я не смотрел алгоритмы, и не очень собираюсь парится с этим.
наши деды придумали просто - один раз выкладываешь весь массив(видео) на дисплей, когда он уже заполнится(из разных частей программы). Т.е экранная память (страница видео памяти). И пока нет необходимости изображение не меняется. В промежутках между выводом делай чего хочешь. Дисплей с фиксацией. Что ещё надо???
Работа с видео массивом позволяет опрерировать с битами (пикселями) а значит и графикой и наложением и затиранием , всё что нужно. Одна проблема - массив большой(соответствующее ОЗУ нада...).
Если положение текста, знаков и пр. на дисплее статично (т.е не меняет своих координат) то буфер не нужен. Можно довольствоваться разовым выводом из разных мест программы. В зависимости от надобности и готовности значений.
Однако кмк проще работать с массивом.
В различных функ. , телах и пр. заносится значения в глоб. массив (или какнить по другому) и в одно месте , это всё сливается в ЖКД. А не сто раз на дню то сдесь кусок то там пол куска..
---------------------------
а между прочим, я только КНР-ские(может быть Тайваньские) и использовал... а разве другие есть???
Добавлено: Пт авг 22, 2008 07:08:17
yakuzaa
MetEl писал(а):
а между прочим, я только КНР-ские(может быть Тайваньские) и использовал... а разве другие есть???
О! тогда Вас не затруднит выложить проектик, который, как Вы утверждаете, работает с "тайваньским" дисплеем, если можно - а я вам фотку пришлю как Ваш проектик будет с "серыми дисплеями" работать (которые между прочим уже не только у нас в продаже появились) - если все будет нормально работать - снимаю шляпу и по-джентльменски извиняюсь!

Добавлено: Пт авг 22, 2008 08:25:28
MetEl
какой нафиг проект, говорил же, пропиши -
Код: Выделить всё
все используемые линии портов устанавливаются в режим - на выход.
регистры работы SPI прописать, скорость(от частоты МК, не более 4МГц ), ведущий (master), страшим битом вперёд (помоему).
reset=1;
delay_ms(500);
dc=0;
SPI(0x21); // включить питание, расшир. команды
SPI(0x13); // bias=3
SPI(0xC8); // включить внутренний источник, Vop=0x48;
SPI(0x20); // обычный набор инструкций
SPI(0x0c); // нормальный режим отображения D=1 E=0
dc=1;
i=0;
while(i<505)
{
SPI(255);
SPI(0);
i++;
};
i=0;
delay_ms(3000);
while (i<505)
{
SPI(00111100);
i++;
};
///
и посмотри чего получится.
Добавлено: Пт авг 22, 2008 13:26:43
Звероящер
yakuzaa
Подтверждаю, что дело в ЖКИ и там есть новая система команд.
Я перепробовал всё, включая длительности. Один фиг, смещение на 3 пикселя вверх есть.
Надо бы её найтить

Я пока не нашёл.
Добавлено: Пт авг 22, 2008 17:02:43
MetEl
удивляет, что все только фантазируют, но никто ни чего не делает???
не ищет(пытается, пробует, думает, проверяет, анализирует) ответов!
Добавлено: Сб авг 23, 2008 08:40:42
Звероящер
MetEl
Был бы у меня под рукой рабочий телефон, я бы быстро выяснил, где собака зарыта

Добавлено: Сб авг 23, 2008 08:46:54
MetEl
Вот опять...
Толку то, пугать МК, что щаз по трубе позвоню и тебя зарешают!
Он от этого работать не станет.
Но ведь если сам до ведёшь до ума!
Радость то какая, а главное разберёшься(!).
Что за привычка, спрашивать у других, а сам то что?!
Это не дело...
Добавлено: Вт янв 27, 2009 19:32:55
itronid
чтобы стереть мусор с дисплея просто заполните память ноликами =) Просто после инициализации там почти всегда мусор. По крйней мере у меня так.
Добавлено: Чт фев 05, 2009 15:26:13
lulu47
Та же проблемка : сдвиг строчек, мусор.
Подобрал для очистки экрана не 504, а 696 столбцов.
Нужные картинки вывожу, но программно извращаюсь.
Иначе картинка ломается. Принудительный инкркмент адреса
в строке не помогает.
В чем причина?
Добавлено: Пт фев 06, 2009 14:33:12
lulu47
Вот здесь заграничные коллеги обсуждают проблемку с N3310.
http://www.edaboard.com/ftopic324477.html
С картинками. И гадают какой контроллер поставлен в таком дисплее.
Добавлено: Пн мар 02, 2009 13:23:07
krolaka
я имею тоже етот дисплей никак не могу нормально его запустить
какие я только библиотеки не использовал ничо не помагает

у меня от нокии 3410. Нарыл что там контролер OM6206 или PCF8812 (102x65) разрешение 96x65. когда пишу
изображение в второй строке сдвигается на 6 пикселей в лево
когда пишу
изображение нормалное но проблема с шрифтом большым все сдвигается уже все перековырял ниче не могу зделать(
пишу ето
и нижняя строчка в один пиксель всегда с мусором уже очищал
Код: Выделить всё
void LcdClear ( void )
{
int i;
for ( i = 0; i <999; i++ )
{
LcdCache[i] = 0x00;
}
// Reset watermark pointers.
LoWaterMark = 0;
HiWaterMark = LCD_CACHE_SIZE - 1;
UpdateLcd = TRUE;
}
999 вместо LCD_CACHE_SIZE даже если посчитать 102х65/8=828.75
етого думал достаточно но мусор остался
посоветуйте

Добавлено: Пн мар 02, 2009 18:25:27
VenomXP
Для 3310 должно быть так:
Добавлено: Пт мар 06, 2009 17:37:01
kott
Коты! я тоже долго бился с 3310, нагуглил сайт, там вроде решили проблему
https://www.phreaker.us/forum/showthread.php?p=59912 буду пробовать на выходных, там вроде конфигурация другая и со строчками проблемы, вернее альтернативное решение, я собираю индикацию на 3310, в принципе не проблема сделать как рекомендует автор.