WEMOS OLED Shield — это модуль с OLED дисплеем, предназначенный для установки на WeMos mini. Модуль позволяет выводить монохромную (белый/чёрный) графическую информацию по шине I2C.
На плате WeMos OLED Shield установлен OLED (Organic Light-Emitting Diode) дисплей 64×48 пикселей, каждый пиксель которого является органическим светодиодом. Благодаря тому что каждый пиксель является излучателем света (а не ячейкой перекрывающей свет, как в LCD или TFT дисплеях), данный дисплей обладает высокой контрастностью, на который можно смотреть под любым углом без потери качества картинки. Модуль является энергоэкономичным и подключается по шине I2C, адрес модуля по умолчанию 0x3C, но его можно изменить на 0x3D и подключить два дисплея к одной шине.
Особенности шилда:
- Используемые выводы: D1 (SCL), D2 (SDA), 3V3, GND
- Шина передачи данных: I2C
- Адрес на шине I2C: 0x3C (по умолчанию) или 0x3D (устанавливается на обороте платы)
- Размер экрана: 64×48 пикселей (0.66” дюймов)
- Тип дисплея: OLED
- Микроконтроллер дисплея: SSD1306
- Цвет дисплея: монохромный (белый/чёрный)
Подключение:
- Перед установкой шилда, к его выводам нужно припаять разъемы идущие с ним в комплекте.
- Все Shield WeMos устанавливаются на плату WEMOS D1 mini без использования проводов.
- На всех платах WeMos имеется вырез возле вывода 3V3. При установке Shield вырезы всех плат должны находиться с одной и той же стороны (друг над другом).
- Модуль использует шину I2C для получения данных по адресу 0x3C (адрес по умолчанию). На обратной стороне платы имеется 3 контактные площадки для установки адреса на шине I2C, центральная площадка должна быть соединена с одной из крайних, рядом с которыми написан устанавливаемый адрес 0x3C / 0x3D.
Пример:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
#include <Wire.h> // Подключаем библиотеку Wire для работы с шиной I2C #include <SFE_MicroOLED.h> // Подключаем библиотеку SFE_MicroOLED для работы с OLED дисплеем #define PIN_RESET 255 // Определяем номер вывода к которому подключён вывод RST дисплея при подключении по шине I2C (если у дисплея нет этого вывода, то присваиваем значение 255) #define DC_JUMPER 0 // Определяем адрес дисплея на шине I2C: 0-0x3C / 1-0x3D MicroOLED oled(PIN_RESET, DC_JUMPER); // Объявляем объект oled для работы с дисплеем по шине I2C, указывая ранее определённые выводы и адрес дисплея // void setup(){ // oled.begin(); // Инициируем работу с OLED дисплеем oled.clear(ALL); // Чистим графическую память дисплея (избавляемся от артефактов которые могли появиться при подаче питания) oled.display(); // Выводим данные из буфера библиотеки на дисплей delay(1000); // Устанавливаем задержку на 1 секунду oled.clear(PAGE); // Чистим графический буфер библиотеки oled.setFontType(0); // Устанавливаем шрифт с номером 0 (0-5x7, 1-8x16, 2-семисегментный, 3-большие цифры, 4-31x48) oled.setCursor(10, 20); // Устанавливаем курсор в позицию X=10, Y=20 oled.print("ampermarket"); // Загружаем текст "ampermarket" в графический буфер библиотеки (верхний левый угол первого символа будет находиться в позиции курсора) oled.line(10, 17, 58, 17); // Загружаем линию в графический буфер библиотеки (координаты линии находятся выше текста) oled.line(10, 29, 58, 29); // Загружаем линию в графический буфер библиотеки (координаты линии находятся ниже текста) oled.display(); // Выводим данные из буфера библиотеки на дисплей } // // void loop(){} |