В этой статье мы рассмотрим процесс подключения OLED I2C дисплея к микроконтроллеру NodeMCU 32S, основанному на чипе ESP32. OLED дисплеи с интерфейсом I2C – это отличное решение для отображения информации в проектах, где требуется небольшой и энергоэффективный экран. NodeMCU 32S обеспечивает мощную вычислительную мощность и беспроводное соединение, что делает его идеальным выбором для интернета вещей (IoT) и множества других приложений.
OLED (Organic Light Emitting Diode) дисплей с интерфейсом I2C представляет собой компактный и энергоэффективный дисплей, обладающий следующими характеристиками:
- Разрешение: 128×64 пикселей.
- Технология OLED обеспечивает высокую яркость и контрастность изображения.
- Интерфейс I2C делает его легким в подключении и управлении.
- Низкое энергопотребление, что важно для портативных устройств.
- Поддерживает отображение текста и графики.
Основные достоинства OLED I2C дисплея включают в себя высокое качество изображения, малый размер и эффективное использование энергии.
NodeMCU 32S – это микроконтроллер, построенный на чипе ESP32, который предоставляет следующие характеристики:
- Двухъядерный процессор Xtensa LX6 с тактовой частотой до 240 МГц.
- Встроенный модуль Wi-Fi и Bluetooth для беспроводной связи.
- Множество GPIO-пинов для подключения дополнительных устройств.
- Поддержка разработки с использованием Arduino IDE.
- Интегрированный USB-порт для программирования и питания.
Основные достоинства NodeMCU 32S включают в себя высокую вычислительную мощность и поддержку беспроводной связи, что делает его отличным выбором для проектов IoT.
Схема подключения
Для подключения OLED I2C дисплея к NodeMCU 32S выполним следующие шаги:
- Подключите VCC дисплея к пину 3.3V NodeMCU 32S для питания.
- Подключите GND дисплея к пину GND NodeMCU 32S для заземления.
- Подключите SDA дисплея к пину GPIO23 (SDA) NodeMCU 32S.
- Подключите SCL дисплея к пину GPIO22 (SCL) NodeMCU 32S.
OLED I2C Дисплей 1.3′ | NodeMCU 32S (ESP32) |
---|---|
VCC | 3.3V |
GND | GND |
SDA | GPIO23 (SDA) |
SCL | GPIO22 (SCL) |
Библиотеки
Для работы с LCD 1602 в Arduino IDE потребуется установить библиотеку “Adafruit SSD1306”. Вы можете установить ее, выполнив следующие шаги:
- Откройте Arduino IDE.
- Перейдите в меню “Скетч” (Sketch) -> “Включить библиотеку” (Include Library) -> “Управление библиотеками” (Manage Libraries).
- В поисковой строке введите “Adafruit_SSD1306” и установите библиотеку, найденную в списке.
Пример кода
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
#include <Adafruit_SSD1306.h> #include <Wire.h> #define SCREEN_WIDTH 128 #define SCREEN_HEIGHT 64 #define SSD1306_I2C_ADDRESS 0x1A // Замените на адрес вашего дисплея Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, -1); void setup() { if(!display.begin(SSD1306_I2C_ADDRESS, 21, 22)) { Serial.println(F("SSD1306 allocation failed")); for(;;); } display.display(); // Включение дисплея delay(2000); // Задержка 2 секунды display.clearDisplay(); // Очистка экрана display.setTextSize(1); // Установка размера текста display.setTextColor(SSD1306_WHITE); // Установка цвета текста (белый) display.setCursor(0, 0); // Установка курсора в позицию (0, 0) display.println(F("Hello, World!")); // Вывод текста "Hello, World!" на дисплей display.display(); // Отображение текста на экране } void loop() { // Ваш код здесь } |
Этот код инициализирует OLED дисплей и выводит “Hello, World!” на экран. Вы можете модифицировать функцию loop()
для отображения своей информации.