Пятница, 26.04.2024, 05:35
| RSS
[SEARCH_TITLE]
[SEARCH_FORM]
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 3
  • 1
  • 2
  • 3
  • »
Архив - только для чтения
Форум » Мастерская » Наши достижения » Simens CX65 ( LPH88 ) + ATmega 16 (попытка подключения дисплея к МК)
Simens CX65 ( LPH88 ) + ATmega 16
DoniakДата: Вторник, 25.11.2008, 22:56 | Сообщение # 1








Язык программированя: CodeVisionAVR Си
Зарегистрирован 19.03.2008
Группа: Модераторы
Сообщений: 584
Город: Кривой Рог (Днепропетровск)
Статус: Offline
Вот недавно прикупил себе дисплей от сименса попался LPH88. Подключил я ево к ATmege 16 работающея на внешнем кварце 16 МГц питаю дисплей и МК от 3.3В. схема подключения такая:
контакты дисплея -------------ноги МК
RS-------------------------------- PB2
RESET---------------------------- PB3
CS-------------------------------- PB4
CLK------------------------------- PB7
DAT------------------------------ PB5
2V9------------------------------ +3.3V
GND----------------------------- -3.3V
1V8------------------------------ +3.3V походу он вообще просто так болтается (у етого дисплея)
LED+---------------------------- +9V
LED_GND----------------------- -9V
От собственно разпиновка дисплея (на картинке LS020 но он является аналогом по контактам с LPH88)

Для начяла нужно дисплей проиницыализировать. Для этого нужно по шине SPI послать от такую последовательность команд:

0x74,0x00,0x00
0x76,0x00,0x01
0x74,0x00,0x07
0x76,0x00,0x00
0x74,0x00,0x02
0x76,0x04,0x00
0x74,0x00,0x04
0x76,0x00,0x00
0 x74,0x00,0x0C
0x76,0x00,0x01
0x74,0x00,0x0D
0x76,0x06,0x16
0x74,0x00,0x1E
0x76,0x10,0x10
0x74,0x00,0x03
0x76,0x00,0x0C
0x74,0x00,0x0 E
0x76,0x2D,0x1F
0x74,0x00,0x0D
0x76,0x06,0x16
0x74,0x00,0x01
0x76,0x02,0x15
0x74,0x00,0x0F
0x76,0x00,0x00
0x74,0x00,0x0B
0x76,0x00 ,0x00
0x74,0x00,0x11
0x76,0x00,0x00
0x74,0x00,0x06
0x76,0x00,0x00
0x74,0x00,0x05
0x76,0x00,0x30
0x74,0x00,0x14
0x76,0xAF,0x00
0x74, 0x00,0x15
0x76,0x00,0x00
0x74,0x00,0x16
0x76,0x83,0x00
0x74,0x00,0x17
0x76,0xAF,0x00
0x74,0x00,0x20
0x76,0x00,0x00
0x74,0x00,0x30
0 x76,0x00,0x00
0x74,0x00,0x31
0x76,0x04,0x00
0x74,0x00,0x32
0x76,0x02,0x07
0x74,0x00,0x33
0x76,0x07,0x00
0x74,0x00,0x34
0x76,0x00,0x0 5
0x74,0x00,0x35
0x76,0x07,0x03
0x74,0x00,0x36
0x76,0x07,0x07
0x74,0x00,0x37
0x76,0x00,0x07
0x74,0x00,0x3A
0x76,0x12,0x00
0x74,0x00 ,0x3B
0x76,0x00,0x09
0x74,0x00,0x07
0x76,0x00,0x05
0x74,0x00,0x07
0x76,0x00,0x25
0x74,0x00,0x07
0x76,0x00,0x27
0x74,0x00,0x07
0x76, 0x00,0x37

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

Чтобы убрать весь этот мусор нужно тире послать от такую последовательность команд:

0x74,0x00,0x16
0x76,0x83,0x00
0x74,0x00,0x17
0x76,0xAF,0x00
0x74,0x00,0x21
0x76,0x00,0x00
0x74,0x00,0x22
0х76 .......................тут без перерыва пишим 23232раз( 23232 = количеству пикселей на дисплэе и узнаётся оно 176 умножить на 132) от такую комбинацыю 0хFF 0хE0 .

Теперь дисплей должен стать жолтого цвета smile3

Выключение дисплея произходит... Опять посылаем команды по ISP:

0x74,0x00,0x0D,
0x76,0x05,0x05,
0x74,0x00,0x0E,
0x76,0x1D,0x1F,
0x74,0x00,0x03,
0x76,0x00,0x00

Дисплей должен отчистится от всей информацые что на ней была.

прикрипляю исходник проэкта написаную на Си в CVAVR
В протеусе можно посмотреть как произходит передача команд дисплею.
пишим сюда критику и дополнения yes3 (фото вставлю скоро, если конечно надо)

Прикрепления: 3018088.jpg (28.7 Kb) · displayLPH88.rar (30.2 Kb) · 3666322.jpg (95.5 Kb) · 9532603.jpg (13.2 Kb)
 
DoniakДата: Пятница, 28.11.2008, 18:16 | Сообщение # 2








Язык программированя: CodeVisionAVR Си
Зарегистрирован 19.03.2008
Группа: Модераторы
Сообщений: 584
Город: Кривой Рог (Днепропетровск)
Статус: Offline
Продолжаю изучять дисплей...
Если заливку ограничить тоесть задать ей начяльные координаты конечные и выбрать другой, получим квадрат. Координаты можно указать от так:

0x74,0x00,0x16,
0x76,0x50,0x25, // X2 X1
0x74,0x00,0x17,
0x76,0x50,0x25, // Y2 Y1
0x74,0x00,0x21,
0x76,0x25,0x25, // X1 Y1
0x74,0x00,0x22

на дисплэе они будут выглядить:

после выбора координат передаём 0х76 и заполняем пиксели любым цветом (количество пикселей которые в квадрате надо заполнить находится =(Х2-Х1)*(У2-У1)) я выбрал красный цвет ему соответствует F800h вот что уменя получилось:

Если заливать не одним цветом все пиксели а комбенировать разные получится картинка :)
исходники на Си в среде CVAVR прилажую в архиве

Прикрепления: 7135373.gif (1.6 Kb) · 6214639.jpg (18.3 Kb) · display4LPH88.rar (31.1 Kb)
 
DoniakДата: Пятница, 28.11.2008, 18:46 | Сообщение # 3








Язык программированя: CodeVisionAVR Си
Зарегистрирован 19.03.2008
Группа: Модераторы
Сообщений: 584
Город: Кривой Рог (Днепропетровск)
Статус: Offline
От карошая прога Screen Bin она BMP картинки кодирует в масив. Если этот масив засунуть в МК, учитывая размеры картинки X1 X2 Y1 Y2 выставить правельно и заполнить этот квадрат числами из масива получим изображение. у Меги16 памяти мало мне удалось вывести только маленькую картинку :( размером 88х64 вот она:

после её прогонки через прогу и запихивания в МК получил вот такой результат dirol

снизу прикрепляю саму прогу и исходник на Си написаный в CVAVR

Прикрепления: 8518269.jpg (42.0 Kb) · 8136340.jpg (2.1 Kb) · Screen_Bin.rar (11.2 Kb) · risovaniekvadra.rar (190.0 Kb)
 
stalkerk750Дата: Понедельник, 01.12.2008, 16:20 | Сообщение # 4








Зарегистрирован 01.12.2008
Группа: Новички
Сообщений: 4
Город: Попасная
Статус: Offline
Подскажите пожалуста как вывести на экран LPH88 буквы. Если можно с кодом на языке Си .
 
DoniakДата: Понедельник, 01.12.2008, 17:30 | Сообщение # 5








Язык программированя: CodeVisionAVR Си
Зарегистрирован 19.03.2008
Группа: Модераторы
Сообщений: 584
Город: Кривой Рог (Днепропетровск)
Статус: Offline
вот исходники мой на CVAVR но там такигрался буквы взеркальном отражение чутьнекоректно выводятся :)
втарой C AVR GCC код писал немец Кранз если неошибаюсь там всё нормально (он под мегу 128)
Прикрепления: 2172547.rar (48.8 Kb) · LPH_display4.rar (62.4 Kb)
 
stalkerk750Дата: Понедельник, 01.12.2008, 19:54 | Сообщение # 6








Зарегистрирован 01.12.2008
Группа: Новички
Сообщений: 4
Город: Попасная
Статус: Offline
спасибо очень большое. это то что мне нужно.
 
Krik99Дата: Вторник, 30.12.2008, 10:48 | Сообщение # 7








Зарегистрирован 30.12.2008
Группа: Новички
Сообщений: 4
Город: Одесская обл.
Статус: Offline
Вот недавно тоже освоил LS020. Проект собран на Мега8, памяти там маловато развернуться негде, но всётаки вот что получилось.


PS Хотя код не совершенен, хочю сделать односторонний софтовый SPI, так как он быстрее ножками дёргает чем железный.
Прикрепления: 4063815.jpg (452.8 Kb) · 5367728.jpg (424.3 Kb)
 
DoniakДата: Вторник, 30.12.2008, 16:08 | Сообщение # 8








Язык программированя: CodeVisionAVR Си
Зарегистрирован 19.03.2008
Группа: Модераторы
Сообщений: 584
Город: Кривой Рог (Днепропетровск)
Статус: Offline
а я некак немогу разобратся как текст выводить sad чужие проги работают а мая отказывается.
 
lehaДата: Пятница, 23.01.2009, 19:33 | Сообщение # 9








Зарегистрирован 23.01.2009
Группа: Новички
Сообщений: 1
Город: Минеральные Воды
Статус: Offline
Дисплеи после нескольких включений умирают, питание мк и дисплея 3 вольта, выкючал дисплей специальными командами или отключением питания всего устройства результат один и тотже. У кого нибудь были такие фокусы? В чем может быть причина?
 
DoniakДата: Пятница, 23.01.2009, 22:59 | Сообщение # 10








Язык программированя: CodeVisionAVR Си
Зарегистрирован 19.03.2008
Группа: Модераторы
Сообщений: 584
Город: Кривой Рог (Днепропетровск)
Статус: Offline
Пока работает нормально. Думаю дело в отключение, чевота там нехватает имхо
 
FireFlyДата: Четверг, 05.03.2009, 23:23 | Сообщение # 11








Зарегистрирован 04.04.2008
Группа: Модераторы
Сообщений: 196
Город: Kamyshin
Статус: Offline
Quote (leha)
Дисплеи после нескольких включений умирают, питание мк и дисплея 3 вольта, выкючал дисплей специальными командами или отключением питания всего устройства результат один и тотже. У кого нибудь были такие фокусы? В чем может быть причина?

Эти дисплюи нежныя, хочут хорошего стабильного питания и сигналов, я специяльно это дело аж целую плату сварганил, задо фиг чего умрет lol
- http://robozone.su/2009....20.html


Robozone
 
юрииДата: Пятница, 06.03.2009, 10:57 | Сообщение # 12








Язык программированя: Васик
Зарегистрирован 05.03.2009
Группа: Новички
Сообщений: 572
Город: Югорск
Статус: Offline
http://robozone.su/2008....ti.html а этот подойдёт и по какой это теме

Добавлено (06.03.2009, 10:57)
---------------------------------------------
FireFly, спс
dance4

 
SpaceДата: Пятница, 06.03.2009, 13:37 | Сообщение # 13








Зарегистрирован 25.12.2007
Группа: Администраторы
Сообщений: 1103
Статус: Offline
Quote (юрии)
по какой это теме

явно не по этой. это тема по дисплею. мог бы создать отдельную тему.
Quote (юрии)
а этот подойдёт

конечно, а в чём различие читай там
 
юрииДата: Пятница, 06.03.2009, 14:38 | Сообщение # 14








Язык программированя: Васик
Зарегистрирован 05.03.2009
Группа: Новички
Сообщений: 572
Город: Югорск
Статус: Offline
спс smile3

Добавлено (06.03.2009, 14:38)
---------------------------------------------
А где модули для подключения диплея можно по искать попроще cray

 
SpaceДата: Пятница, 06.03.2009, 15:07 | Сообщение # 15








Зарегистрирован 25.12.2007
Группа: Администраторы
Сообщений: 1103
Статус: Offline
1 вариант
2 вариант
 
Форум » Мастерская » Наши достижения » Simens CX65 ( LPH88 ) + ATmega 16 (попытка подключения дисплея к МК)
  • Страница 1 из 3
  • 1
  • 2
  • 3
  • »
Поиск: