Каталог

OLED дисплей 2.7 SPI белый

Цена:

4280 р.
менее 10 шт.
Уже в корзине
Код товара: 14639
Оригинальное название:
OLED Display 2.7 Inch 128x64 SSD1325/SPI with GB2312 Embedded Font Chip

Описание товара

Технические характеристики

  • Питание: 2.7-3.6В
  • Рабочее напряжение: +3.3В
  • Диагональ: 2.7 дюйма
  • Тип экрана: монохромный OLED
  • Разрешение: 128 х 64 графических точек
  • Размер графической точки: 0.48 х 0.48мм
  • Цвет: белый
  • Активная область: 61.41 х 30.69мм
  • Соотношение сторон: 2:1
  • Контрастность: 10000:1
  • Яркость: 100кд/м2
  • Контроллер графики: SSD1325 Solomon Systech
  • Интерфейс: последовательный периферийный SPI
  • Банк графических шрифтов: GT30L32S4W (ER3304-1)
  • Подключение: 9 контактов с шагом 2.54мм
  • Температура эксплуатации: -30°С...+70°С
  • Размеры модуля: 85.0 х 50.0 х 7.0мм
  • Вес: 30г

Разработка собственных электронных проектов, причём совершенно не важно какой сложности они должны получится в завершённом виде, часто подразумевает использование в конструкции современного универсального инструмента общения между устройством и пользователем. К подобным средствам взаимодействия с окружающим миром относится любой графический или символьный экранный модуль, способный оповещать о любых запрограммированных событиях: вывод текстовой информации с внутренними процедурными данными или показателями, полученными от всевозможных измерительных датчиков, отображение разноразмерных графических фигур, построение разнообразных графиков и прочих визуально понятных элементов. Выбор подходящего дисплея напрямую зависит от потребностей проекта и конструктивных возможностей экранного модуля, начиная от высвечивания простых одноцветных символьных строк и заканчивая выводом на экран цветных изображений с поддержкой большого количества оттенков палитры RGB. Как правило, способности экранного модуля не ограничиваются лишь только графическим ядром контроллера, если в схемах плат присутствуют функционально дополняющие компоненты.

Наиболее популярные на сегодняшний день экраны производятся по технологии TFT TN LCD - недорогие жидкокристаллические матрицы с фоновой светодиодной подсветкой. Экраны TFT TN LCD имеют ряд ограничений, среди которых выделяются невысокие углы обзора и контрастность. Альтернативная технология производства OLED-экранов (органический светодиод, светящийся при прохождении через него электрического тока) практически избавлена от подобных недостатков, обладает увеличенными показателями цветопередачи, настоящим глубоким чёрным цветом, малым весом ЖК-панелей и значительно расширенными углами обзора, предоставляя возможность с любой стороны просматривать изображения с максимальной четкостью, без видимых цветовых искажений. В экранных матрицах OLED, свечение излучают сами диоды, и им не требуется дополнительное освещение. По этой причине, дисплеи OLED можно называть эффективными в задачах экономии энергопотребления, что порой совсем немаловажно в проектах с использованием автономных источников питания.

Интерфейс графического модуля с OLED экраном 2.7 дюйма

№ контакта Обозначение Назначение Описание
1 GND Питание Заземление
2 VCC Питание Входное напряжение модуля 3.3 В
3 SCL Вход Сигнал тактирования, SPI_CLK
4 SDA Вход Сигнал входящих данных, MOSI
5 RES Вход Сброс OLED
6 DC Вход Сигнал переключения между режимами приёма Данных и Команд
7 CS1 Вход Выбор микросхемы OLED, SPI_CS
8 FSO Выход Сигнал исходящих данных банка шрифтов, SPI_MISO
9 CS2 Вход Выбор микросхемы банка шрифтов

 

Встроенные шрифты GT30L32S4W

Микросхема с предустановленными точечными шрифтами (матрица шрифтов) GT30L32S4W, известная также под маркировкой ER3304-1, расположенная на обратной стороне платы модуля, содержит в себе огромный набор горизонтально ориентированных текстовых символов. В состав набора входят ASCII-шрифты, состоящие из 96 латинских букв и знаков: базовый, Arial и Times New Roman. Так как производство модулей изначально ориентировано на всемирную эксплуатацию, включая страны Восточной Азии, в банк со шрифтами вшито более 6 тысяч иероглифов национального стандарта Китайской Народной Республики (кодировка GB2312), дополнительные символы и знаки, японские каны, греческий алфавит, кириллица, чжуинь и символы пиньиня с диакритикой.

Многим приложениям порой требуется использование одного или нескольких шрифтов разного размера. Для облегчения написания программного кода, подразумевающего масштабирование (пропорциональное увеличение или уменьшение), банк GT30L32S4W содержит несколько вариантов предопределённой величины для каждого отдельно взятого шрифта, начиная от самого малого размера 5х7 точек и заканчивая максимально крупным размером 32х32 точек. Доступ ко всем имеющимся в микросхеме символам шрифтов выполняется считыванием данных по установленному адресу. Обращение к микросхеме основано на 4-проводном последовательном периферийном интерфейсе SPI, совмещённым с графическим контроллером SSD1325 в одной шине. Более подробная информация по выборке символом располагается в листе данных на микросхему GT30L32S4W в разделе "Документация".

Схема подключения OLED-дисплея к Ардуино, примеры программирования

Схема соединения контроллера Arduino Due и модуля с OLED-экраном основана на стандартной 4-проводной последовательной шине SPI в периферийном режиме. В демонстрируемом примере, плата Due выбрана не случайно. Почти все её внутренние электрические цепи (кроме выводов питания +5В), включая контакты общего назначения GPIO, работают на номинальном рабочем напряжении 3,3 вольта. Именно на таком же логическом уровне функционирует и центральная микросхема SSD1325 со всеми компонентами модуля с жидкокристаллическим экраном. Плата экранного модуля имеет 9 выводов, каждый из которых промаркирован в соответствии с его непосредственным назначением.

Питание дисплея осуществляется через контакты VCC и GND, подключаемые к источнику постоянного напряжения 3,3 вольта. Вариантов запитать дисплейный модуль существует два: напрямую от платы контроллера, если общая нагрузка на последний не велика и не превышает в сумме 700мА, либо от произвольного внешнего стабилизированного блока питания. Например, удобно будет использовать понижающий преобразователь DC-DC, соединённый с источником основного питания платы контроллера Due.

Процесс передачи графической информации задействует 3 из 4 линий шины связи SPI: тактирование - SCL (SPI_CLK), передача данных от Ардуино Due к дисплею - SDA (SPI_MOSI) и выбор микросхемы - CS1 (SPI_CS). Контакты сигналов перезапуска экранного модуля RES и смены режимов передачи между командами и данными DC выбираются произвольно из группы выводов GPIO.

  Схема подключения дисплея к Arduino Due  

 

В приведённом ниже скетче, инициализатором контроллера SSD1325 выступает подключаемая внешняя библиотека U8glib, доступная в репозитории совместимых загружаемых библиотек Arduino IDE и на сайте GitHub. Кроме графических процедур, программный код библиотеки U8glib располагает набором собственных интегрированных шрифтов с изменяемыми размерами. Текст скетча взят из раздела примеров библиотеки и наглядно демонстрирует основные функции работы с графикой.

#include "U8glib.h"

U8GLIB_NHD27OLED_BW u8g(13, 11, 10, 9, 8);	// SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RES = 8

void u8g_prepare(void) {
  u8g.setFont(u8g_font_6x10);
  u8g.setFontRefHeightExtendedText();
  u8g.setDefaultForegroundColor();
  u8g.setFontPosTop();
}

void u8g_box_frame(uint8_t a) {
  u8g.drawStr( 0, 0, "drawBox");
  u8g.drawBox(5,10,20,10);
  u8g.drawBox(10+a,15,30,7);
  u8g.drawStr( 0, 30, "drawFrame");
  u8g.drawFrame(5,10+30,20,10);
  u8g.drawFrame(10+a,15+30,30,7);
}

void u8g_disc_circle(uint8_t a) {
  u8g.drawStr( 0, 0, "drawDisc");
  u8g.drawDisc(10,18,9);
  u8g.drawDisc(24+a,16,7);
  u8g.drawStr( 0, 30, "drawCircle");
  u8g.drawCircle(10,18+30,9);
  u8g.drawCircle(24+a,16+30,7);
}

void u8g_r_frame(uint8_t a) {
  u8g.drawStr( 0, 0, "drawRFrame/Box");
  u8g.drawRFrame(5, 10,40,30, a+1);
  u8g.drawRBox(50, 10,25,40, a+1);
}

void u8g_string(uint8_t a) {
  u8g.drawStr(30+a,31, " 0");
  u8g.drawStr90(30,31+a, " 90");
  u8g.drawStr180(30-a,31, " 180");
  u8g.drawStr270(30,31-a, " 270");
}

void u8g_line(uint8_t a) {
  u8g.drawStr( 0, 0, "drawLine");
  u8g.drawLine(7+a, 10, 40, 55);
  u8g.drawLine(7+a*2, 10, 60, 55);
  u8g.drawLine(7+a*3, 10, 80, 55);
  u8g.drawLine(7+a*4, 10, 100, 55);
}

void u8g_triangle(uint8_t a) {
  uint16_t offset = a;
  u8g.drawStr( 0, 0, "drawTriangle");
  u8g.drawTriangle(14,7, 45,30, 10,40);
  u8g.drawTriangle(14+offset,7-offset, 45+offset,30-offset, 57+offset,10-offset);
  u8g.drawTriangle(57+offset*2,10, 45+offset*2,30, 86+offset*2,53);
  u8g.drawTriangle(10+offset,40+offset, 45+offset,30+offset, 86+offset,53+offset);
}

void u8g_ascii_1() {
  char s[2] = " ";
  uint8_t x, y;
  u8g.drawStr( 0, 0, "ASCII page 1");
  for( y = 0; y < 6; y++ ) {
    for( x = 0; x < 16; x++ ) {
      s[0] = y*16 + x + 32;
      u8g.drawStr(x*7, y*10+10, s);
    }
  }
}

void u8g_ascii_2() {
  char s[2] = " ";
  uint8_t x, y;
  u8g.drawStr( 0, 0, "ASCII page 2");
  for( y = 0; y < 6; y++ ) {
    for( x = 0; x < 16; x++ ) {
      s[0] = y*16 + x + 160;
      u8g.drawStr(x*7, y*10+10, s);
    }
  }
}

void u8g_extra_page(uint8_t a)
{
  if ( u8g.getMode() == U8G_MODE_HICOLOR || u8g.getMode() == U8G_MODE_R3G3B2) {
    /* draw background (area is 128x128) */
    u8g_uint_t r, g, b;
    b = a << 5;
    for( g = 0; g < 64; g++ )
    {
      for( r = 0; r < 64; r++ )
      {
	u8g.setRGB(r<<2, g<<2, b );
	u8g.drawPixel(g, r);
      }
    }
    u8g.setRGB(255,255,255);
    u8g.drawStr( 66, 0, "Color Page");
  }
  else if ( u8g.getMode() == U8G_MODE_GRAY2BIT )
  {
    u8g.drawStr( 66, 0, "Gray Level");
    u8g.setColorIndex(1);
    u8g.drawBox(0, 4, 64, 32);    
    u8g.drawBox(70, 20, 4, 12);
    u8g.setColorIndex(2);
    u8g.drawBox(0+1*a, 4+1*a, 64-2*a, 32-2*a);
    u8g.drawBox(74, 20, 4, 12);
    u8g.setColorIndex(3);
    u8g.drawBox(0+2*a, 4+2*a, 64-4*a, 32-4*a);
    u8g.drawBox(78, 20, 4, 12);
  }
  else
  {
    u8g.drawStr( 0, 12, "setScale2x2");
    u8g.setScale2x2();
    u8g.drawStr( 0, 6+a, "setScale2x2");
    u8g.undoScale();
  }
}

uint8_t draw_state = 0;

void draw(void) {
  u8g_prepare();
  switch(draw_state >> 3) {
    case 0: u8g_box_frame(draw_state&7); break;
    case 1: u8g_disc_circle(draw_state&7); break;
    case 2: u8g_r_frame(draw_state&7); break;
    case 3: u8g_string(draw_state&7); break;
    case 4: u8g_line(draw_state&7); break;
    case 5: u8g_triangle(draw_state&7); break;
    case 6: u8g_ascii_1(); break;
    case 7: u8g_ascii_2(); break;
    case 8: u8g_extra_page(draw_state&7); break;
  }
}

void setup(void) {

  //flip screen, if required
  //u8g.setRot180();

#if defined(ARDUINO)
  pinMode(13, OUTPUT);           
  digitalWrite(13, HIGH);  
#endif
}

void loop(void) {
  
  // picture loop  
  u8g.firstPage();  
  do {
    draw();
  } while( u8g.nextPage() );
  
  // increase the state
  draw_state++;
  if ( draw_state >= 9*8 )
    draw_state = 0;
  
  //rebuild the picture after some delay
  //delay(150);
}

Физические размеры 2,7" OLED-модуля, мм

Физические размеры модуля с графическим экраном 240х320 ILI9341  

 

Документация модуля с OLED-экраном 2,7" 128х64

Похожие позиции

480 р.
Арт. 15146
Уже в корзине
менее 100 шт.
2000 р.
Арт. 16094
Уже в корзине
менее 50 шт.
7200 р.
Арт. 14640
Уже в корзине
менее 10 шт.
270 р.
Арт. 11180
Уже в корзине
менее 50 шт.
990 р.
Арт. 14384
Уже в корзине
менее 50 шт.
2330 р.
Арт. 16093
Уже в корзине
менее 50 шт.
footer shadow
Контакты

г. Москва, Пятницкое ш. д. 18, пав. 566

zakaz@compacttool.ru

8-495-752-55-22

compacttool logoadaptive site

accepted payment systems

Информация представленная на данном информационном ресурсе преследует исключительно рекламные цели и не является договором-офертой !

© Все права защищены 2015 - 2024г https://compacttool.ru