Menampilkan Karakter di OLED 128×64 SSD1306 Menggunakan Arduino Uno

Organic Light-Emitting Diode (OLED) merupakan layar display yang terbuat dari semikonduktor berfungsi sebagai pemancar cahaya yang terbuat dari lapisan organik. OLED digunakan dalam teknologi electroluminence, seperti pada tampilan layar atau display. Beberapa varian OLED yang dijual di pasaran seperti terlihat pada gambar di bawah ini. Produk-produk OLED display tersebut tersedia dalam berbagai macam ukuran (0,96 inci, 1,3 inci, dll), resolusi (128×64, 128×32, 180×60, dll) dan warna (biru/putih)

Beberapa produk oled display di pasaran

Cara kerja OLED berdasarkan medan listrik yang diterapkan pada elektroda. Jika ada medan listrik maka fungsi kerja katoda berkurang, memungkinkan elektron berpindah dari katoda ke pita konduksi di lapisan organik dan menghasilkan lubang pada pita valensi. Anoda akan mendorong lubang menuju pita valensi organik dan menyebabkan terjadinya proses rekombinasi elektron dan lubang pada lapisan organik, yang menyebabkan elektron akan turun dan bergabung dengan lubang, kemudian memberikan energi berlebih berupa foton cahaya dengan panjang gelombang tertentu. Akhirnya, emisi cahaya pada panjang gelombang tertentu akan diperoleh tergantung pada jenis bahan pancaran cahaya yang digunakan,.

Alat dan Bahan

Untuk lebih memahami bagaimana cara kerja OLED Dosplay khususnya dalam aplikasinya dengan Arduino Uno, marilah kita buat percobaan sederhana berikut ini:

Alat dan bahan yang perlu disiapkan:

  1. Arduino Uno
  2. Modul OLED Display 128×64 SSD1306
  3. Kabel jumper male to female secukupnya

Konfigurasi wiring:

  • VCC dihubungkan dengan 5v Arduino Uno.
  • GND dihubungkan dengan GND Arduino Uno.
  • SDA dihubungkan dengan pin SDA atau pin A4 Arduino Uno
  • SCL dihubungkan dengan pin SCL atau pin A5 Arduino Uno

Source Code

Buat pembelajaran berikut kami berikan contoh program untuk menampilkan karakter di OLED 128×64 menggunakan Arduino Uno. Sebelumnya Anda perlu menginstal library-library yang dibutuhkan ya, misalnya library Adafruit_GFX.h dan Adafruit_SSD1306.h. Cara instalnya cukup mudah, cukup melalu menu Tools-Manage Libraries kemudian ketikkan nama library yang mau diinstal. Pastikan laptop Anda terhubung internet ya

#include <SPI.h>              //Library SPI
#include <Wire.h>             //Library Wire
#include <Adafruit_GFX.h>     //Library GFX
#include <Adafruit_SSD1306.h> //Library OLED SSD1306

#define SCREEN_WIDTH 128 //Panjang LCD OLED
#define SCREEN_HEIGHT 64 //Tinggi LCD OLED

#define OLED_RESET -1    //Pin reset terhubung dengan arduino
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &amp;Wire, OLED_RESET);

void setup() {
Serial.begin(9600);
if(!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) { //Alamat OLED
Serial.println(F("SSD1306 allocation failed"));
for(;;); // Don't proceed, loop forever
}
}

void loop() {
//display.display();
//delay(2000);
display.clearDisplay();
display.setTextSize(1);           //Instruksi mengatur ukuran karakter
display.setTextColor(WHITE);      //Instruksi untuk mengatur warna
display.setCursor(32,0);          //Karakter dumulai dari kolom 32 baris 1
display.print("Welcome to");      //menampilkan karakter "Welcome to" pada OLED
display.setTextSize(1);           //Instruksi mengatur ukuran karakter
display.setCursor(20,10);         //Karakter dimulai dari kolom 20 baris 10
display.setTextColor(WHITE);      //Instruksi untuk mengatur warna tampilan
display.println("Indomaker.com"); //menampilkan karakter "Indomaker.com" pada OLED
display.setTextSize(1);           //Instruksi mengatur ukuran karakter
display.setCursor(10,20);
display.setTextColor(WHITE);
display.print("Innovate Every day"); //menampilkan karakter "Innovate Every Day" pada OLED
display.display();
delay(2000);
display.clearDisplay();
display.setTextSize(2);           //Instruksi mengatur ukuran karakter
display.setTextColor(WHITE);      //Instruksi untuk mengatur warna
display.setCursor(20,0);          //Karakter dumulai dari kolom 20 baris 0
display.print("Tutorial");        //menampilkan karakter "Tutorial" pada OLED
display.setTextSize(2);           //Instruksi mengatur ukuran karakter
display.setTextColor(WHITE);      //Instruksi untuk mengatur warna
display.setCursor(40,20);         //Karakter dumulai dari kolom 40 baris 20
display.print("OLED");            //menampilkan karakter "OLED" pada OLED
display.setTextSize(2);           //Instruksi mengatur ukuran karakter
display.setCursor(20,50);         //Karakter dimulai dari kolom 20 baris 50
display.setTextColor(WHITE);      //Instruksi untuk mengatur warna tampilan
display.println("SSD1306");       //menampilkan karakter "SSD1306" pada OLED
display.display();
delay(2000);
}

Hasil Percobaan

Upload contoh program di atas, kemudian amati OLED display Anda. Jika rangkaian komponen sudah benar dan tidak ada error di sketch di atas, seharusnya tampilan project Anda seperti gambar di bawah

Gimana? Mudah bukan? Komponen display sangat penting dalam project/sistem Anda baik untuk menampilkan menu atau mungkin proses debugging jika sistem Anda bermasalah. Semoga contoh project sederhana di atas dapat menjadi pemicu ide-ide besar Anda ….

Leave a Reply