Antarmuka Menu dan submenu pada LCD dan Tombol menggunakan Arduino
Kami memiliki sudut pandang secara umum akan hal Antarmuka Menu dan submenu pada LCD dan Tombol menggunakan Arduino ini akan kami bahas dan jabarkan kepada anda. Meskipun demikian semoga tidak mengurangi makna. Kami hanya berpesan kepada pembaca Teknisi Service AC Batam, jadikan artikel kami ini sebagai materi tambahan. Jika masih kurang lengkap, pembaca dapat menambah wawasan dengan mencari artikel serupa diblog lainnya atau menanyakan langsung kepada pakar yang mahir dengan masalah Antarmuka Menu dan submenu pada LCD dan Tombol menggunakan Arduino. Selamat membaca!
Antarmuka Menu dan submenu pada LCD dan Tombol menggunakan Arduino
Dalam perancangan sistem mikrokontroller yang cukup kompleks yang ditampilkan pada display LCD (Liquid Crystal Display) biasanya digunakan menu dan submenu. Menu menampilkan bagian utama dari fungsi yang dibangun dan submenu menampilkan isi dari menu yang dipilih. Tombol digunakan sebagai selektor untuk menu dan sub menu. Tutorial kali ini LCD dan tombol digunakan sebagai penampil dan input sedangkan arduino adalah sebagai Pemroses data.baca juga : 10 Project Arduino paling populer
Bahan yang dibutuhkan :
1. Arduino UNO
2. LCD 2004
3. Tombol Push Button
4. Laptop atau PC
Skema rangkaian dpat dilihat pada gambar berikut :
![]() |
Skema rangkaian |
Tombol tersebut terdiri dari tombol menu, up, down, dan OK. Fungsi masing-masing tombol tersebut adalah :
- Menu : Tombol untuk masuk ke menu dari halaman utama
- UP : Tombol untuk menaikkan kursor
- Down : Tombol untuk Menurunkan kursor
- OK : Tombol untuk memilih menu
Rangkaian diatas menggunakan LCD 2004 dengan modul I2C dan Arduino UNO, untuk mengubah konfigurasi tinggal disesuaikan pada program. Listing program dapat dilihat dibawah :
////////////////////////andalanelektro.id////////////////////////////////////////
#include <LiquidCrystal.h>
const int rs = 12,rw = 1, en = 11, d4 = 5, d5 = 4, d6 = 3, d7 = 2;
int Menu,Up,Down,Ok;
int lockMenu=0,lockUp=0,lockDown=0,lockOk=0;
int dis,sub=0,mode=0;
LiquidCrystal lcd(rs, rw, en, d4, d5, d6, d7);
void setup()
{
pinMode(A0, INPUT_PULLUP);// mengaktifkan resistor internal
pinMode(A1, INPUT_PULLUP);
pinMode(A2, INPUT_PULLUP);
pinMode(A3, INPUT_PULLUP);
lcd.begin(20, 4);
lcd.setCursor(0,0); lcd.print(" Tutorial Menu ");
lcd.setCursor(0,1); lcd.print(" & ");
lcd.setCursor(0,2); lcd.print(" Sub Menu ");
lcd.setCursor(0,3); lcd.print(" andalanelektro.id ");
}
void loop()
{
Menu= digitalRead(A0);
Up= digitalRead(A1);
Down= digitalRead(A2);
Ok= digitalRead(A3);
tampil();
}
void tampil()
{
if (Menu==0 && lockMenu==0){lockMenu=1;} if (Menu!=0 && lockMenu==1){lockMenu=0; dis=1;}
if (Menu==0 && lockMenu==0){lockMenu=1;} if (Menu!=0 && lockMenu==1 && dis>1){lcd.clear(); lockMenu=0; dis=1;}
if (dis==1)
{
// tampilan awal//
lcd.setCursor(1,0); lcd.print("Menu 1 ");
lcd.setCursor(1,1); lcd.print("Menu 2 ");
lcd.setCursor(1,2); lcd.print("Menu 3 ");
lcd.setCursor(1,3); lcd.print("Menu 4 ");
if (Down==0 && lockDown==0){lockDown=1;} //turunkan Cursor ">"
if (Down!=0 && lockDown==1){lcd.clear(); lockDown=0; mode++;}
if (Up==0 && lockUp==0){lockUp=1;} //naikkan Cursor ">"
if (Up!=0 && lockUp==1){lcd.clear(); lockUp=0; mode--;}
switch (mode)
{
case 0 : lcd.setCursor(0,0); lcd.print(">"); break;
case 1 : lcd.setCursor(0,1); lcd.print(">"); break;
case 2 : lcd.setCursor(0,2); lcd.print(">"); break;
case 3 : lcd.setCursor(0,3); lcd.print(">"); break; }
if (Ok==0 && lockOk==0){lockOk=1; mode=0;}
if (Ok!=0 && lockOk==1 && mode==0){lockOk=0; dis=2; lcd.clear(); } // pilih menu 1
if (Ok!=0 && lockOk==1 && mode==1){lockOk=0; dis=3; lcd.clear(); } // pilih menu 2
if (Ok!=0 && lockOk==1 && mode==2){lockOk=0; dis=4; lcd.clear(); } // pilih menu 3
if (Ok!=0 && lockOk==1 && mode==3){lockOk=0; dis=5; lcd.clear(); } // pilih menu 4
if (mode>3 || mode<0) mode=0;
}
if (dis==2)
{
if (sub==0)
{
lcd.setCursor(0,0); lcd.print("Menu 1 ");
lcd.setCursor(1,1); lcd.print("Sub Menu 1 ");
lcd.setCursor(1,2); lcd.print("Sub Menu 2 ");
lcd.setCursor(1,3); lcd.print("Sub Menu 3 ");
if (Down==0 && lockDown==0){lockDown=1;} //turunkan Cursor ">"
if (Down!=0 && lockDown==1){lcd.clear(); lockDown=0; mode++;}
if (Up==0 && lockUp==0){lockUp=1;} //naikkan Cursor ">"
if (Up!=0 && lockUp==1){lcd.clear(); lockUp=0; mode--;}
if (Ok==0 && lockOk==0){lockOk=1; mode=0;}
if (Ok!=0 && lockOk==1 && mode==0){lockOk=0; lcd.clear(); sub=1; } // Isi submenu 1
if (Ok!=0 && lockOk==1 && mode==1){lockOk=0; lcd.clear(); sub=2; } // Isi submenu 2
if (Ok!=0 && lockOk==1 && mode==2){lockOk=0; lcd.clear(); sub=3; } // Isi submenu 3
if (mode>2 || mode<0) mode=0;
{
case 0 : lcd.setCursor(0,1); lcd.print(">"); break;
case 1 : lcd.setCursor(0,2); lcd.print(">"); break;
case 2 : lcd.setCursor(0,3); lcd.print(">"); break;
}
}
}
if (dis==3)
{
lcd.setCursor(0,0); lcd.print("Menu 2 ");
lcd.setCursor(1,1); lcd.print("Sub Menu 1 ");
lcd.setCursor(1,2); lcd.print("Sub Menu 2 ");
lcd.setCursor(1,3); lcd.print("Sub Menu 3 ");
}
if (dis==4)
{
lcd.setCursor(0,0); lcd.print("Menu 3 ");
lcd.setCursor(1,1); lcd.print("Sub Menu 1 ");
lcd.setCursor(1,2); lcd.print("Sub Menu 2 ");
lcd.setCursor(1,3); lcd.print("Sub Menu 3 ");
}
if (dis==5)
{
lcd.setCursor(0,0); lcd.print("Menu 4 ");
lcd.setCursor(1,1); lcd.print("Sub Menu 1 ");
lcd.setCursor(1,2); lcd.print("Sub Menu 2 ");
lcd.setCursor(1,3); lcd.print("Sub Menu 3 ");
}
//isi menu1////
if (dis==2 && sub==1){lcd.setCursor(0,1); lcd.print(" Isi Sub Menu 1:::");}
if (dis==2 && sub==2){lcd.setCursor(0,1); lcd.print(" Isi Sub Menu 2::");}
if (dis==2 && sub==3){lcd.setCursor(0,1); lcd.print(" Isi Sub Menu 3:");}
}
////////////////////////andalanelektro.id////////////////////////////////////////
Setelah berhasil diupload maka tampilan LCD akan seperti ini :
![]() |
Tampilan awal menu dan sub menu |
![]() |
Jika tombol Menu ditekan |
![]() |
Memilih menu satu dengan OK |
![]() |
Memilih Submenu dengan OK |
Penutup Antarmuka Menu dan submenu pada LCD dan Tombol menggunakan Arduino
Baru saja anda membaca artikel Antarmuka Menu dan submenu pada LCD dan Tombol menggunakan Arduino dengan alamat link https://teknisiacbatam.blogspot.com/2019/10/antarmuka-menu-dan-submenu-pada-lcd-dan.html
Artikel Antarmuka Menu dan submenu pada LCD dan Tombol menggunakan Arduino ini kami arsipkan pada kategori Arduino Digital Mikrokontroller Robot. Silahkan anda klik link ini Arduino Digital Mikrokontroller Robot untuk melihat beberapa artikel menarik serupa. Terimakasih telah berkunjung.
Post a Comment for "Antarmuka Menu dan submenu pada LCD dan Tombol menggunakan Arduino"