MENAMPILKAN KARAKTER PADA LCD




1.   Pastikan semua supply dalam keadaan off
              2.  Hubungkan jumper seperti gambar dibawah
              3.  Buatlah listing program yang telah ada pada modul.
  4.  Hidupkan supply pada modul
  5.  Upload program pada rangkaian
  6.  Tekan tombol Reset
  7.  Amati percobaan, jika tidak sesuai perbaiki rangkaian atau program
  8.  Jika sesuai, maka selesai dan demokan pada instruktur atau asisten yang  mengawas

  9.  Matikan supply pada modul
  
1. Hardware [kembali]




2. Rangkaian Simulasi [kembali]



Pada rangkaian ini, yaitu menampilkan karakter pada LCD, membutuhkan beberapa komponen seperti Mikroprosesor ATMega128 sebagai otak dari rangkaian ini, LCD sebagai keluaran berupa gambar atau karakter, serta keypad dan switch sebagai masukan, tidak lupa juga ditambahkan kristal sebagai "clock" atau pendetak bagi mikroprosesor ATMega128 itu sendiri seperti pada rangkaian, LCD dihubungkan dengan PORT A, keypad pada PORT D, dan switch pada PORT B. Ketika angka 1 pada keypad ditekan, maka pada LCD akan menampilkan tulisan "Anda menekan 1", ketika angka 5 ditekan, maka akan tampil tulisan "Anda menekan 5", dan ketika switch pertama ditekan, makan pada LCD akan tampil tulisan "Anda menekan switch pertama".


3.Flowchart [kembali]



4. Listing Program [kembali]


#include <mega128.h>        //Merupakan library ATMega128
#include <alcd.h>                //Merupakan library LCD
#include <delay.h>               //Merupakan library dwaktu tunggu (delay)

void keypad()
{
PORTC=0b1111011;         // Mengaktifkan angka yang ditekan pada Keypad di PORTC
delay_ms(1);    // Delay 1 ms
if (PINC.4 == 0)    // Jika menekan tombol keypad yg terhubung ke PINC.4 aktif low
  {           
    lcd_gotoxy(1,0);    // Posisi tulisan pada LCD
    lcd_putsf("Anda Tekan 1");  // Mencetak tulisan pada LCD
    delay_ms(50);    // Delay selama 50 ms
    lcd_clear();          // Membersihkan / reset LCD
  }

PORTC=0b1111101; //Mengaktifkan angka yang ditekan pada Keypad di PORTC
delay_ms(1);     // Delay selama 1 ms
if (PINC.4 == 0)   // Jika menekan tombol keypad yg terhubung ke PINC.4 aktif low
  {
    lcd_gotoxy(1,0);    // Posisi tulisan pada LCD
    lcd_putsf("Anda Tekan 2");  // Mencetak tulisan pada LCD
    delay_ms(50); // Delay selama 50 ms
    lcd_clear(); // Membersihkan / reset LCD
  }
}

void main(void)  // Fungsi utama

    PORTD=0x00; // Deklarasi PORTD aktif low
    DDRD=0x00;   // Deklarasi PORTD sebagai output
    PORTC=0xff; // Dekalarasi PORTC aktif high
    DDRC=0x0f;   // Deklarasi PORTC sebagai input dan output
    lcd_init(16); //  Menggunakan LCD tipe 16 * 2
    while(1)

    {   
       keypad(); // Memanggil keypad     
       if (PIND.0 == 1) // Jika PIND.0 ditekan aktif high
        {                 
         lcd_gotoxy(1,0); // Posisi tulisan pada LCD
         lcd_putsf("Tekan Switch 1"); // Mencetak tulisan pada LCD
         delay_ms(50); // Delay selama 50 ms
         lcd_clear(); // Membersihkan /reset LCD
        }     
       if (PIND.1 == 1) // Jika PIND.1 ditekan aktif high
        {       
         lcd_gotoxy(1,1); // Posisi tulisan pada LCD
         lcd_putsf("Tekan Switch 2"); // Mencetak tulisan pada LCD
         delay_ms(50); // Delay selama 50 ms
         lcd_clear();             // Membersihkan /reset LCD
        }   
    }
} // Akhir program

5. Video [kembali]


6. Link Download [kembali]