0@0
LibraryRoot
LibraryGroup-Таймеры
LibraryGroup-Переключатель
0@0
458
0@0
165
424
0@0
root
2
388514b8-9914-446d-adc0-7b8f0638a74e
LibraryGroup-Дисплеи LCD
0@0
0
4
130@0
150@0 corner: 266.0d@20
130@0 corner: 286.0d@20
155.0d@14.5d
1
LCD12864_KS0108_1
9061e5d9-5077-475c-8690-fbddcdb1d74a
Дисплей LCD12864_KS0108_1
Выводы дисплея D0...D7 подключить к пинам ардуино 8, 9, 10, 11, 4, 5, 6, 7.
EN(E) к 18, CS1 к 14, CS2 к 15, di(RS) к 17, RW к 16.
Все дисплеи здесь : https://github.com/olikraus/u8glib/wiki/device
198
#include
"U8glib.h"
u8g
( 8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16 );
U8GLIB_KS0108_128
116.0d
130@30
150@30 corner: 323.0d@170
130@30 corner: 343.0d@170
155.0d@44.5d
en
130@60
144@60
Text LCD12864
9ffbdeca-542e-4d44-9741-4482eba52857
27d812a5-b2bf-4840-9c8a-9b081e170715
text
0949f15c-99b7-4d03-ba9b-fa59d1be9888
3bf6fe4a-1807-421c-bb09-da6ac9083a7c
7e1bd75b-75aa-4523-b116-4b2c7ded03b2
Вывод текста LCD12864
set_font
u8g_font_unifont
fddad31c-f205-4551-88f7-2bfb5eaad1d7
a0d12a4a-a1d0-4930-b153-1cda2eafa332
x
8be6dee0-e876-4366-91b9-cc07dfdad7e3
3ac3fb3c-1dc6-4b74-8c84-b0fe49c4b6f1
y
c8eb07ef-16b7-4a0f-8321-3c32c3a35f16
78666054-3a81-4f19-bd08-b075162fa5cb
u8g.firstPage();
do {u8g.setFont(set_font);
u8g.drawStr( x, y, text);
} while(u8g.nextPage());
114
debeb920-1a02-4b10-a907-fcf597cd4d35
u8g.firstPage();
if ( en ) {text.toCharArray(textStr, text.length()+1);
do {u8g.setFont(set_font);
u8g.drawStr( x, y, textStr);
} while(u8g.nextPage());
}
209
textStr
[20];
char
130@50 corner: 144@70
en_text
130@80
144@80
Graphics+Text+Bitmap LCD12864
c9e7ec30-8502-4836-ab50-46ece8c2c05b
a7348c7d-220e-4e34-8924-7bc43468c874
text_1
text2
43d091bd-ac66-4c3b-b271-8ef63b7a4931
98fd6027-d29e-4467-b003-5b5651f9c3ab
31cffc99-d7d9-4319-b8a3-af7f05e3b7a6
u8g_my14x10rus
10
40
color
Цвет экрана, 1-белый, 0- черный
92f4ce34-7ccf-4be1-abff-fbbe34f2177d
752ef95b-9ee1-4c3b-84ec-6e5c02764301
text_length
20
Длина текста
c5e5e571-0925-44fa-b93a-1919f6bbcf6f
f37c9b53-102a-41f9-9f24-cc0407eb272f
if ( en ) { text.toCharArray(textStr, text.length()+1);
u8g.firstPage();
u8g.setColorIndex(color);
u8g.setFont(set_font);
u8g.drawStr( x, y, textStr);
u8g.nextPage();
}
245
text_1Str
[text_length];
char
Str
[text_length];
char text_2
text_2
Graphics+Text LCD12864_2
en_graphics
6e30b6d8-1a4d-4070-948a-7967ac7a3f4e
41ce4ecb-e029-4b6d-b6be-2d1b10feb4c5
1bc65f14-404e-4124-b035-8cdfe5b4be42
Вывод графики и текста LCD12864 на 2 входа
В параметрах выбрать шрифты, весь набор посмотреть в библиотеке в файле - utility / u8g.h со строки 1521.
Шрифты кириллица, скопировать нужный и вставить в параметры set_font1 и set_font2:
u8g_my10x14rus
u8g_font_4x6rus
u8g_font_rus5x7
u8g_font_5x8rus
u8g_font_6x10rus
u8g_font_6x12rus
u8g_font_8x13rus
u8g_font_8x13Brus
u8g_font_8x13Orus
u8g_font_9x15rus
u8g_font_9x15Brus
u8g_font_9x18rus
u8g_font_9x18Brus
u8g_font_10x20rus
u8g_font_rusUnifont
462
text_length
Длина текста
c5e5e571-0925-44fa-b93a-1919f6bbcf6f
color
Цвет экрана, 1-белый, 0- черный
92f4ce34-7ccf-4be1-abff-fbbe34f2177d
set_font1
u8g_font_unifont
Шрифты в описании блока
06d62eaa-b867-4827-8cf8-591064f0a664
ab0e5b58-3cc1-4315-9db8-6008d87e04ce
x1
8be6dee0-e876-4366-91b9-cc07dfdad7e3
y1
c8eb07ef-16b7-4a0f-8321-3c32c3a35f16
set_font2
u8g_font_unifont
Шрифты в описании блока
fddad31c-f205-4551-88f7-2bfb5eaad1d7
x2
127
3d95d3b9-2d11-4307-b2e6-403ae63a7366
8f6df0ac-5ce3-478f-83d8-d2ddf5433fbb
y2
32
63
0d0d464e-fe58-4fbf-a907-dbed6af6e9de
3839c65d-9527-47a2-8b9b-09c8cd344f58
graphics
u8g.drawLine(0, 0, 127, 63);
7ab471a5-2173-498e-9aad-01b0d21fefef
7ad7e434-f1a9-4c9b-a16c-f7283eb6df81
if ( en ) { text_1.toCharArray(textStr1, text_1.length()+1);
text_2.toCharArray(textStr2, text_2.length()+1);
u8g.setColorIndex(color);
u8g.firstPage();
do {
u8g.setFont(set_font1);
u8g.drawStr( x1, y1, textStr1);
u8g.setFont(set_font2);
u8g.drawStr( x2, y2, textStr2);
if (en_graphics ) { u8g.setColorIndex(color);
Graphics; }
} while(u8g.nextPage());
}
448
textStr1
[text_length];
char
textStr2
[text_length];
char
en_bitmap
345ad04d-4bb3-4315-b245-7bd737374f26
505d4cd4-c77f-4847-8b2d-9d86e442f338
baea8f62-2c5d-4953-a273-afcfe8da1294
Вывод графики, растрового рисунка и текста на 2 входа LCD12864
В параметрах выбрать шрифты, весь набор посмотреть в библиотеке в файле - utility / u8g.h со строки 1521.
Шрифты кириллица, скопировать нужный и вставить в параметры set_font1 и set_font2:
u8g_my10x14rus
u8g_font_4x6rus
u8g_font_rus5x7
u8g_font_5x8rus
u8g_font_6x10rus
u8g_font_6x12rus
u8g_font_8x13rus
u8g_font_8x13Brus
u8g_font_8x13Orus
u8g_font_9x15rus
u8g_font_9x15Brus
u8g_font_9x18rus
u8g_font_9x18Brus
u8g_font_10x20rus
u8g_font_rusUnifont
Команды графики:
описание здесь http://txapela.ru/blogs/pencraft/arduino-i-graficheskiy-displey-128x64-s-kontrollerom-st7920/page2
u8g.drawPixel(x, y);
позволяет вывести на дисплей одиночный пиксель с заданными координатами x и y. Координаты отсчитываются от левого верхнего угла дисплея.
u8g.drawLine(x1, y1, x2, y2);
позволяет нарисовать на дисплее прямую линию между точками, заданными парами координат x1, y1 и x2, y2.
u8g.drawFrame(x, y, width, height);
позволяет нарисовать незаштрихованный прямоугольник, верхний левый угол которого находится в точке с координатами x и y. Размеры прямоугольника задаются значениями width (ширина) и height (высота).
u8g.drawBox(x, y, width, height);
позволяет нарисовать заполненный пикселями прямоугольник, верхний левый угол которого находится в точке с координатами x и y. Размеры прямоугольника задаются значениями width (ширина) и height (высота).
u8g.drawCircle(x, y, rad, [options]);
позволяет нарисовать окружность или ее часть с центром в точке с координатами x и y. Радиус окружности задается значением rad. Диаметр получаемой окружности равен rad*2+1.
Дополнительные опции, подставляемые вместо [options], позволяют нарисовать одну из четвертей окружности:
верхнюю правую:
U8G_DRAW_UPPER_RIGHT
верхнюю левую:
U8G_DRAW_UPPER_LEFT
нижнюю правую:
U8G_DRAW_LOWER_RIGHT
нижнюю левую:
U8G_DRAW_LOWER_LEFT
полную окружность (по умолчанию):
U8G_DRAW_ALL
если требуется нарисовать две или три четверти – соответствующие опции можно использовать совместно, разделяя их символом | (вертикальная черта).
u8g.drawDisc(x, y, rad, [options]);
действует так же, как и предыдущая команда, но рисует круг (или сектор круга), заполненный пикселями.
Растровый рисунок.
Код рисунка скопировать и вставить в массив в DeclareCection вместо кода по умолчанию
const uint8_t rook_bitmap[] PROGMEM = {
0x00, // 00000000
0x55, // 01010101
0x7f, // 01111111
0x3e, // 00111110
0x3e, // 00111110
0x3e, // 00111110
0x3e, // 00111110
0x7f // 01111111
};
2527
text_length1
25
u8g_font_rusUnifont
text_length2
30
30
45aa336e-b907-46ee-9467-6f997c622d0d
c9e195c7-2085-433c-ad49-fcc5dc89ffa6
u8g_font_5x8rus
u8g.drawLine(0, 0, 127, 63);
color_g
5120cc20-ae64-4065-ad73-27874c3e4b44
89c4c999-e397-4c4f-b021-45a4511547d4
if ( en ) {
u8g.setColorIndex(color);
u8g.firstPage();
do {
if (en_text ) {
text_1.toCharArray(textStr1, text_1.length()+1);
text_2.toCharArray(textStr2, text_2.length()+1);
u8g.setFont(set_font1);
u8g.drawStr( x1, y1, textStr1);
u8g.setFont(set_font2);
u8g.drawStr( x2, y2, textStr2);}
if (en_graphics ) { u8g.setColorIndex(color_g);
graphics }
if (en_bitmap ) {u8g.drawBitmapP( x_b, y_b, cnt, h, rook_bitmap);}
} while(u8g.nextPage());
}
538
textStr1
[text_length1];
char
textStr2
[text_length2];
char
00000000
0x55, // 01010101
0x7f, // 01111111
0x3e, // 00111110
0x3e, // 00111110
0x3e, // 00111110
0x3e, // 00111110
0x7f // 01111111
};
rook_bitmap
[] PROGMEM = {
0x00,
const uint8_t
130@70 corner: 144@90
Тест блока
130@100
150@100
73.0d@104.0d
130@90 corner: 150@110
для LCD1285
130@120
150@120
65.0d@124.0d
130@110 corner: 150@130
130@140
144@140
130@130 corner: 144@150
130@160
144@160
130@150 corner: 144@170
31aaf1c9-6d36-4671-9f78-22b4342d59c0
15
x_b
789a6739-9c8c-479a-bfc0-601f2a3f1730
70
e467a0fc-03e1-4f95-9282-893e5ec850ec
y_b
0ec47364-5e34-4480-bc3c-0ba671e82307
243e8e13-ae9f-4144-868d-1d448caeed97
cnt
e7c92739-8981-4416-86cf-01f7ee8fbcd3
28fa4362-abad-4f74-9c53-ba5bdf18d056
h
8
c699f926-9dac-42d0-bc4e-6ef82bdfc826
a9d5166b-39a9-46ff-82aa-5e2725ca5b96
textStr1
[text_length1];
char
textStr2
[text_length2];
char
00000000
0x55, // 01010101
0x7f, // 01111111
0x3e, // 00111110
0x3e, // 00111110
0x3e, // 00111110
0x3e, // 00111110
0x7f // 01111111
};
rook_bitmap
[] PROGMEM = {
0x00,
const uint8_t
260
(0 to: 260)
9600
arduinoIDE
147
1024
12450284
Arduino Uno
142360727