LCD Nokia 1202 + backpack (AVR)

Был у меня махонький breakout board с этим экранчиком, но однажды легким движением моей кривой руки он превратился в… мусор :) Экран был не закреплен никак, болтался на шлейфе, а шлейф тонкий, порвал в общем.
Решил, что надо понадежнее что-то. А заодно сразу на UART'е, чтобы для отладки можно было использовать в полевых условиях.

Вот что вышло:

0

Собственно начал с того, что решил попробовать свой ЛУТ на предмет 0,15/0,15. Ну так, just for fun :)
Вывел тестовый паттерн (4 вида дорожек/зазоров: 0,3/0,3 — 0,25/0,25 — 0,2/0,2 — 0,15/0,15):

1
2
3

(крупно фотки есть в архиве)

Прикольно, в принципе можно и 0,15/0,15 выводить, хотя оно мне пока вроде и без надобности.

Ну а так как все оборудование было вытащено из шкафов, решил, что надо еще что-то сделать, вот тут и родился backpack:

4

(красным — да-да, забыл отзеркалить >_<, пришлось переделать)

Травил в перекиси водорода с лимонной кислотой, как описано тут:

5

Все как писал evsi … Газует, аха :) В общем и целом травилось медленно… Нудно… Этак минут 40-50. Все это время болтал плату, чтобы сбивать газы. Честно говоря, после травления в хлорном железе — не понравилось. Да чистенько, да видно все, да травит очень щедяще.

6

Тут вот видно даже, что от цифры 2012 оторвалось немного тонера (задолго до того, как я достал плату), но цифра все равно почему-то не стравилась! Короче, для какого-то ответственного проекта, думаю, можно использовать. Но так, наверное, проще по старинке в ХЖ.

Раствор готовил четко по инструкции. То есть ровно 100мл 3% перекиси из аптеки + 30 грамм лимонки + соль. Может у нас какая перекись не такая или лимонка :) Может как всегда мои руки… Не знаю.

В итоге вышло нечто (лудил Розе, доставать хим. лужение и идти на балкон было лень):

7

Да я к тому же еще и накосячил (на фото обведен красным уже исправленный косяк):

8

Спешить, как говорится, вредно! :) Подтянул Reset не к питанию, а к земле :) В следствие чего схватил немало «лулзов» в процессе тестирования (камень определялся через раз, а так как я был уверен в пайке, отсутствии соплей и прочих вещей — 100% E-Test да, не сразу сообразил проверить, собственно, схематику). В общем, как и должно быть — заработало не сразу :)

Вид снизу:

9

И вот как-то так:

10

Камень: mega168, просто потому, что была в наличии в мелком корпусе.
Внутренний генератор на 8 MHz. Принимает команды по UART, на экран выводит ногодрыгом.
Сделано чисто для отладки, поэтому никакой графики. В наличии имеется 2 шрифта поменьше с полным набором символов, и 2 крупных — только цифры. Прошивку сильно не вылизывал, так, по-быстрому накатал на Ардуине, да-да :)
Команды поддерживает следующие: установка яркости подсветки, выбор шрифта, установка курсора в положение xy, вкл./выкл. инверсии дислпея, вкл./выкл. горизонтального отражения, вкл./выкл. вертикального отражения, очистка экрана, перенос строки.
Все это в принципе видно по прошивке. Если вдруг кому надо будет — распишу подробнее.

Прошивка, схемы и прочее — в аттаче. Надеюсь, кому-нибудь да будет полезно :)
Файлы в топике: nokia1202usart_code.zip, nokia1202usart_pcb.zip

Комментарии (37)

RSS свернуть / развернуть
Эх, давно я что-то не травил, а тут такой пост в деталях. Пря мо таки бальзам :)
0
=)
0
where i can find some information about the pin space in this lcd.....i decide to design a pcb for this lcd but i can't find any info about the pins space....can you send me part of your pcb which contain 1202 lcd pin space please...? here is my e mail address: kenza1370@yahoo.com
(tnx a lot & sorry for my english :D)
0
0
А лутишь чем?
0
А что конкретно интересует? Прикатка? Ламинатор.
0
Вот ламинатор и интересовал. Анализируя грабли лута и тех, кто им занимается осознаю, что лучше чем прикатка ламинатором (горячим силиконовым валом) альтернатив нет. :)
0
Я пробовал с алюминиевой фольгой в качестве носителя и ламинатором. 0.15 получаются легко. Единственная засада с ламинатором — заготовку нужно прокатывать много раз (раз 20) и стараться не давать заготовке остывать между прокатками.
0
Ну… Я катаю ровно 2 раза… На примерно 100 градусах (очень примерно, т.к. померить нечем, но если ламинатор на максимуме должен выдавать 160, тогда у меня, наверное, 100).
Без фольги и других прослоек. То есть просто листочек (все на той же Лентовской бумаге) приложен к плате и вот так прямо в ламинатор.
0
Я пробовал фольгу не в качестве прослойки, а для переноса рисунка. То есть сначала печать на фольге, а потом прямо фольгу и катал в ламинаторе. Количество прокатываний, видимо, здорово зависит от принтера (точнее тонера) и самого ламинатора. У меня при количестве прокатываний менее десятка рисунок почти не переносился, а к ~полутора десяткам раз переносился достаточно хорошо, но для надежности я прокатывал еще несколько раз.
0
Наверное, именно тонер. Ну мне так кажется. Ламинатор то что? Там разве что температура разная, так она регулируется же?
Тонер у меня фирмы Cactus (точнее картридж).
0
У меня, кстати, в ламинаторе температура не регулируется.
0
А, ну это другое дело.
0
ламинатор ламинатору рознь. Температуру валов надо поднимать, да и электронику там менять полностью. Меня из-за таких доработок жаба душит покупать новый.
0
А мне вот придется походу, ато только мелкие платки делать могу, купил с дуру А5 ламинатор :)
0
В ширину он миллиметров 160 должен брать, а по длине ограничения у него нет. Этого более чем достаточно для подавляющего большинства случаев, IMHO.
0
Должен да не берет :) Китайски он, когда слишком по ширине близко к краям особенно 1,5 текстолит — начинает проскальзывать (валы застревают), и высоту регулировал и чего только ни делал — бесполезно :) Так что у меня в ширину, ну сантиметров 10 от силы — предел. А в длинну, да, в общем там без ограничений.
Но пока вроде и такого хватает.
0
У меня даже панели крайне редко выходят за 10см по узкой стороне…
0
Ну я то же с DIP'ов начинал, с толстенными такими дорогами :) Только вот еще потихоньку на SMD пересаживаюсь, и размеры платы уменьшаются. А если еще и 2-х сторонку освою, можно и того меньше делать будет. Так что может и с этим ламинатором долго продружу.
0
По длине ограничение таки есть — плата остывает. Чем длиннее — тем больше проходов, а более определенной длины и вовсе в многопроходности смысл исчезнет.
0
Температуру валов действительно поднимать надо, особенно если ЛУТ с толстой бумагой. Лично мне было лень менять электронику, поэтому я доработал имеющуюся. Вот схема электроники, срисованная с моего ламинатора, может кому пригодится:

Тут качество получше.
Суть доработки: изменение номинала R2 под свои нужды. В своем я, по-моему, уменьшал. Точно не помню. Решение не фонтан, но температуру валов поднимает, контроль температуры сохраняется. Встроенный показометр, конечно, начинает врать, хотя я ему и до этого не доверял. А, и еще… Владельцам ламинаторов китайского производства (читай: всем) обязательно проверить подшипники на валах, а то я нарвался на пластмассовые.
А еще можно обмотать сенсор полиамидной лентой :)
0
Да, замечал подобное. Текстолит не успевал прогреваться под бумагой и тонер не переносился. Но мне хватает 4-5 проходов для переноса, температура ламинатора на максимуме, 160 градусов, тонер родной самсунговский. С фольгой, по идее, должно побыстрее прогреваться.
0
А у меня с той бумагой, что сейчас использую, на максимуме плывут дороги с 1 прохода :) Особенно мелкие, типа 0,2|0,2.
Но вот вычислил, что на определенной температуре (пометил ее маркером) и на двух проходах переносится как раз идеально, и не отлетает и прикатывается хорошо. Интересно, какая температура получилась… Хоть беги термопару покупай :)
0
А у Вас работает LCD_NOKIA1202_DISPLAY_VLCD_VOP (0xE1)? Если после нее какое либо другое значение писать контраст меняется?
0
Судя по всему, на данном конкретном дисплее (моем) такой команды вообще нет :)
Почему? Тут что получается, когда я засылаю 0xE1 + от 0x61 до 0x9F происходит следующее: сначала экран ползет, затем контраст меняется. То есть по сути выполняются именно команды Display start line address set (это до 0x7F) на а затем Electronic volume (это с 0x80), который, кстати, прекрасно ставит контраст, так что я даже и не знаю, зачем вам так этот 0xE1 понадобился, и без него все супер, кмк :)
А может слать эту команду надо как-то по хитрому, не отпуская CS, например? Мне чичас некогда немного с этим возиться :)
0
Команда 0x3D — выбор коэффициента умножения. Ее бы хорошо использовать потому что по умолчанию умножение 5. 3вольта * 5 = 15 что больше максимально допустимого. Нормально установить умножение напряжения на 4. А эти две команды (E1 и 3D) имеют формат отличиный от остальных. То есть если заставить работать E1 то аналогично должен работать и 3D.
У меня тоже не работала. Хотя может и не нужна она. И при умножении на 5 все работает. we.easyelectronics.ru/OlegG/ispolzovanie-usart-stm32-dlya-upravleniya-lcd-nokia-1202.html.
0
Вот я о том же, работает же :) Дело не в том, что мне пофиг, просто ну чего там — экран китайский, стоит копейки, да и мало ли, чего там китайцы в нем намудрили?
Ну и с умножением опять же, у меня питается от 3,3 вольт, если на 5 множить, то это получается 16,5 — точно должен сгореть? А он не горит… По крайней мере пока что работал до часа и ничего. В общем, фиг его знает, мистерия…
0
У меня всё работает… и E1 и 3D…
Параметр передаётся как команда, но без передёргивания CS…
0
А как вы выяснили, что работает 3D? То есть это визуально видно? Хотя туплю, на контраст оно, наверное, влияет тоже, да?
но без передёргивания CS
А я ведь предполагал это чуть выше, угадал, ура-ура ;)
0
Спасибо за наводку. Скорее всего у меня в коде дело в модульности. Спец функция выполняет все действия по предаче символа в том числе и передергивание CS. Приду домой посмотрю.
По поводу макс напряжения — в даташите написано 14 вольт максимум.
0
А пост читал, да :) Он мне еще пригодится, когда буду к СТМ прикручивать :) Надо будет тоже попробовать через уарт пустить. Причем мне надо будет сразу 2-мя такими экранами рулить, ну, думаю, запаралелить их, и ножка CS поможет.
0
Кстати, изучая даташит на ste2007 ну на драйвер (DC Characteristics), я пришел к выводу, что он больше 13,5 вольт не может на бустере выдать, при любых установках параметров. Это вроде как физическое ограничение, а значит чего, по-идее, бояться? Сгореть точно не должно. Ну а про установку тут вон HHIMERA подтвердил, что надо просто не передергивать лишний раз CS. Хотя мне пока не попробовать — некогда :)
0
Согласно той же логике он Vdd тоже ограничивает 3,6 вольтами.
0
Не той же :) Мою логику вы не поняли.

По моей логике Vdd — это вход (хоть явно это и не прописано, но все же Power Supply Voltage). А значит значения в таблице для него расписаны как для входа, т.е. минимум, максимум и норма, которую мы на него можем подать.
А вот Vlcd — это явно выход, даже написано Booster Output. А значит для него расписаны минимум, максимум и норма, которые он может выдать (поэтому там в общем-то только максимум и написан).
Далее нигде по даташиту я не заметил (может пропустил?) предупреждений о том, что неправильная установка регистров управления бустером может привести к выдаче с него какого-то заоблачного питания… Наоборот, опять же на картинке в разделе про Vlcd потолок — 13,2 вольта, и опять никаких предупреждений.
Итого: это именно максимальное, что он может выдать, а не максимально для него допустимое.

Вот такая у меня логика.
0
Возможно Вы и правы. Тем более что там еще есть вывод Vlcd_sence, который является обратной связью.
0
И еще, кстати, в формуле, которая приводится для рассчета Vlcd, нет параметра Vdd. То есть по сути оно от входного напряжения вовсе не зависит. Например, там стоит опорник внутри. То есть в итоге по этой формуле мы получаем нечто от 3 вольт и до около 20 чтоли (забыл уже), но сверху максимум по характеристикам 13,5.

PS: на самом деле это все не утверждения, это я лишь предположил, и моя точка зрения может быть вовсе неверна :)
0
Существует ли библиотека под этот дисплей на ардуино? Хотелось бы построчно выводить символы на дисплей, отображать графику.
0
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.