Создание своих шрифтов для lcd
|
|
sever |
Дата: Вт, 10.06.2008, 15:54 | Сообщение # 1 |
Группа:
Пользователи
Ранг:
Начал соображать
Сообщений:
35
Замечания:
±
На сайте с 15.04.2008
Статус:
Offline
|
кто занимался созданием и выводом своих символов для строчный lcd?
|
|
|
|
demanik |
Дата: Вт, 10.06.2008, 20:58 | Сообщение # 2 |
Группа:
Проверенные
Ранг:
Помогаю всем
Сообщений:
448
Замечания:
±
На сайте с 11.12.2007
Статус:
Offline
|
Я занимался, и занимаюсь. Но добавить можно одновременно только 8 штук. Или каждый раз подгружать нужные 8 штук.
Попробуй всё и вся... может быть пол...
|
|
|
|
sever |
Дата: Вт, 10.06.2008, 22:00 | Сообщение # 3 |
Группа:
Пользователи
Ранг:
Начал соображать
Сообщений:
35
Замечания:
±
На сайте с 15.04.2008
Статус:
Offline
|
посидел поигрался, посмотрел примеры реализации. вот такой код для примера переделал. LCDOut $FE,64,REP $0\8 ' Load blank character (ascii $0) lcdout $0,%00000,%00000,%00000,%00000,%00000,%00000,%11111 lcdout $0,%00000,%00000,%00000,%00000,%00000,%11111,%11111 lcdout $0,%00000,%00000,%00000,%00000,%11111,%11111,%11111 lcdout $0,%00000,%00000,%00000,%11111,%11111,%11111,%11111 lcdout $0,%00000,%00000,%11111,%11111,%11111,%11111,%11111 lcdout $0,%00000,%11111,%11111,%11111,%11111,%11111,%11111 lcdout $0,%11111,%11111,%11111,%11111,%11111,%11111,%11111 lcdout $0,%11111,%11111,%11111,%11111,%11111,%11111,%11111 лично для меня было открытием команды REP =) с рисованием символов тоже получилось. Из увиденого фрагмента, вышло что я записываю псевдошрифт в ОЗУ ЛСД, причем с 0 адресса, менять адреса не получалось. пока что это так понимаю. ладно, щас еще поиграюсь, вышло запустить одну нонеймовою 2х20 стеклянную lcd, с чипом на стекле, работает только по 8 битной шине.
|
|
|
|
evgenb |
Дата: Вт, 10.06.2008, 22:15 | Сообщение # 4 |
Группа:
Проверенные
Ранг:
Понимаю
Сообщений:
91
Замечания:
±
На сайте с 14.09.2007
Статус:
Offline
|
sever Посмотрите программу по этой ссылке. http://slil.ru/25885872 Там можно создавать символы для LCD. Может пригодится.
Сообщение отредактировал
evgenb - Вт, 10.06.2008, 22:22
|
|
|
|
demanik |
Дата: Вт, 10.06.2008, 22:48 | Сообщение # 5 |
Группа:
Проверенные
Ранг:
Помогаю всем
Сообщений:
448
Замечания:
±
На сайте с 11.12.2007
Статус:
Offline
|
тут загружается сразу четыре символа в ячейки с0 по3 lcdout $FE,%01000000,%110,%1001,%1001,%110,%0,%0,%0,%0,$00,$04,$04,$0A,$0A,$11,$1F,$00,$00,$00,$00,$00,$00,$00,$1F,$1F,$12,$09,$04,$09,$12,$09,$1F, $1F можно попробовать и так lcdout $FE,%01000000+(8,16,24 и т д) тоесть добавить смещение от 0 кратное 8, я правда так пробовал на протонбейсике работает.
Попробуй всё и вся... может быть пол...
|
|
|
|
sever |
Дата: Ср, 11.06.2008, 00:10 | Сообщение # 6 |
Группа:
Пользователи
Ранг:
Начал соображать
Сообщений:
35
Замечания:
±
На сайте с 15.04.2008
Статус:
Offline
|
demanik, хм, вроде как пытаюсь разобраться, но первый твой код не осилил=) уж простите, пока остановился на своем варианте. кстати по поводу подгрузки шрифтов, почемуто пиксимулятор нормально все меняет. а вот на железе- не хочет, как записал в начале туда шрифт, так и все. вот рабочая визуальная програмка, смотрится довольно симпотично бегущая волна
Сообщение отредактировал
sever - Ср, 11.06.2008, 00:17
|
|
|
|
holyuser |
Дата: Ср, 11.06.2008, 02:48 | Сообщение # 7 |
Группа:
Проверенные
Ранг:
Могу и подсказать
Сообщений:
228
Замечания:
±
На сайте с 12.12.2007
Статус:
Offline
|
Вариант изображения псевдографики (гистограмма и аналоговая шкала) на строчном LCD - дисплей для металлодетектора. Режим "Bars": Режим "Ladder": Схема: В конце программы, загрузка символов для двух режимов:
Сообщение отредактировал
holyuser - Ср, 11.06.2008, 23:43
|
|
|
|
demanik |
Дата: Ср, 11.06.2008, 19:00 | Сообщение # 8 |
Группа:
Проверенные
Ранг:
Помогаю всем
Сообщений:
448
Замечания:
±
На сайте с 11.12.2007
Статус:
Offline
|
Quote (sever) но первый твой код не осилил=) Здесь полный кусок: '******************************************************************************* @ device PIC16F876A, XT_osc, wdt_on, wrt_off, lvp_off, pwrt_on, protect_off DEFINE OSC 4 Define LCD_DREG PORTB Define LCD_DBIT 4 Define LCD_RSREG PORTB Define LCD_RSBIT 0 Define LCD_EREG PORTB Define LCD_EBIT 1 cmd con 254 ' Control byte clr con 1 ' Clear the display line1 con 128 ' Move cursor to home position on line 1 line2 con 192 ' Move cursor to home position on line 2 pause 100 lcdout cmd,clr pause 50 gosub MyCharacters lcdout cmd,line1,0,1,2,3,4,5,6,7 end MyCharacters:'-----------загрузка символов в озу индикатора---------------------- lcdout cmd,64,$00,$00,$00,$00,$00,$00,$1F,$00 ' 0-символ lcdout cmd,64+8,$00,$00,$00,$00,$00,$1F,$1F,$00 ' 1-символ lcdout cmd,64+16,$00,$00,$00,$00,$1F,$1F,$1F,$00 ' 2-символ lcdout cmd,64+24,$00,$00,$00,$1F,$1F,$1F,$1F,$00 ' 3-символ lcdout cmd,64+32,$00,$00,$1F,$1F,$1F,$1F,$1F,$00 ' 4-символ lcdout cmd,64+40,$00,$1F,$1F,$1F,$1F,$1F,$1F,$00 ' 5-символ lcdout cmd,64+48,$1F,$1F,$1F,$1F,$1F,$1F,$1F,$00 ' 6-символ lcdout cmd,64+56,$1F,$1F,$1B,$1B,$1B,$1F,$1F,$00 ' 7-символ return
Попробуй всё и вся... может быть пол...
Сообщение отредактировал
demanik - Ср, 11.06.2008, 19:02
|
|
|
|
sever |
Дата: Ср, 11.06.2008, 23:21 | Сообщение # 9 |
Группа:
Пользователи
Ранг:
Начал соображать
Сообщений:
35
Замечания:
±
На сайте с 15.04.2008
Статус:
Offline
|
вот, теперь с этим кодом разобрался, все очень доходчиво. даже поигрался сегодня вечером, написал демку с динамически изменяемой псевдографикой для нулевого символа в ОЗУ ЖКИ и выводом его на дисплей. кусочек, без установк дисплея Quote n var byte dr var byte l var byte m var byte lcdout cmd,clr main for m=0 to 19 for l=0 to 8 for n=0 to 5 gosub draw gosub MyCharacters lcdout cmd,line1,rep " "\m,0 pause 10 next n next l next m goto main end MyCharacters:'-----------çàãðóçêà ñèìâîëîâ â îçó èíäèêàòîðà---------------------- lcdout cmd,64,$00,$00,$00,$00,$00,$00,$00,$00 lcdout cmd,64+l,dr return draw: lookup n,[$01,$02,$04,$08,$10],dr return
|
|
|
|
radist108 |
Дата: Чт, 11.02.2010, 16:36 | Сообщение # 10 |
Группа:
Проверенные
Ранг:
Пытаюсь разобраться
Сообщений:
49
Замечания:
±
На сайте с 07.01.2010
Статус:
Offline
|
А можете по подробнее описать механизм вывода собственных комбинаций на LCD? Из чего состоит тело программы? какие команды и что означают? Как обращаться к памяти. Какие ограничения? Если можно, то на примете отображения однойки в произвольном месте ЖКИ. Желательно разжевать все это как неграмотному. Думаю и другим будет интересно.
Да здравствует то, благодаря чему мы, несмотря ни на что…
Сообщение отредактировал
radist108 - Чт, 11.02.2010, 18:53
|
|
|
|