Подключаем цветной графический 96х65 пикселей, 4096 цветов ЖКИ от Nokia 3510i к МиниБоту — различия между версиями
MiBBiM (обсуждение | вклад) (новый полностью рабочий исходник) |
MiBBiM (обсуждение | вклад) м (чуть исправил комментарии) |
||
Строка 45: | Строка 45: | ||
Do | Do | ||
Input S, Noecho | Input S, Noecho | ||
− | ' ставим пиксель-фонарик в место, куда будет записана строка - точку ( | + | ' ставим пиксель-фонарик в место, куда будет записана строка - точку (0, Y_Pos) |
Pset -1, Y_pos-1, Red | Pset -1, Y_pos-1, Red | ||
' запись строки S в позицию (3, Y_Pos) экрана, | ' запись строки S в позицию (3, Y_Pos) экрана, |
Текущая версия на 20:45, 7 ноября 2009
- Даташит - Медиа:S1D15G14.pdf
- Описание подключения - http://sandiding.tripod.com/ni3510.html
Формат цвета - RRRGGBB. В библиотеке есть небольшой баг - при использовании функции Pset координатная сетка сдвигается на один пиксель вниз-вправо, поэтому необходимо вычитание единицы из обоих её аргументов; остальные функции работают согласно документации.
Приведенный пример программы печатает на дисплее всё, что принимает из уарта.
<source lang="vb">
$regfile = "m32DEF.dat"
$crystal = 7372800
$baud = 115200
$hwstack = 128
$swstack = 128
$framesize = 128
Config Serialin = Buffered , Size = 20
$lib "nokialcd.lbx" ' библиотека
' соответствие пинам меги Config Graphlcd = Color , Controlport = Portc , Rs = 4 , Cs = 5 , Scl = 7 , Sda = 6
Const Blue = &B00000011 ' константы цвета Const Yellow = &B11111100 Const Red = &B11100000 Const Green = &B00011100 Const Black = &B00000000 Const White = &B11111111 Const Brightgreen = &B00111110 Const Darkgreen = &B00010100 Const Darkred = &B10100000 Const Darkblue = &B00000010 Const Brightblue = &B00011111 Const Orange = &B11111000
Const Font_height = 8 ' высота шрифта и дисплея Const Display_height = 67 Setfont Color_exo ' устанавливаем шрифт
Cls ' очищаем дисплей Enable Interrupts
Dim S As String * 20 Dim Y_pos As Byte Y_pos = 0 Do
Input S, Noecho ' ставим пиксель-фонарик в место, куда будет записана строка - точку (0, Y_Pos) Pset -1, Y_pos-1, Red ' запись строки S в позицию (3, Y_Pos) экрана, ' цвет шрифта - черный, цвет рамки - белый Lcdat Y_pos , 3 , S , Black , White
Y_pos = Y_pos + Font_height ' делаем перенос строки Y_pos = Y_pos + Font_height If Y_pos > Display_height Then Y_pos = 0 Cls Else Y_pos = Y_pos - Font_height End If
Loop
$include "Color_exoRus.font" ' подключаем файл со шрифтом
</source>
Необходимые файлы:
- Библиотека nokialcd.lbx: Медиа:Color_exoRus.rar
- Шрифт 8*8 Color_exoRus.font: Медиа:Nokialcd.rar
Этот ЖКИ можно приобрести в http://www.MiniBot.ru