Администрация форума не несёт ответственности за достоверность информации и оставляет за собой право редактировать или в особых случаях даже удалять посты без предупреждения. Спасибо за понимание.

Программирование ATMEL в BASCOM.

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » Программирование ATMEL в BASCOM. » Дисплеи и индикация » однострочный дисплей 16*1 + atmega8


однострочный дисплей 16*1 + atmega8

Сообщений 1 страница 13 из 13

1

Всем привет!Помогите с такой штукой: вывожу на однострочник текст , мега подключена 4 битной шиной - пишет текст только на 8 знакоместах , с аналогичным дисплеем 16*2 нет проблем ....
кто знает как это победить ... подскажите!!!

0

2

в справке почитайте
всё есть
этот ЖК - как два по 8
это надо указать компилятору через Config lcd

0

3

Вариант config lcd 8*2 пробовал , ругается компилятор , а вот 16*1а надо попробовать...
напишу что получится...
Спасибо!

0

4

читайте справку! и проблемы уйдут сами :)
удачи

0

5

Да! Да! ДА!.. Config Lcd = 16 * 1a - это была выигрышная комбинация! работает.... но есть другая засада: делаю Shiftlcd Left и буковки в тексте при движении оного пропадают аккурат с 8 позиции... это как-то можно победить?
Всем спасибо за подсказки!

-1

6

Это понятно , текст у меня двигается и влево и вправо , но он как бы стирается, если взять восьмое знакоместо за середину и если сдвигаем текст вправо то левая часть слова поедается на 8 позиции а правая часть слова уезжает с пробелом от середины .... вот в чем проблемм-то.... :huh:

0

7

Ok! вот текст проги :

ТЕКСТЫ ПРОГРАММ ОФОРМЛЯТЬ КАК "КОД" (см. значок вверху справа) . Модератор

Код:
$regfile = "m8def.dat"
$crystal = 1000000
$baud = 9600
Dim A As Byte
Config Lcd = 16 * 1a
Config Lcdpin = Pin , Rs = Portb.0 , E = Portb.2 , Db4 = Portd.4 , Db5 = Portd.5 , Db6 = Portd.6 , Db7 = Portd.7
Do
Cls
Cursor Off
Rem Locate 1 , 2
Lcd "текст....."
Wait 5
Cls
Lcd "*текст.....*"
Wait 5
For A = 1 To 16
Shiftlcd Left
Waitms 250
Next
Wait 2
Cls
Rem Locate 1 , 2
Lcd "текст....."
Wait 5
Cls
Lcd "*текст.....*"
Wait 5
For A = 1 To 16
Shiftlcd Right
Waitms 250
Next
Loop
End

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

Отредактировано omike (2011-05-23 08:49:42)

0

8

... попробовал , работает но корявенько... теряются части слова :dontknow:

0

9

Может, так?

Код:
...
locate 1,1: Lcd Text
wait 5
For A = 15 To 1 step -1
Text = Right(text , A) + " "
locate 1,1: Lcd Text
Waitms 250
Next
...

Отредактировано demonizer (2011-05-24 11:01:18)

0

10

Попробуй соответствующую библиотеку подгружать. LCD.LIB или LCD.LBX...

0

11

что-то мой компилятор библиотеки в упор не хочет видеть, добавил в программу строку $lib Lcd4.lbx пишет что нет такой библиотеки в соответствующем каталоге ,а она там есть или еще какие манипуляции надо сделать?

0

12

для начала попробуйте так: $lib "lcd4.lbx"

Но эту библиотеку можете даже не пробывать! она для 16х2

0

13

в общем оставил я этот сдвиг на однострочнике ... сделал попроще написал-стер  , а на двустрочниках все получалось... :angry:

0


Вы здесь » Программирование ATMEL в BASCOM. » Дисплеи и индикация » однострочный дисплей 16*1 + atmega8