LCD 128×64 - Arduino
Подключение монохромного дисплея 128×64 к Ардуино.
Схема подключения
В продаже встречаются два варианта дисплеев, со встроенным потенциометром (крутилка для регулировки контраста) и без него.
На дисплее потенциометр выглядит вот так:
Маркировка контактов на дисплеях может различаться, но расположение одинаково для всех:
Vss или GND — GND.
Vdd или VCC — 5 вольт.
Vo — потенциометр.
D/I или IRS — пин 12 (ардуина).
R/W или IR/W — пин 11 (ардуина).
E или IE — пин 10 (ардуина).
CS1 или PSB — GND.
A или BLA — 3.3 вольта (подсветка дисплея).
K или BLK — GND (подсветка дисплея).
Пины ардуины можно использовать любые.
Схема подключения дисплея с встроенным потенциометром:
Схема подключения дисплея без встроенного потенциометра:
Потенциометр можно использовать любой от 2кОм до 20кОм.
Ардуина
Скачайте и установите библиотеку u8glib, и залейте в ардуину нижеприведённый скетч:
#include "U8glib.h"
U8GLIB_ST7920_128X64 u8g(10, 11, 12, U8G_PIN_NONE); // настройка пинов
int val = 2015;
char val_to_char[5]={0,};
void setup()
{
u8g.setFont(u8g_font_6x10); // Выбор шрифта
}
void loop()
{
sprintf(val_to_char, "%d",val); // функция sprintf переведёт число в строковый массив
u8g.firstPage();
do
{
u8g.drawStr(2, 10, "istarik.ru"); // выведет надпись istarik.ru
u8g.drawStr(2, 27, val_to_char); // выведет число 2015
}
while(u8g.nextPage());
}
Для выбора шрифта необходимо обратиться к файлу (из библиотеки) utility/u8g.h.
Находим блок /* font definitions */, копируем строку в кавычках и вставляем её в void setup().
...
/* font definitions */
extern const u8g_fntpgm_uint8_t u8g_font_m2icon_5[] U8G_FONT_SECTION("u8g_font_m2icon_5");
extern const u8g_fntpgm_uint8_t u8g_font_m2icon_7[] U8G_FONT_SECTION("u8g_font_m2icon_7");
extern const u8g_fntpgm_uint8_t u8g_font_m2icon_9[] U8G_FONT_SECTION("u8g_font_m2icon_9");
extern const u8g_fntpgm_uint8_t u8g_font_u8glib_4[] U8G_FONT_SECTION("u8g_font_u8glib_4");
extern const u8g_fntpgm_uint8_t u8g_font_u8glib_4r[] U8G_FONT_SECTION("u8g_font_u8glib_4r");
extern const u8g_fntpgm_uint8_t u8g_font_6x12_75r[] U8G_FONT_SECTION("u8g_font_6x12_75r");
extern const u8g_fntpgm_uint8_t u8g_font_6x13_75r[] U8G_FONT_SECTION("u8g_font_6x13_75r");
...
Координаты начала строки устанавливаются в функции u8g.drawStr(2, 10, «istarik.ru»);, первая цифра — отступ слева, вторая — отступ сверху.
Вот и всё )))
Вступайте в Telegram-группу Arduino
- +185
- stD
29325
Поддержать автора
Комментарии (5)