Валерий Гончаренко продолжает свою серию статей по подключению и использованию дисплеев от мобильных телефонов Нокиа в своих проектах на микроконтроллерах AVR (за что ему громадное спасибо). Вот и сейчас он делится своим опытом по работе с цветными дисплеями. Итак, ему слово.
После благополучных тестов с монохромными дисплеями Nokia 1100, Nokia 1202 и т.д. появилось острое желание попробовать запустить и поиграться с цветным дисплеем – выбор пал на Nokia 6610 и ему подобных.
Почему? Есть несколько причин. Он относительно недорог (сильно зависит от ареала обитания его будущего хозяина 🙂 ), довольно распространен, имеет разъем подключения такой же, как и у дисплеев от Nokia 1110i, имеет разрешение 132×132 пикселя, 65535 цветов (это справедливо для оригинальных LCD – в основной массе 12-бит: 4096 цветов). При подключении используется SPI-протокол 9-бит, старшим битом вперед (MSB).
Обращаю ваше внимание, что также могут подойти (зависит от типа используемого в нем LCD-контроллера –см. ниже) и дисплеи от Nokia 2650/2600/3100/3200/5100/6100/6220/6610/6610i/7200/7210/7250/7250i/5410 . За основу для программы взял статью с немецкого сайта.
После долгого “гугления” и с помощью собственных тестов было выяснено, что существует три типа дисплеев совместимых с Nokia 6610 – каждый из них имеет собственный LCD-контроллер (разумеется, с собственной системой команд) – прошивка телефона определяет и поддерживает все типы, а именно:
- Phillips PCF8833
- Epson S1D15G10 (Внимание! С моей стороны были попытки подключения и по “даташитам” на контроллеры S1D15G00, S1D15G14, S1D15G17 – они схожи по системе команд с Epson: целью была задача определить какой же дисплей оказался у меня)
- Третий тип – это контроллер LDS176 – по системе команд полностью совместим с Phillips, также сюда входят контроллеры Epson – в которых более новые чипы (на них я “даташит” не нашел)
Вот ссылка, по которой подробно “разжевано” как определить тип LCD-контроллера, но мое личное мнение, что это не панацея – все сугубо индивидуально в каждом конкретном случае (мной было приобретено несколько оригинальных дисплеев, которые не смог запустить – может, были битыми, или более новый контроллер?!).
Наверное, самым оптимальным способом будет изготовление адаптера для дисплея + ATMega8 и проверка LCD при покупке, естественно при доступности магазина, или мастерской по ремонту телефонов. В результате тестов я стал счастливым обладателем дисплея с контроллером Phillips PCF8833.
На фото ниже дисплей который не смог запустить.
И другая сторона.
В дальнейших планах добавить в библиотеку и команды для LCD-контроллера Epson — но это в том случае если такой дисплей мне попадется.
“Распиновка” дисплея:
Библиотека написана на Си под свободно распространяемый компилятор Winavr-20100110 (в цифрах зашифрована дата выхода: 10 января 2010 года). Библиотеку максимально закомментировал – вопросов, думаю не должно возникнуть, на сегодняшний день реализованы функции вывода графики, следующей ступенью — по мере накопления у меня свободного времени для творчества, будет вывод текста, картинок. В архиве ниже найдете библиотеку и “даташиты”, а также переходник для подключения LCD к микроконтроллеру в формате lay (SprintLayout).
Для желающих сразу проверить свой дисплей (без компиляции программы), выводы адаптера LCD подключаем к порту С ATMega8, как указано ниже:
- PC0 – rst
- PC1 – cs
- PC2 – sda
- PC3 – sck
Прошивка:
Nokia6610_1– “фьюзы” Mega8 нужно установить для тактирования от внутреннего RC-генератора 8 МГц: CKSEL3=CKSEL1=CKSEL0=SUT0 – бит установлен (равен нолю), т.е. стоит галочка. Это справедливо для программ: Winpic800, PonyProg и AVRDUDE с оболочкой под Windows. Прилагаю таблицу с “фьюзами” для Mega8, думаю начинающим (и не только)она поможет.
Ну и напоследок простейшая схема адаптера для lcd-дисплея Nokia 6610:
Валерий Гончаренко
10 июня 2012 г.
Файлы к статье:
Вливайтесь в обсуждение
  9 комментариев
Chiper
13 лет назадСпасибо Валера. Хорошая статья. По приезду из отпуска обязательно использую твои дисплеи.
-Валера-
13 лет назадВсегда пожайлуста 🙂 На подходе обновление библиотеки с выводом текста.
Alex
11 лет назадЗдравствуйте!
Статья понравилась!
В сети немало ресурсов по LCD Nokia.
А вот у меня вопрос: как подключить дисплей от Samsung E1080?
На него нет даташитов; обращение в Samsung тоже не дало результатов, — мол коммерческая тайна и все тут.
Дисплей воспроизводит 65 тыс цветов. Немного меньше разрешение, чем у Nokia — всего 128*128 пикселей.
Почему спрашиваю об этом дисплее?
Просто осталась звнилка Samsung E1080. Рабочая, но без аккумулятора. Да еще к ней в свое время купил запасной дисплей Samsung E1080.
Вот бы эти дисплейчики приспособить для каких-либо проектов!
Chiper
11 лет назадТут надо искать информацию о том, какой контроллер применен в данном дисплее, потом искать систему команд этого контроллера, потом писать библиотеку. Так же надо найти схему телефона и посмотреть какие выводы дисплея задействованы и что означают, что бы подключить аналогично.
Юра Луняка
10 лет назадСпасибо за статью!Помогла запустить дисплей от Нокиа 6100 ,Phillips PCF8833.Юзаю в кодевижне.Пробую рисовать цифры в lsd vision от кодевижна.Вывожу в заданном месте экрана с помощью циклов.Но это просто пиксели. Сейчас ломаю ломаю голову как сделать соответствие между массивом шрифтов цифр и реальной переменной.Не подскажите концепцию сего действа? До этого использовал только семисегментные индикаторы.Спасибо.
Рамиль
9 лет назадКто нибудь знает где можно купить разъемчики под такой дисплей?
-Валера-
9 лет назадПопробуйте посмотреть в местном магазине Siriust.ru, либо пройтись по мастерским ремонтов телефонов- думаю найдутся не только шлейфы с разъемами, возможно и платы с оными. Еще как вариант — на Али посмотреть. Но этот вариант я не рассматривал, так как легко взял необходимое в «сириусе».
Алнксандр
5 лет назадЗдравствуйте, скажите, как такой диспле подключить к ардуине, спасибо
-Валера-
5 лет назадТак я вроде как в статье — выше рассказал как можно подключить к любому контролёру включая ардуино. Библиотека дисплея прилагается — скомпилируйте её под ваш контролёр и всё заработает.
Или в чём-то конкретно нужна помощь?