Вопросы и замечания по статьям и схемам, представленным на нашем сайте

При поддержке РадиоКОТструктор.ру


Ответить

Драйвер для LCD от Nokia 3310

Вт фев 16, 2010 23:25:52

http://radiokot.ru/articles/29

Спасибо, отличная статья. Сам в свое время разбирался с этим, но решил проблему несколько по другому. Знал только о возможности сдвига картинки, а про изменение порядка бит и зеркалироваение - нет.

Остался вопрос. Говорят, что эти дисплеи и "родной" и "китайский" работают в телефонах абсолютно одинаково. Как программный драйвер телефона знает, какой экран установлен?

Драйвер для LCD от Nokia 3310

Ср фев 17, 2010 21:07:42

Да, говорят такое. Сам не пробовал, врать не буду.
Подозреваю, что в телефоне идет построчный вывод информации. Алгоритм примерно такой: сдвинули дисплей вверх на нужное число строк (если дисплей оригинальный - он не прореагирует на это); поставили адрес строки - вывели 84 байта; поставили адрес второй строки - вывели следующие 84 байта и т.д. Т.е. обращения к памяти контроллера, не имеющей отображения на экране, не происходит и изображение не рассыпается. Мне кажется как-то так... Может, и не прав, кто что предложит?

Ср фев 17, 2010 23:34:00

А вот интересно, при компилировании такой драйвер на кристале сколько памяти отжирает?

Чт фев 18, 2010 10:17:53

Aheir писал(а):Да, говорят такое. Сам не пробовал, врать не буду.
Подозреваю, что в телефоне идет построчный вывод информации. Алгоритм примерно такой: сдвинули дисплей вверх на нужное число строк (если дисплей оригинальный - он не прореагирует на это); поставили адрес строки - вывели 84 байта; поставили адрес второй строки - вывели следующие 84 байта и т.д. Т.е. обращения к памяти контроллера, не имеющей отображения на экране, не происходит и изображение не рассыпается. Мне кажется как-то так... Может, и не прав, кто что предложит?


Согласен с алгоритмом, я так и делал, когда свой драйвер писал, но язнал что за дисплей. Но как телефон определяет на сколько строк сдвинуть? В случае "родного" - это 0 строк, а в случае "китайского" - 5, во всяком случае у меня было.

Чт фев 18, 2010 12:39:27

доброе время суток
подскажите пожалуйста можно ли этот драйвер переделать под программний spi, ато чтото не получается, постоянно ругается на размер масива.
заранее благодарен.

Чт фев 18, 2010 12:58:40

А ссылку на статью кто-нить поставит, а?

Сб фев 20, 2010 12:18:15

Mrgnstrn писал(а):А вот интересно, при компилировании такой драйвер на кристале сколько памяти отжирает?


Ой, дофига) При отсутсвии рисунков примерно 2,4кБ (это со всеми функциями и полной таблицей ASCII). Дальше - отпиливайте ненужное. Ну и ОЗУ надо как минимум 504 байта под экранный буфер. Так что, как и любые графические дисплеи, не для мелких камней - но там оно и не надо.

Bird55 писал(а):Но как телефон определяет на сколько строк сдвинуть?

Мне кажется, он просто двигает, поскольку "родной" дисплей на эту команду не реагирует. Может такое быть, как думаете?

dspy писал(а):можно ли этот драйвер переделать под программний spi?

Честно говоря, не вижу связи между "программностью" SPI и размерами массива. Переделать можно, почему нет..

Сб фев 20, 2010 19:38:59

я вот собал макет на 90usb162 и єкран 3310, на апаратном spi компилится нормально, а на программном ругается на размер масива знакогенератора

Сб фев 20, 2010 21:06:08

Охотно верю. Теперь предположите, пожалуйста, каким макаром это может быть связано? Что-то Вы там перемудрили, или в память оно не лезет, или переопределили что-то не то - я по телефону лечить не умею.)

Вс фев 21, 2010 09:31:05

Aheir писал(а):
Bird55 писал(а):Но как телефон определяет на сколько строк сдвинуть?

Мне кажется, он просто двигает, поскольку "родной" дисплей на эту команду не реагирует. Может такое быть, как думаете?


Согласен, что такое возможно. К сожалению, не располагаю "родным" дисплеем, чтобы проверить.

Пн фев 22, 2010 11:40:46

Aheir писал(а):Охотно верю. Теперь предположите, пожалуйста, каким макаром это может быть связано? Что-то Вы там перемудрили, или в память оно не лезет, или переопределили что-то не то - я по телефону лечить не умею.)


вот исходник в CV если поможите заставить работаль с знакогенератором буду весьма благодарен.
прошу сильно не пинать т.к. прогаммировать только учусь
Вложения
at90usb162_3310lcd.txt
(15.33 KiB) Скачиваний: 714

Вт фев 23, 2010 21:24:14

Ничего обещать не могу, однако одного txt мне явно маловато. Выкладывайте целиком проект, чтобы можно было сразу что-то открыть КВАВРом, а не создавать проект с неизвестно какими настройками под Ваш исходник.

Чт фев 25, 2010 08:44:42

выкладываю
Вложения
at90usb162.zip
(100.09 KiB) Скачиваний: 675

Пт фев 26, 2010 18:44:11

Мнэ-э-э-э... Я тут подумал... Если мне не изменяет память, у этого МК всего 512 байт ОЗУ, а там один экранный буфер 504 байта... Плюс таблица символов на кило с лишним... И куда ему все это пихать прикажете? Не, ну таблицу можно во флеш бросить, но все равно места даже на стек не остается)

Сб фев 27, 2010 10:31:17

Огромное спасибо за наводку на мысль, то что в нем 512 озу я совсем не учел. попробую на другом мк :)

Сб фев 27, 2010 21:02:07

Да не за что, надеюсь, все заработает. Отпишитесь потом, пожалуйста.

Вс фев 28, 2010 14:15:41

отпишусь обезательно. но это попозже т.к. нет свободного времени :(
а этот исходник работает: проходит инициализация, и выводит несколько букв

Re: Драйвер для LCD от Nokia 3310

Пн авг 23, 2010 17:25:55

Aheir, подскажи , пожалуйста, как ты логотип выводил на экран nokia 3310 , а то все работает . а картинку не могу вывести.

Re: Драйвер для LCD от Nokia 3310

Пн авг 23, 2010 20:47:48

Функция
Код:
LcdImage (flash unsigned char *imageData);


Что не получается?

Re: Драйвер для LCD от Nokia 3310

Чт авг 26, 2010 21:56:33

та функцию я понял , но вот с помощью какой программы был создан массив рисунка , который как я понимаю был прикомпилирован как picture.c ?
Ответить