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

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

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


Аватара пользователя
Bird55
Первый раз сказал Мяу!
Сообщения: 39
Зарегистрирован: Вт сен 02, 2008 18:17:29

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

Сообщение Bird55 »

http://radiokot.ru/articles/29

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

Остался вопрос. Говорят, что эти дисплеи и "родной" и "китайский" работают в телефонах абсолютно одинаково. Как программный драйвер телефона знает, какой экран установлен?
Аватара пользователя
Aheir
Модератор
Сообщения: 4517
Зарегистрирован: Пн апр 03, 2006 11:43:25
Откуда: Санкт - Петербург
Контактная информация:

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

Сообщение Aheir »

Да, говорят такое. Сам не пробовал, врать не буду.
Подозреваю, что в телефоне идет построчный вывод информации. Алгоритм примерно такой: сдвинули дисплей вверх на нужное число строк (если дисплей оригинальный - он не прореагирует на это); поставили адрес строки - вывели 84 байта; поставили адрес второй строки - вывели следующие 84 байта и т.д. Т.е. обращения к памяти контроллера, не имеющей отображения на экране, не происходит и изображение не рассыпается. Мне кажется как-то так... Может, и не прав, кто что предложит?
Оптимизм х (Опыт + Знания) = const
Аватара пользователя
Mrgnstrn
Нашел транзистор. Понюхал.
Сообщения: 156
Зарегистрирован: Пн авг 17, 2009 21:13:13
Откуда: Россия, 02
Контактная информация:

Сообщение Mrgnstrn »

А вот интересно, при компилировании такой драйвер на кристале сколько памяти отжирает?
Аватара пользователя
Bird55
Первый раз сказал Мяу!
Сообщения: 39
Зарегистрирован: Вт сен 02, 2008 18:17:29

Сообщение Bird55 »

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


Согласен с алгоритмом, я так и делал, когда свой драйвер писал, но язнал что за дисплей. Но как телефон определяет на сколько строк сдвинуть? В случае "родного" - это 0 строк, а в случае "китайского" - 5, во всяком случае у меня было.
dspy
Родился
Сообщения: 14
Зарегистрирован: Чт фев 18, 2010 12:33:30

Сообщение dspy »

доброе время суток
подскажите пожалуйста можно ли этот драйвер переделать под программний spi, ато чтото не получается, постоянно ругается на размер масива.
заранее благодарен.
Аватара пользователя
Max
Админ
Сообщения: 10815
Зарегистрирован: Вт авг 23, 2005 15:23:25
Откуда: Москва
Контактная информация:

Сообщение Max »

А ссылку на статью кто-нить поставит, а?
Аватара пользователя
Aheir
Модератор
Сообщения: 4517
Зарегистрирован: Пн апр 03, 2006 11:43:25
Откуда: Санкт - Петербург
Контактная информация:

Сообщение Aheir »

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


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

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

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

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

Честно говоря, не вижу связи между "программностью" SPI и размерами массива. Переделать можно, почему нет..
Оптимизм х (Опыт + Знания) = const
dspy
Родился
Сообщения: 14
Зарегистрирован: Чт фев 18, 2010 12:33:30

Сообщение dspy »

я вот собал макет на 90usb162 и єкран 3310, на апаратном spi компилится нормально, а на программном ругается на размер масива знакогенератора
Аватара пользователя
Aheir
Модератор
Сообщения: 4517
Зарегистрирован: Пн апр 03, 2006 11:43:25
Откуда: Санкт - Петербург
Контактная информация:

Сообщение Aheir »

Охотно верю. Теперь предположите, пожалуйста, каким макаром это может быть связано? Что-то Вы там перемудрили, или в память оно не лезет, или переопределили что-то не то - я по телефону лечить не умею.)
Оптимизм х (Опыт + Знания) = const
Аватара пользователя
Bird55
Первый раз сказал Мяу!
Сообщения: 39
Зарегистрирован: Вт сен 02, 2008 18:17:29

Сообщение Bird55 »

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

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


Согласен, что такое возможно. К сожалению, не располагаю "родным" дисплеем, чтобы проверить.
dspy
Родился
Сообщения: 14
Зарегистрирован: Чт фев 18, 2010 12:33:30

Сообщение dspy »

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


вот исходник в CV если поможите заставить работаль с знакогенератором буду весьма благодарен.
прошу сильно не пинать т.к. прогаммировать только учусь
Вложения
at90usb162_3310lcd.txt
(15.33 КБ) 800 скачиваний
Аватара пользователя
Aheir
Модератор
Сообщения: 4517
Зарегистрирован: Пн апр 03, 2006 11:43:25
Откуда: Санкт - Петербург
Контактная информация:

Сообщение Aheir »

Ничего обещать не могу, однако одного txt мне явно маловато. Выкладывайте целиком проект, чтобы можно было сразу что-то открыть КВАВРом, а не создавать проект с неизвестно какими настройками под Ваш исходник.
Оптимизм х (Опыт + Знания) = const
dspy
Родился
Сообщения: 14
Зарегистрирован: Чт фев 18, 2010 12:33:30

Сообщение dspy »

выкладываю
Вложения
at90usb162.zip
(100.09 КБ) 703 скачивания
Аватара пользователя
Aheir
Модератор
Сообщения: 4517
Зарегистрирован: Пн апр 03, 2006 11:43:25
Откуда: Санкт - Петербург
Контактная информация:

Сообщение Aheir »

Мнэ-э-э-э... Я тут подумал... Если мне не изменяет память, у этого МК всего 512 байт ОЗУ, а там один экранный буфер 504 байта... Плюс таблица символов на кило с лишним... И куда ему все это пихать прикажете? Не, ну таблицу можно во флеш бросить, но все равно места даже на стек не остается)
Оптимизм х (Опыт + Знания) = const
dspy
Родился
Сообщения: 14
Зарегистрирован: Чт фев 18, 2010 12:33:30

Сообщение dspy »

Огромное спасибо за наводку на мысль, то что в нем 512 озу я совсем не учел. попробую на другом мк :)
Аватара пользователя
Aheir
Модератор
Сообщения: 4517
Зарегистрирован: Пн апр 03, 2006 11:43:25
Откуда: Санкт - Петербург
Контактная информация:

Сообщение Aheir »

Да не за что, надеюсь, все заработает. Отпишитесь потом, пожалуйста.
Оптимизм х (Опыт + Знания) = const
dspy
Родился
Сообщения: 14
Зарегистрирован: Чт фев 18, 2010 12:33:30

Сообщение dspy »

отпишусь обезательно. но это попозже т.к. нет свободного времени :(
а этот исходник работает: проходит инициализация, и выводит несколько букв
Аватара пользователя
valexus
Нашел транзистор. Понюхал.
Сообщения: 192
Зарегистрирован: Вс окт 04, 2009 21:19:32
Откуда: Украина , Житомир

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

Сообщение valexus »

Aheir, подскажи , пожалуйста, как ты логотип выводил на экран nokia 3310 , а то все работает . а картинку не могу вывести.
Заело -- нажми посильнее, сломалось -- не страшно , все равно надо было менять.
Аватара пользователя
Aheir
Модератор
Сообщения: 4517
Зарегистрирован: Пн апр 03, 2006 11:43:25
Откуда: Санкт - Петербург
Контактная информация:

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

Сообщение Aheir »

Функция

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

LcdImage (flash unsigned char *imageData);


Что не получается?
Оптимизм х (Опыт + Знания) = const
Аватара пользователя
valexus
Нашел транзистор. Понюхал.
Сообщения: 192
Зарегистрирован: Вс окт 04, 2009 21:19:32
Откуда: Украина , Житомир

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

Сообщение valexus »

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

Вернуться в «Статьи»