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