My Story.

LCD

LCD









Menampilkan Karakter pada LCD dengam Menggunakan Keypad






A. Menampilkan Karakter Pada LCD

Prosedur Percobaan:
1. Pastikan semua supply dalam keadaan off
2. Hubungkan jumper seperti rangkaian dibawah
3. Buatlah listing program yang telah ada pada modul
4. periksakan rangkaian kepada asisten yang mengawas
5. Hidupkan semua supply
6. Upload program dari laptop ke modul
7. Tekan tombol Reset
8. Amati percobaan, jika tidak sesuai perbaiki rangkaian atau program
9. Jika sesuai, maka selesai dan demokan pada asisten yang mengawas
10.Jelaskan prinsip kerja + program dan hubungan keduanya kepada asisten
11.Demokan ke pembimbing praktikum
12.Matikan supply


 
1. Hardware
[kembali]



2. Rangkaian Simulasi [kembali]



    Rangkaian ini terdiri dari Arduino, 1 buah Switch, keypad dan LCD. Switch terhubung ke pin digital arduino (53), KEYPAD terhubung ke pin digtal (14,15,16,17,18,19,20) dan LCD ke pin digital arduino RS=12, E=11, D4-D7 (4-7). Untuk memulai program silahkan masukkan program arduino, tekan play pada pojok kiri bawah, dan tunggu sejenak. setelah aktif tekan tombol reset sebelum eksekusi program. Prinsipnya apabila switch svdt 0 pada pin digital 53 arduino bernilai HIGH maka keypad akan aktif dan apabila tombol 1 ditekan maka LCD akan mencetak serta menampilkan tulisan "PRAKTIKUM"

3. Flowchart [kembali]

4. Listing Program [kembali]


#include <Keypad.h>                             //Mengaktifkan library keypad
#include <LiquidCrystal.h>                  //Mengaktifkan library LCD

int switchh = 53;                                   //Deklarasi switch pada pin 53
const int PIN_RS = 12;
const int PIN_E = 11;
const int PIN_DB4 = 7;
const int PIN_DB5 = 6;                        //Pendeklarasian pin untuk LCD
const int PIN_DB6 = 5;
const int PIN_DB7 = 4;


LiquidCrystal lcd(PIN_RS,PIN_E, PIN_DB4,
PIN_DB5, PIN_DB6, PIN_DB7);     //Mengaktifkan pin Lcd

const byte BARIS = 4; // 4 Baris           //Pendeklarasian baris keypad
const byte KOLOM = 3; // 3 Kolom     //Pendeklarasian kolom keypad
// Menyatakan tombol-tombol keypad
char tombol[BARIS][KOLOM] = {
  {'1','2','3'},
  {'4','5','6'},
  {'7','8','9'},                                           //Menyatakan baris dan kolom keypad dalam bentuk array
  {'#','0','*'}
};
//Menyambungkan baris keypad ke pin arduino
byte bariskeypad[BARIS] = { 14, 15, 16, 17 };
//Menyambungkan kolom keypad ke pin arduino
byte kolomkeypad[KOLOM] = { 18, 19, 20 };

//Aktifkan keypad
Keypad kpd = Keypad( makeKeymap(tombol),
bariskeypad, kolomkeypad,BARIS, KOLOM );


void setup()                                              //Fungsi utama keypad
{
  lcd.begin(16, 2);                                    //Memulai LCD tipe 16 x 2
  pinMode (switchh, INPUT);                  //Deklarasi switch sebagai Input
  Serial.begin (9600);                               //Komunikasi serial arduino ke komputer
}

void loop()                                               //Fungsi perulangan pada arduino
{
  if (digitalRead(switchh)==1)                //Fungsi if saat switch bernilai High
  {
    char tombol = kpd.getKey();              //Deklarasi tombol sebagai pemanggilan fungsi keypad
    if(tombol)                                          // Mengecek apabila kondisi benar
    {
      switch (tombol)                               //Jika switch itu tombol
      {                                                      //Pembuka program
      case '1':                                           //Jika tombol keypad 1 ditekan
      while (1){                                       //Pengulangan untuk tombol 1
        lcd.clear();                                   //Membersihkan layar pada Lcd
        lcd.setCursor(4,0);                      //Memposisikan tulisan di baris ke 0 dan kolom ke 4
        lcd.print("PRAKTIKUM");        //Mencetak tulisan di Praktikum pada LCd
        lcd.setCursor (0,1);                     //Memposisikan tulisan di baris ke 1 dan kolom ke 0
        lcd.print("Mikrokontroller dan Mikroprosesor"); //Mencetak tulisan Mikrokontroler dan Mikroprosesor pada LCD
        for(int i=0;i<=16;i++){               //Fungsi for untuk LCD
          lcd.scrollDisplayLeft ();           //LCD geser kiri
          delay (50);                                // Waktu tunda 50 milisekon
        }
      }
        break;                                        //Fungsi selesai untuk kondisi case '1'
    
      case '2':                                       //Jika tombol 2 keypad ditekan
    while (2){                                    // Pengulangan untuk tombol 2
        lcd.clear();                              //Membersihkan LCD
        lcd.setCursor(0,1);                 //Memposisikan tulisan di baris ke 1 dan kolom ke 0
        lcd.print("Laboratorium Elektronika Digital"); //Menampilkan tulisan pada LCD
        for(int i=0;i<17;i--){                      //Fungsi for untuk LCD
          lcd.scrollDisplayLeft ();              //LCD geser ke kiri
          delay (50);                                    //Waktu tunda 50 milisekon
        }}
        break;                                              //Fungsi selesai untuk kondisi case '2'
 
      case '3': //Jika tombol 3 keypad ditekan
        lcd.clear(); //Membersihkan LCD
        lcd.setCursor(0,1); //Memposisikan tulisan di baris ke 1 dan kolom ke 0
        lcd.print("Selamat Praktikum");//Menampilkan akrakter pada LCD
        break; //Fungsi selesai untuk kondisi case '3'

      default: //Jika gagal masuk ke fungsi Serial.printIn(tombol)
        Serial.println(tombol);
      }
    }
  }
  else //Fungsi saat if tidak terpenuhi
  {
    lcd.clear(); //Membersihkan tulisan pada LCD
     delay(100); //Fungsi delay untuk 100 milisekon
  }
}




 Running text pada LCD dari kiri ke kanandengan input keypad

7. Link Download [kembali]

File Proteus - Download
File Program - Download
Video Rangkaian - Download
Haze Haze Author

About

Popular Posts

Find Us

Contact Us

Nama

Email *

Pesan *