Cara Menggunakan I2C Display dengan ESP32

Haloo semuaaaa !!
Kembali lagi bersama saya Daniel Hutabalian di artikel tentang ESP32. Sesuai dengan judul, pada artikel kali ini saya akan membahas cara menggunakan I2C Display pada ESP32 untuk menampilkan tulisan pada LCD nya tersebut. Berikut adalah penjelasannya.Selamat membaca dan menyimak !!

Sebelum masuk ke pembahasannya, saya ingin menceritakan pengalaman saya dalam membuat proyek ini. Awalnya saya ingin membeli I2C Display langsung setelah tugas ini diberikan, karena alat yang saya butuhkan tinggal itu. Tetapi pada hari itu saya batal untuk membelinya dan mencoba menanyakan kepada kakak saya yang Teknik Elektro siapa tau dia mempunyai alat tersebut. Ternyata, alat tersebut dimiliki oleh kakak saya ini dan kondisi barangnya pun masih sangat baik. Saya pun senang sekali ketika melihatnya membawakan I2C Display nya kepada saya. Akhirnya setelah semua peralatan lengkap, saya pun langsung mencoba mengerjakan proyek ini. Berikut adalah alat - alat yang dibutuhkan.

1. ESP32 (Dalam artikel ini yang dipakai DEVKIT V1 30 PIN) dan kabel USB Type A to Micro USB



2. I2C Display



3. Kabel Jumper Female to Female



4. Library Liquid Crystal I2C. Klik disini untuk mendownload Library nya. (Sumber : https://randomnerdtutorials.com/esp32-esp8266-i2c-lcd-arduino-ide/). Library yang didownload tadi diekstrak dan folder dengan nama LiquidCrystal_I2C-master diganti namanya menjadi LiquidCrystal_I2C dan kemudian folder tersebut dimasukkan ke dalam Libraries folder Arduino.



Dalam proses pembuatan nya cukup mudah karena tinggal melihat dan memahami code program dari sumber referensi dibawah kemudian praktekkan. Untungnya, dalam proyek ini, saya tidak mengalami kendala atau masalah dalam pembuatannya. Berikut adalah caranya.

1. Hubungkan ESP32 ke PC kita dengan menggunakan kabel USB Type A to Micro USB tadi.



2. Hubungkan ESP32 dengan I2C Display menggunakan kabel jumper yang telah disediakan dengan skema sebagai berikut.




3. Masukkan kode program berikut dan upload. Setelah selesai mengupload, buka serial Monitor dari Menu Tools dengan baud rate 115200. Kemudian tekan tombol EN pada ESP32. Maka, akan muncul address dari I2C Display kita.

/*********
  Rui Santos
  Complete project details at https://randomnerdtutorials.com  
*********/

#include <Wire.h>
 
void setup() {
  Wire.begin();
  Serial.begin(115200);
  Serial.println("\nI2C Scanner");
}
 
void loop() {
  byte error, address;
  int nDevices;
  Serial.println("Scanning...");
  nDevices = 0;
  for(address = 1; address < 127; address++ ) {
    Wire.beginTransmission(address);
    error = Wire.endTransmission();
    if (error == 0) {
      Serial.print("I2C device found at address 0x");
      if (address<16) {
        Serial.print("0");
      }
      Serial.println(address,HEX);
      nDevices++;
    }
    else if (error==4) {
      Serial.print("Unknow error at address 0x");
      if (address<16) {
        Serial.print("0");
      }
      Serial.println(address,HEX);
    }    
  }
  if (nDevices == 0) {
    Serial.println("No I2C devices found\n");
  }
  else {
    Serial.println("done\n");
  }
  delay(5000);          
}

4. Masukkan kode ini lagi kedalam Arduino IDE dan upload untuk menampilkan tulisan "Hello, World!" pada layar LCD I2C kita. Ganti address 0x27 pada program dibawah ini dengan address yang kalian dapat pada langkah nomor 3. Jika sama, maka tinggal melakukan upload saja.

/*********
  Rui Santos
  Complete project details at https://randomnerdtutorials.com  
*********/

#include <LiquidCrystal_I2C.h>

// set the LCD number of columns and rows
int lcdColumns = 16;
int lcdRows = 2;

// set LCD address, number of columns and rows
// if you don't know your display address, run an I2C scanner sketch
LiquidCrystal_I2C lcd(0x27, lcdColumns, lcdRows);  

void setup(){
  // initialize LCD
  lcd.init();
  // turn on LCD backlight                      
  lcd.backlight();
}

void loop(){
  // set cursor to first column, first row
  lcd.setCursor(0, 0);
  // print message
  lcd.print("Hello, World!");
  delay(1000);
  // clears the display to print new message
  lcd.clear();
  // set cursor to first column, second row
  lcd.setCursor(0,1);
  lcd.print("Hello, World!");
  delay(1000);
  lcd.clear(); 
}

5. Setelah upload selesai, perhatikan layar LCD I2C kita. Jika muncul tulisan "Hello, World!" secara bergantian di atas dan dibawah maka kita sudah berhasil melakukannya. Jika tulisan pada layar kabur, putar baut pada kotak biru pada I2C untuk mengatur tingkat kecerahan LCD nya agar tulisan pada LCD dapat terlihat dengan jelas. Berikut adalah hasil dari punya saya.





Sekianlah artikel kali ini dari saya teman - teman. Bila ada pertanyaan atau masalah, bisa menyakannya pada kolom komentar. Saya akan membalas dan membantu semampu saya bagi siapapun yang bertanya dan memiliki masalah. Terimakasih buat semua teman - teman yang sudah membaca artikel ini dan sampai jumpa di artikel - artikel berikutnya.
Byeeeee !!!!^^

Sumber / Referensi : https://randomnerdtutorials.com/esp32-esp8266-i2c-lcd-arduino-ide/

Komentar

Postingan populer dari blog ini

Weather Station Visualization with ESP32

Membuat LED Blink pada ESP32