Kamis, 17 Desember 2020

LCD Keypad Shield Tampilan Polos (Tidak Menampilkan Karakter) - [LCD Keypad Shield Not Displaying Words - ARDUINO UNO - D1 ROBOT]

Saya baru saja membeli Arduino Uno dan LCD Keypad Shield, yaitu modul LCD yang disertai dengan tombol-tombol (keypad). Setelah saya coba, saya upload beberapa sketch LCD Shield dari yang berisi kode program sederhana ("Hello World") hingga yang berisi kode program yang sedang dan kompleks, namun HASILNYA NIHIL, LCD NYA TETAP TIDAK BISA MENAMPILKAN KARAKTER. 

Setelah browsing ke beberapa sumber, akhirnya didapatkan bahwa permasalahannya adalah settingan brightness dari LCD nya. Jadi ada sebuah trimpot berwarna biru di pojok kiri atas dari LCD Keypad Shield tersebut yang harus kita putar pada arah kiri maupun kanan (sesuai dengan kebutuhan), defaultnya adalah diputar ke arah kiri / bawah / berlawanan arah jarum jam. Kita harus putar tersebut potensiometer biru tersebut sehingga pixel-pixel yang ada pada LCD Shield tersebut menjadi lebih terang dari pada cahaya latar modul LCD tersebut.

Kemudian untuk pengetesan kita bisa mengisi Arduino Uno dengan kode program yang sederhana (hello world) seperti berikut:

#include <LiquidCrystal.h>

// initialize the library with the numbers of the interface pins
LiquidCrystal lcd(8, 9, 4, 5, 6, 7);

void setup() {
  // set up the LCD's number of columns and rows:
  lcd.begin(16, 2);
  lcd.print("Hello World!");
}

void loop()
{
  
}

Atau bisa juga dengan kode program yang lebih panjang seperti ini (untuk menampilkan informasi tombol yang ditekan):

/*
Arduino 2x16 LCD - Detect Buttons
modified on 18 Feb 2019
by Saeed Hosseini @ Electropeak
https://electropeak.com/learn/
*/
#include <LiquidCrystal.h>
//LCD pin to Arduino
const int pin_RS = 8; 
const int pin_EN = 9; 
const int pin_d4 = 4; 
const int pin_d5 = 5; 
const int pin_d6 = 6; 
const int pin_d7 = 7; 
const int pin_BL = 10; 
LiquidCrystal lcd( pin_RS,  pin_EN,  pin_d4,  pin_d5,  pin_d6,  pin_d7);
void setup() {
 lcd.begin(16, 2);
 lcd.setCursor(0,0);
 lcd.print("AB Led");
 lcd.setCursor(0,1);
 lcd.print("Press Key:");
}
void loop() {
 int x;
 x = analogRead (0);
 lcd.setCursor(10,1);
 if (x < 60) {
   lcd.print ("Right ");
 }
 else if (x < 200) {
   lcd.print ("Up    ");
 }
 else if (x < 400){
   lcd.print ("Down  ");
 }
 else if (x < 600){
   lcd.print ("Left  ");
 }
 else if (x < 800){
   LCD.print ("Select");
 }
} 

Untuk mengetahui secara detail bagaimana proses troubleshooting nya, bisa dilihat pada video tutorial berikut ini:



Jangan lupa untuk Like, Subscribe, Share dan Comment pada channel tersebut ya..

Trims.

Tidak ada komentar:

Posting Komentar