Поиск по этому блогу

Показаны сообщения с ярлыком LCD. Показать все сообщения
Показаны сообщения с ярлыком LCD. Показать все сообщения

2 февр. 2014 г.

Работа с дисплеем 16x2 на контроллере HD44780 в Bascom-AVR

Жидкокристаллические дисплеи на контроллере HD44780 (а также совместимом с ним KS0066) очень распространены благодаря простому методу работы с ними, а так же небольшой цене. В зависимости от исполнения дисплея, они позволяют выводить от 8-и до 40-ка символов в каждой строке, строк может быть одна, две или четыре. Чаще всего встречаются 8*2 (восемь символов*две строки), 16*2 и 20*4.  


 Для примера рассмотрим распиновку индикатора 16*2 (у всех дисплеев на контроллере HD44780 она похожа)

 
У каждого дисплея на контроллере HD44780 для подключения имеется 14 выводов + 2 вывода для подсветки (если она имеется):

  1. Земля, GND
  2. Напряжение питания, Vcc (+5V)
  3. Настройка контрастности, Vo
  4. Выбор регистра, R/S
  5. Чтение/запись, R/W
  6. Сигнал разрешения чтения/записи, E
  7. Bit 0, D0 
  8. Bit 1, D1
  9. Bit 2, D2
  10. Bit 3, D3
  11. Bit 4, D4 
  12. Bit 5, D5
  13. Bit 6, D6
  14. Bit 7, D7 
  15. Питание подсветки для дисплеев с подсветкой, LED +
  16. Питание подсветки для дисплеев с подсветкой, LED -

Данные в дисплей загружаются по шине данных (D0-D7), при этом контроллер поддерживает как 8-и, так и 4-х битное подключение. 4-х битное подключение экономит ножки микроконтроллера и чаще всего достаточно для многих задач (при 8и битном подключении можно быстрее загружать данные в контроллер дисплея, но нам пока это ни к чему, поэтому не будем его рассматривать). Для 4-х битного подключения используются 4 последних бита шины (D4-D7).

В качестве примера будем использовать дисплей 20х4, подключенный к микроконтроллеру ATmega8 по 4х битному интерфейсу по схеме ниже


 Дисплей требует для питания 5 вольт, делителем на резисторе R1 настраивается контрастность отображаемых символов, вывод R/W подключается к земле (т.е. выбрана постоянная запись в дисплей). Подключать оставшиеся выводы можно к любым свободным ножкам микроконтроллера. Конфигурация ножек для подключения дисплея у микроконтроллера ATmega8 будет выглядеть следующим образом:

$regfile = "m8def.dat"                        'выбранный тип микроконтроллера
$crystal = 1000000                            'частота работы 1 МГц
Config Lcd = 20 * 4                           'указываем какой у нас дисплей

'и конфигурируем ножки для подключения
Config Lcdpin=Pin,Db4=PortB.3, Db5=PortB.2, Db6=PortB.1, Db7=PortB.0,E=PortB.4,Rs=PortB.5


А дальше уже можно выводить информацию на дисплей: буквы, цифры, специальные символы, а если извернуться и псевдографику. Для вывода данных на дисплей нужно знать несколько команд: 
CLS - очистка дисплея
LCD - вывести данные на дисплей (пример: Lcd "Hello world" выведет надпись Hello world)
Locate - установка места на индикаторе с которого начнется выводится текст (пример: Locate 1,5 установит курсор на 5-е знакоместо первой строчки и текст выводимый командой LCD будет начинаться отсюда)
CURSOR ON / OFF / BLINK / NOBLINK - включает или отключает отображение и мигание курсора, по умолчанию он включен (пример: отключим курсор командой Cursor Off)

А теперь напишем вот такую небольшую программку, которая выведет надпись на дисплей:

$regfile = "m8def.dat"      'выбранный тип микроконтроллера
$crystal = 1000000          'частота работы 1 МГц
Config Lcd = 20 * 4         'указываем какой у нас дисплей
'и конфигурируем ножки для подключения
Config Lcdpin=Pin,Db4=Portb.3, Db5=Portb.2, Db6=Portb.1, Db7=Portb.0,E=Portb.4,Rs=Portb.5

Cursor Off                  'выключим отображение курсора
Cls                         'очистим дисплей

Lcd "LCD 20*4 HD44780"      'выводим текст в первой строке
Locate 2 , 8                'переводим курсор на вторую строку, восьмое знакоместо
Lcd "AVRproject.ru"         'выводим текст

End


в результате на дисплее получим следующее:





 Также в Bascom-AVR есть еще несколько дополнительных команд для работы с дисплеями:

UPPERLINE - возвращает курсор на самую верхнюю строчку дисплея.
LOWERLINE - перевод курсора на вторую строку
THIRDLINE - перевод курсора на третью строку
FOURTHLINE - перевод курсора на четвертую строку 
HOME - также возвращает курсор на верхнюю строчку, но в отличии от команды UPPERLINE эта команда может принимать дополнительные значения: если после нее поставить букву L, T или F то курсор переместится в начало строчки, название которой начинается с соответствующей буквы (пример:  для того чтобы переместить курсор в начало третьей строки, нужно написать команду HOME T )


пример кода для вывода информации на дисплей с использованием этих команд:

$regfile = "m8def.dat"      'выбранный тип микроконтроллера
$crystal = 1000000          'частота работы 1 МГц

Config Lcd = 20 * 4         'указываем какой у нас дисплей
'и конфигурируем ножки для подключения
Config Lcdpin=Pin,Db4=Portb.3, Db5=Portb.2, Db6=Portb.1, Db7=Portb.0,E=Portb.4,Rs=Portb.5

Cursor Off                  'выключим отображение курсора
Cls                         'очистим дисплей

Lcd "*** HD44780  LCD ***"  'выводим текст в первой строке
Lowerline                   'переходим на вторую строку
Lcd "Line number 2"         'выводим текст
Thirdline                   'переходим на третью строку
Lcd "AaBbCcDdEeFfGgHfIiJj"  'выводим на третьей строке
Fourthline                  'переходим на четвертую строку
Lcd "1234567890"            'печатаем на четвертой строчке

End                         'конец программы







SHIFTLCD LEFT / RIGHT - сдвигает текст в строке на которой находится курсор на одну позицию влево или вправо. 
SHIFTCURSOR LEFT / RIGHT - сдвигает курсор на одну позицию влево или вправо 

и пример того как использовать сдвиг текста:

$regfile = "m8def.dat"    'выбранный тип микроконтроллера
$crystal = 1000000        'частота работы 1 МГц

Dim A As Byte             'переменная для организации цикла

Config Lcd = 20 * 4       'указываем какой у нас дисплей
'и конфигурируем ножки для подключения
Config Lcdpin=Pin,Db4=Portb.3, Db5=Portb.2, Db6=Portb.1, Db7=Portb.0,E=Portb.4,Rs=Portb.5

Cursor Off                'выключим отображение курсора
Cls                       'очистим дисплей

Locate 1 , 11             'устанавливаем курсор на первой строке, десятом знакоместе
Lcd "Bascom-AVR"          'выведем текст

'цикл сдвига влево
For A = 1 To 10           'повторяем этот цикл пока переменная А не достигнет значения 10
 Shiftlcd Left            'сдвинем текст влево
 Waitms 300               'задержка 300 миллисекунд
Next A                    'увеличиваем значение переменной А на 1

'цикл сдвига вправо
For A = 1 To 10           'повторяем цикл пока переменная А не достигнет значения 10
 Shiftlcd Right           'теперь сдвинем текст вправо
 Waitms 300               'задержка 300 миллисекунд
Next A                    'увеличиваем значение переменной А на 1

'продолжаем выполнение  программы
Wait 1                    'задержка 1 секунда

Home F                    'устанавливаем курсор на нижнюю строчку

Lcd "END PROGRAM"         'и выводим надпись

End                       'конец программы




28 янв. 2014 г.

Генератор изображений для LCD

Генератор изображений немного изменился, теперь он может создавать массивы картинок с максимальным разрешением 320х240.

Генератор изображений, Окно программы
Окно программы
Программа позволяет подготавливать монохромные картинки для графических дисплеев с разрешением от 4х8 до 320х240 с кратностью шага 4 по горизонтали, 8 по вертикали.

Из инструментов на данный момент доступны карандаш, масштабирование и добавление точечного рисунка.
Генератор изображений, Окно добавление картинки
Окно добавление картинки
Если этих средств вам недостаточно, то вы можете подготовить точечный рисунок в любом из графических редакторов и вставить в программу.
По завершению работ над изображением оно преобразуется в массив, который можно внедрить в прошивку микроконтроллера. К примеру, выше полученный рисунок будет выглядеть следующим образом:
01.static const char lcd_image_mas[768] =
02.{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
03.0x01, 0x03, 0x02, 0x06, 0x04, 0x0C, 0x08, 0x18, 0x10, 0x30, 0x20, 0x60,
04.0x40, 0xC0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
05.0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x1F, 0x7C, 0xF0, 0xE0,
06.0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
07.0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
08.0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
09.0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10.0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
11.0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
12.0x00, 0x00, 0x00, 0x01, 0x01, 0x02, 0x02, 0x04, 0x04, 0x08, 0x08, 0x10,
13.0x10, 0x20, 0x20, 0x40, 0x40, 0xC0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x03,
14.0x07, 0x1E, 0x7C, 0xF0, 0xC0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15.0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16.0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80,
17.0xC0, 0xC0, 0xC0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xC0, 0x00, 0x00,
18.0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
19.0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
20.0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00,
21.0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x02, 0x06,
22.0x06, 0x0C, 0x08, 0x88, 0xDB, 0x6F, 0xB8, 0xF8, 0xF0, 0xE8, 0x60, 0x70,
23.0x30, 0x70, 0x70, 0x78, 0x78, 0x78, 0x78, 0x78, 0x3C, 0x3C, 0x3C, 0x3C,
24.0x3C, 0x3E, 0x1E, 0x1E, 0x1E, 0x1F, 0x1F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F,
25.0x07, 0x07, 0x07, 0x07, 0x07, 0x03, 0x03, 0x03, 0x03, 0x01, 0x01, 0x00,
26.0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x40,
27.0x00, 0x80, 0xA0, 0xA0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
28.0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x02, 0x08, 0xED, 0xBC, 0xBC, 0xDF,
29.0xDF, 0xF6, 0xF2, 0xFC, 0xFC, 0xF8, 0xF8, 0x74, 0x1A, 0xCA, 0xC4, 0x86,
30.0xEA, 0xCB, 0xE3, 0x47, 0xE2, 0xFB, 0xFE, 0x7F, 0x63, 0x67, 0xEE, 0x3F,
31.0xFF, 0xCF, 0x2F, 0xAF, 0x2C, 0x7C, 0x38, 0x70, 0xD0, 0xF0, 0xC0, 0xC0,
32.0x90, 0x88, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
33.0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
34.0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x27, 0x0F,
35.0xFF, 0xFF, 0xFF, 0xFD, 0xED, 0xBE, 0xFE, 0x8E, 0xE1, 0xA8, 0x80, 0xE0,
36.0xE0, 0xA0, 0xB2, 0xBE, 0x82, 0x80, 0xF9, 0xE9, 0xFD, 0xFF, 0xE3, 0xE7,
37.0xFE, 0xF6, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF2, 0xF3, 0xF3, 0xF1, 0xF0,
38.0xF9, 0xF9, 0xFD, 0xFC, 0xFE, 0xFE, 0xFE, 0xFF, 0xFE, 0x7F, 0xEF, 0xFB,
39.0xF1, 0xE1, 0xFC, 0xFD, 0xFF, 0xFC, 0xB6, 0x74, 0x39, 0x1A, 0x0F, 0x01,
40.0x03, 0x07, 0x07, 0x0E, 0x0E, 0x1C, 0x3C, 0x38, 0x70, 0x70, 0xE0, 0xE0,
41.0xC0, 0xC0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
42.0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x04,
43.0x06, 0x06, 0x06, 0x07, 0x01, 0x01, 0x02, 0x06, 0x07, 0x0F, 0x1C, 0x1D,
44.0x10, 0x11, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x03,
45.0x03, 0x07, 0x07, 0x07, 0x0F, 0x0F, 0x0F, 0x2F, 0xFF, 0xEF, 0x6F, 0xF7,
46.0xE7, 0xF7, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xE3, 0x01, 0x00,
47.0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
48.0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
49.0x01, 0x03, 0x03, 0x07, 0x0F, 0x0E, 0x1E, 0x1C, 0x38, 0x78, 0x70, 0xF0,
50.0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
51.0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
52.0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
53.0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x0F, 0x0F, 0x07, 0x06,
54.0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00,
55.0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
56.0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
57.0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
58.0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
59.0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
60.0x78, 0x14, 0x14, 0x7C, 0x00, 0x7C, 0x40, 0x40, 0x40, 0x00, 0x7C, 0x54,
61.0x54, 0x44, 0x00, 0x44, 0x28, 0x10, 0x28, 0x44, 0x00, 0x10, 0x10, 0x10,
62.0x00, 0x7C, 0x54, 0x54, 0x44, 0x00, 0x44, 0x28, 0x10, 0x28, 0x44, 0x00,
63.0x7C, 0x54, 0x54, 0x44, 0x00, 0x40, 0x00, 0x7C, 0x08, 0x10, 0x20, 0x7C,
64.0x00, 0x7C, 0x54, 0x54, 0x44, 0x00, 0x04, 0x04, 0x7C, 0x04, 0x04, 0x40,
65.0x00, 0x7C, 0x14, 0x34, 0x48, 0x00, 0x3C, 0x40, 0x40, 0x7C, 0x40, 0x00};
66. 
67.void lcd_image()
68.{
69.char x,y;
70.for(y=0;y < 8;y++)
71.{
72.lcd_gotoxy(0,y);
73.for(x=0;x < 96;x++)
74.lcd_send(lcd_image_mas[y*96+x], LCD_TDATA);
75.}
76.}
Если размеры изображения будут отличаться от 96х64 – в функции lcd_image() нужно будет указать своё количество точек по горизонтали и количество линий по вертикали.
Данная программа подходит для генерации изображений для таких дисплеев как: nokia3310, nokia1100 и им подобным монохромным дисплеям, для все монохромных графических дисплеев Wistar (например: WG320240). А также всех остальных дисплеев со схожим типом построения картинки.


Предыдущая версия программы лежит тут — Генератор изображений (версия 1).

Переходник для дисплея от Nokia 1202

Так повелось, что дисплеи от мобильников заняли свое почетное место в ряду любимых всеми радиолюбителями запчастей.
Думаю, нет смысла доказывать, что самым популярным дисплеем от сотовых для использования в своих проектах, построенных на AVR и PIC архитектуре является LCD от Nokia 3310. Монохромный графический, 84*48px, с простым интерфейсом управления и по приемлемой цене. В Сириусе сие чудо с подложкой  стоит 65 рублей. И все, казалось бы, хорошо, но есть у этого дисплея пара противных недостатков…
  1. На рынке существует два вида этих экранов. Фирменный от Nokia и китайский аналог, управляемый неведомым контроллером с расширенной адресацией. По этой причине, прошивки для двух этих братьев не взаимозаменяемы. Беда в том, что фирменный дисплей можно достать разве что только разобрав телефон либо у ремонтников сотовых. В магазинах же чаще продаются только их китайские собратья.
  2. Вторая особенность в том, что что у китайского аналога, как у самого распространенного отсутствует металлизация контактов. Точнее, на некоторых экранах она есть, а на некоторых ее нет. Поэтому чаще всего приходится обрезать пластиковую подложку дисплея вместе с подпружиненными контактами и в таком уродском виде вставлять в свои проекты. Нет смысла доказывать что это не эстетично, да и качество контакта в местах соприкосновения с экраном, на мой взгляд, не слишком качественное. Некоторые умельцы используют эластомер, но под этот вариант придется проектировать плату и каким-то образом крепить экран и подсветку для него. В общем, сплошной гемор.
Но, ура товарищи! Счастье в этом мире есть. Называется оно LCD Nokia 1202. Это небольшой графический монохромный дисплей разрешением 96 * 68px. Встроенная белая подсветка, гибкий шлейф для распайки на плату с шагом 0,6 мм, никаких убогих подложек.  Но самое главное еще впереди!) Продается это чудо повсеместно и стоит, внимание, 35 рублей.
Дисплей имеет следующую распиновку:
Номер пина Название Описание
0 nc Не подключено
1 !RESET Сброс контроллера
2 !CS Выбор кристалла
3 GND Земля
4 SDA SPI data/cmd
5 SCLK SPI clock
6 VDDI Напряжение питания для I/O 1.6~3.6V
7 VDD Напряжение питания ядра 2.4~3.3V
8 GND Земля
9 -LED
10 +LED
11 nc
Протокол общения с микроконтроллером – SPI 9-bit (первый бит признак команды либо данных).
Немного не удобно, т.к. становится невозможно использовать аппаратный SPI 8-bit, например, на AVR или ARM (STM). Остается только вариант программной реализации (ногодрыг). Но и в этом можно усмотреть небольшой плюс – работу с дисплеем можно повесить на любые “непопулярные” ноги порта, а аппаратный SPI использовать по назначению, например для общения с  радио-трансивером.
Как и все подобные, этот экран питается от 3.3V. Это не всегда бывает удобно, поэтому я собрал небольшой адаптер-плату толерантную к более высоким напряжениям.
Преобразователь уровней собран не на резистивных делителях, а на диодах, включенных катодами к выходам МК и анодами, соответственно, к ногам дисплея. Питающее напряжение обеспечивается линейным стабилизатором LM-1117-3.3 в необходимой обвязке. Включение питания схемы и подсветки осуществляется через биполярные транзисторы BC847 или им подобные.
Принципиальная схема адаптера
Принципиальная схема адаптера
Такой способ включения позволяет сделать дисплей более лояльным к питанию и уровням на шине данных, т.к. максимально допустимое подаваемое напряжение ограничивается лишь значениями допустимых напряжений для преобразователя и напряжением пробоя для диодов.
Плата
Плата односторонняя, изготовленная ЛУТом с последующим лужением в Розе. Все компоненты в SMD исполнении кроме диодов (не было у меня нужного формфактора).
Адаптер для lcd nokia 1202
Адаптер для lcd nokia 1202
Вид с обратной стороны
Вид с обратной стороны
Дисплей паяется легко. Шлейф хорошо держит температуру. Единственное, даже после лужения в сплаве Розе, перед посадкой шлейфа на место нужно добавить немного припоя на контакты платы, для того, чтобы после посадки его хватило для проникновения через перфорацию контактов шлейфа. Главное не переборщить, как с количеством припоя, так и с температурой и временем нагрева. У меня все село очень даже неплохо.
Распайка шлейфа от lcd nokia 1202
Распайка шлейфа от lcd nokia 1202
Теперь экран болтается на шлейфе, что не очень хорошо. Дальше все упирается в вашу фантазию и уровень лени. Можно приклеить двухсторонним скотчем либо намазать соплей. Я сопли не люблю, поэтому мы будем делать настоящий заводской дисплей.
Общий вид
Из оцинкованного железа по шаблону была вырезана и согнута пластина по размерам экрана. По краям к ней припаяны четыре шпильки из куска медной проволоки с резьбой М2. Все это чудо покрашено серой молотковой эмалью. Гаек таких маленьких у меня нет, поэтому в качестве доноров были взяты шляпки от болтов М4.
Защита на экран
Защита на экран
Дорожки на плате залиты зеленым цапон-лаком. Под экраном на плату наклеиваем кусочки пенки, а сверху укладываем нашу защиту.
Плата залита цапон-лаком
Не помешает залить лаком
Вот, собственно, что получилось в итоге.
В сборе
В сборе
С включенной подсветкой
С включенной подсветкой

В качестве программной реализации была использована графическая библиотека для дисплеев Nokia 1100  товарища Chiper с сайта digitalchip.ru, которая отлично работает и с экраном Nokia 1202. Спасибо ему большое!

nokia1100_lib_all_v2 - Текстовый и графический вариант библиотеки.

ste2007(nokia1202) - Datasheet на кристалл от LCD Nokia 1202

nokia1202lcd-EagleCad - Проект для EagleCAD 6.1

lcd1202 - Компонент LCD Nokia 1202 для EagleCad 6.1