Menggunakan 0,96 "OLED dengan Arduino

Using a 0.96" OLED with the Arduino

Layar OLED 0,96 "adalah layar yang ringkas dan hemat energi yang sempurna untuk menampilkan data teks, grafik, dan sensor dalam proyek Arduino. Tutorial ini akan memandu Anda melalui pengaturan dan menggunakan layar OLED 0,96" dengan Arduino.


Apa yang Anda Butuhkan

  1. Dewan Arduino (mis., uno, mega, nano)
  2. Modul tampilan OLED 0,96 " (dengan antarmuka I2C atau SPI)
  3. Papan tempat memotong papan dan kabel jumper
  4. Komputer dengan IDE Arduino diinstal
  5. Perpustakaan: Adafruit SSD1306 dan ADAFRUIT GFX Library

Langkah 1: Memahami tampilan OLED

Layar OLED 0,96 "biasanya menggunakan driver SSD1306 dan mendukung komunikasi I2C atau SPI. Paling umum, beroperasi melalui protokol I2C, hanya membutuhkan dua pin data (SDA dan SCL).

Pinout i2c

Pin OLED Fungsi Arduino Uno Pin
Vcc Catu daya (3.3V atau 5V) 5v
Gnd Tanah Gnd
SDA Jalur data A4
Scl Garis jam A5

Catatan: Periksa lembar data modul OLED Anda untuk mengonfirmasi pinout.


Langkah 2: Memasang pustaka yang diperlukan

Untuk bekerja dengan tampilan OLED, Anda memerlukan perpustakaan berikut:

  1. ADAFRUIT SSD1306 PERPUSTAKAAN
  2. Perpustakaan Adafruit GFX

Langkah untuk menginstal perpustakaan

  1. Buka Ide Arduino.
  2. Pergi ke Sketsa > Sertakan perpustakaan > Kelola Perpustakaan.
  3. Cari "Adafruit SSD1306" dan klik Memasang.
  4. Cari "ADAFRUIT GFX Library" dan klik Memasang.

Langkah 3: Pengkabelan layar OLED

Hubungkan OLED ke Arduino sebagai berikut:

Pin OLED Pin Arduino
Vcc 5v
Gnd Gnd
SDA A4
Scl A5

Langkah 4: Mengunggah kode

Berikut contoh sketsa untuk menampilkan teks dan grafik di layar OLED:

Contoh Kode: Pengaturan OLED Dasar

#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>

#define SCREEN_WIDTH 128 // OLED display width, in pixels
#define SCREEN_HEIGHT 64 // OLED display height, in pixels

// Declaration for an SSD1306 display connected to I2C (SDA, SCL pins)
#define OLED_RESET    -1 // Reset pin not used
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);

void setup() {
  // Initialize the display
  if (!display.begin(SSD1306_I2C_ADDRESS, 0x3C)) { // Address 0x3C for most modules
    Serial.println(F("SSD1306 allocation failed"));
    for (;;);
  }

  display.clearDisplay(); // Clear the buffer

  // Display Welcome Message
  display.setTextSize(1);      // Set text size (1 = small)
  display.setTextColor(SSD1306_WHITE); // Set text color
  display.setCursor(0, 10);    // Set cursor position (x, y)
  display.println(F("Hello, OLED!"));
  display.display();           // Display the message
  delay(2000);

  // Draw a rectangle
  display.clearDisplay();
  display.drawRect(10, 10, 50, 30, SSD1306_WHITE); // x, y, width, height, color
  display.display();
  delay(2000);
}

void loop() {
  // Update screen with dynamic content if needed
}

Langkah 5: Menjelajahi Fungsi Tambahan

Perpustakaan Adafruit GFX menyediakan berbagai fungsi untuk grafik dan teks. Berikut beberapa contoh:

1. Menampilkan teks

  display.setTextSize(2); // Larger text size
  display.setTextColor(SSD1306_WHITE);
  display.setCursor(0, 0);
  display.println("Arduino");
  display.display();

2. Bentuk menggambar

  • Persegi panjang: display.drawRect(x, y, width, height, color);
  • Lingkaran: display.drawCircle(x, y, radius, color);
  • Garis: display.drawLine(x1, y1, x2, y2, color);

3. Membalikkan warna

  display.invertDisplay(true); // Invert colors
  delay(1000);
  display.invertDisplay(false); // Revert colors

Masalah umum dan pemecahan masalah

  1. OLED Tidak menampilkan:

    • Pastikan alamat I2C yang benar (0x3c atau 0x3d) digunakan dalam kode.
    • Periksa kabel dan koneksi.
  2. Kesalahan Perpustakaan:

    • Pastikan perpustakaan Adafruit SSD1306 dan GFX diinstal.
  3. Tampilan berkedip:

    • Menggunakan display.clearDisplay() Hanya bila perlu untuk meminimalkan flicker.
  4. Pinout yang salah:

    • Verifikasi lembar data modul untuk koneksi SDA dan PIN SCL yang benar.

Aplikasi tampilan OLED

  1. Menampilkan data sensor (mis., Suhu, kelembaban)
  2. Antarmuka pengguna untuk sistem tertanam
  3. Umpan balik visual untuk perangkat IoT
  4. Tampilan grafis untuk elektronik portabel

Kesimpulan

Layar OLED 0,96 "adalah tambahan yang serba guna dan menarik secara visual untuk proyek Arduino. Dengan mengikuti panduan ini, Anda dapat menampilkan teks, grafik, dan data real-time pada layar OLED Anda. Eksperimen dengan berbagai fungsi dan pustaka untuk membuat tampilan yang dinamis dan interaktif interaktif. untuk proyek Anda!

Tinggalkan komentar

Notice an Issue? Have a Suggestion?
If you encounter a problem or have an idea for a new feature, let us know! Report a problem or request a feature here.