Hướng Dẫn Sử Dụng Màn Hình OLED SSD1306 Với ESP8266 Dành Cho Người Mới Bắt Đầu
Trong bài viết này, chúng ta sẽ học cách kết nối và hiển thị thông tin trên màn hình OLED SSD1306 sử dụng ESP8266 (ví dụ: NodeMCU). Màn hình OLED rất phù hợp để hiển thị các thông tin nhỏ như văn bản, dữ liệu cảm biến hoặc trạng thái hệ thống trong các dự án IoT.
Hướng Dẫn Sử Dụng Màn Hình OLED SSD1306 Với ESP8266 Dành Cho Người Mới Bắt Đầu
Giới Thiệu
Trong bài viết này, chúng ta sẽ học cách kết nối và hiển thị thông tin trên màn hình OLED SSD1306 sử dụng ESP8266 (ví dụ: NodeMCU). Màn hình OLED rất phù hợp để hiển thị các thông tin nhỏ như văn bản, dữ liệu cảm biến hoặc trạng thái hệ thống trong các dự án IoT.
Các Thành Phần Cần Chuẩn Bị
- Phần cứng:
- ESP8266 (NodeMCU hoặc Wemos D1 Mini)
- Màn hình OLED SSD1306 128x64 (giao tiếp I2C)
- Dây nối
- Phần mềm:
- Arduino IDE
- Thư viện:
- Adafruit GFX Library
- Adafruit SSD1306 Library
Kết Nối Phần Cứng
Kết nối các chân của màn hình OLED với ESP8266 như sau:
Màn hình OLED |
ESP8266 (NodeMCU) |
VCC |
3V3 |
GND |
GND |
SDA |
D2 (GPIO4) |
SCL |
D1 (GPIO5) |
Cài Đặt Thư Viện Trên Arduino IDE
- Mở Arduino IDE.
- Vào Tools > Manage Libraries.
- Tìm và cài đặt:
- Adafruit GFX Library
- Adafruit SSD1306
Lập Trình ESP8266
Dưới đây là đoạn code hoàn chỉnh để hiển thị TEXT lên màn hình OLED:
#include <Wire.h> #include <Adafruit_GFX.h> #include <Adafruit_SSD1306.h>
#define SCREEN_WIDTH 128 #define SCREEN_HEIGHT 64 #define OLED_RESET -1 #define OLED_ADDRESS 0x3C
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);
void setup() { // Define I2C pins for ESP8266 Wire.begin(4, 5); // SDA, SCL
// Initialize the display if (!display.begin(SSD1306_SWITCHCAPVCC, OLED_ADDRESS)) { Serial.println(F("SSD1306 allocation failed")); for (;;); // Don't proceed, loop forever }
display.clearDisplay(); display.setTextSize(2); display.setTextColor(SSD1306_WHITE); display.setCursor(0, 0); display.print("PYWORLD.VN"); display.setTextSize(1); display.setCursor(0, 20); display.print("Testing OLED..."); display.display(); }
void loop() { display.clearDisplay(); display.setTextSize(2); display.setTextColor(SSD1306_WHITE); display.setCursor(0, 0); display.print("PYWORLD.VN"); display.setTextSize(1); display.setCursor(0, 20); display.print("Testing OLED..."); display.display(); display.setCursor(0, 40); display.setTextSize(2); display.print("TIME:"); display.print(millis() / 1000); // Hiển thị thời gian chạy display.display(); delay(1000); }
|
Tải Code Lên ESP8266
- Chọn board: Vào Tools > Board > NodeMCU 1.0 (ESP-12E Module).
- Chọn cổng COM: Vào Tools > Port, chọn cổng kết nối với ESP8266.
- Nhấn Upload để nạp code.
Kết Quả
- Sau khi tải code lên, màn hình OLED sẽ hiển thị:
- Dòng đầu tiên: PYWORLD.VN
- Dòng thứ hai: Testing OLED...
- Dòng thứ 3: TIME: [biến đếm tăng dần]
Lời Kết
Hy vọng bài viết này giúp bạn dễ dàng bắt đầu với màn hình OLED SSD1306 và ESP8266. Nếu bạn gặp khó khăn trong quá trình thực hiện, hãy để lại bình luận bên dưới hoặc liên hệ qua PYWORLD.VN.
Chúc bạn thành công và sáng tạo thêm nhiều dự án thú vị!
Xem thêm