Panduan dasar menggambar sebuah bentuk pada SSD1306 0.96 inch Oled Display dangan ESP32 menggunakan Arduino IDE. Parts yang digunakan, wiring diagram dan library dapat dilihat di ESP32 OLED Display.
Draw a pixel

Metode ini digunakan untuk menyalakan 1 titik (pixel) pada Oled display, dengan memasukkan koordinat X
dan Y
. Karena resolusi Oled display kita adalah 126 x 64 pixel, maka untuk membuat 1 titik di tengah-tengah Oled display, kita bisa menggunakan perintah berikut:
display.setPixel(64, 32);
Draw a line

Metode pertama untuk membuat garis adalah dengan perintah drawLine(x0, y0, x1, y1)
. Kita cukup memasukan koordinat X
awal, Y
awal, X
akhir dan Y
akhir.
display.drawLine(10, 54, 118, 10);

Metode berikutnya adalah untuk menggambar garis horizontal dengan perintah drawHorizontalLine(x, y, length)
. Informasi yang diperlukan adalah koordinat awal dan panjang garis.
display.drawHorizontalLine(10, 32, 108);

Metode berikutnya adalah untuk menggambar garis secara vertical dengan perintah drawVerticalLine(x, y, length)
. Informasi yang diperlukan adalah koordinat awal dan panjang garis.
display.drawVerticalLine(64, 10, 44);
Draw a rectangle

Untuk menggambar persegi atau persegi panjang, bisa menggunakan perintah drawRect(x, y, width, height)
dengan memasukkan koordinat X
dan Y
selanjutnya panjang
dan tinggi
persegi.
display.drawRect(10, 10, 108, 44);

Untuk menggambar persegi solid, bisa menggunakan perintah fillRect(x, y, width, height)
dengan memasukkan koordinat X
dan Y
selanjutnya panjang
dan tinggi
persegi.
display.fillRect(10, 10, 108, 44);
Draw a circle

Untuk menggambar lingkaran, bisa menggunakan perintah drawCircle(x, y, radius)
dengan memasukkan koordinat X
, Y
dan radius
lingkaran.
display.drawCircle(64, 32, 22);

Untuk menggambar lingkaran solid, bisa menggunakan perintah fillCircle(x, y, radius)
dengan memasukkan koordinat X
, Y
dan radius
lingkaran.
display.fillCircle(64, 32, 22);
Draws progress bar

Metode berikut bisa digunakan untuk menggambar progress bar drawProgressBar(x, y, width, height, progress)
dengan memasukkan koordinat X
dan Y
, kemuadian informasi panjang
, tinggi
dan progress
. Contoh berikut untuk menggambar progress bar dengan progress 60%.
display.drawProgressBar(10, 32, 108, 10, 60);