Laporan Akhir (percobaan 3)



 1. Tujuan [Kembali]

1. Merangkai percobaan 3 modul 1.
2. Menjelaskan cara kerja rangkaian percobaan 3.
3. Melakukan simulasi rangkaian percobaan 3.

Kondisi : Jika tombol * ditekan maka ditampilkan karakter angka 91011 pada LCD.
 

2. Alat dab Bahan [Kembali]

Alat
1. Breadboard












2. Kabel USB
2. Kabel Jumper
Bahan
1. Arduino UNO
2. LCD
3. Keypad
4. Potensiometer

3. Rangkaian Percobaan [Kembali]
Rangkaian Percobaan
Prinsip Kerja
Pada percobaan ini, bahan dan alat yang digunkan dirangkai seusai dengan modul, dimana seven segment, arduino dan keyped dirangkai sedemikian rupa dengan menyesuaikan pin-pin setiap komponen sesuai dengan perintah modul. Setelah dirangkai, arduino diprogram sesuai dengan kondisi yang diinginkan.
Program diawali dengan pendeklarasian LCD(LiquidCrystal.h) dan keypad (Keypad.h). Kemudian dilakukan pendeklarasian jumlah kolom dan baris untuk keypad. Pada percobaan ini jumlah baris dan kolom keypad yang digunkan yaitu 4x3. Kemudian dilakukan pendeklarasian pin-pin yang digunakan pada keypad dan lanjut  menginisialisasi library LiquidCrystal.h dan Keypad.h dengan pin-pin yang digunakan.

    Setelah  melakukan pendeklarasian yang dibutuhkan pada program, lanjut          untuk pembuatan funsinya. Disini terdapat fungsi void setup(), pada fungsi ini      dilakukan set baris dan kolom LCD dengan fungsi  lcd.begin() dan                         lcd.setCursor(). Selanjutnya untuk void loop() dilakukan                                         pembacaan    keypad dimana dideteksi tombol mana yang sedang ditekan         dengan fungsi keypad.getKey(). Jika tombol/key yang ditekan adalah '*'               maka     akan ditampilkan karakter "91011" pada layar LCD(sesuai dengan         kondisi yang diminta pada percobaan ini), sedangkan jika tombol lainnya yg       ditekan tidak akan ditampilkan karakter pada LCD. 



4. Listing Program [Kembali]

Listing Program
#include <LiquidCrystal.h>
#include <Keypad.h>

const byte ROWS = 4;
const byte COLS = 3;
char keys[ROWS][COLS] = {
    {'1','2','3'},
    {'4','5','6'},
    {'7','8','9'},
    {'*','0','#'}
};
byte rowPins[ROWS] = {10, 9, 8, 7};
byte colPins[COLS] = {13, 12, 11};

LiquidCrystal lcd(A0, A1, 0, 1, 2, 3, A2, A3, A4, A5);
Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS );
void setup()
{
       lcd.begin(20, 4); 
       lcd.setCursor(1,2); 
       lcd.setCursor(4,3); 
       lcd.setCursor(0,0);
}
void loop()
{
       char key = keypad.getKey();
       if (key == '*')
       {
            lcd.print("91011");
        }
}


Flowchart










5. Vidio [Kembali]


 Hasil percobaan











6. Kondisi [Kembali]

1. Jelaskan listing program sesuai kondisi masing masing kelompok.
Jawab:

Kondisi= Jika tombol * ditekan maka ditampilkan karakter angka 91011 pada LCD.

Setelah dirangkai, arduino diprogram sesuai dengan kondisi yang diinginkan.
Program diawali dengan pendeklarasian LCD(LiquidCrystal.h) dan keypad (Keypad.h). Kemudian dilakukan pendeklarasian jumlah kolom dan baris untuk keypad. Pada percobaan ini jumlah baris dan kolom keypad yang digunkan yaitu 4x3. Kemudian dilakukan pendeklarasian pin-pin yang digunakan pada keypad dan lanjut  menginisialisasi library LiquidCrystal.h dan Keypad.h dengan pin-pin yang digunakan.

    Setelah  melakukan pendeklarasian yang dibutuhkan pada program, lanjut          untuk pembuatan funsinya. Disini terdapat fungsi void setup(), pada fungsi ini      dilakukan set baris dan kolom LCD dengan fungsi  lcd.begin() dan                         lcd.setCursor(). Selanjutnya untuk void loop() dilakukan                                         pembacaan    keypad dimana dideteksi tombol mana yang sedang ditekan         dengan fungsi keypad.getKey(). Jika tombol/key yang ditekan adalah '*'               maka     akan ditampilkan karakter "91011" pada layar LCD(sesuai dengan         kondisi yang diminta pada percobaan ini), sedangkan jika tombol lainnya yg       ditekan tidak akan ditampilkan karakter pada LCD. 

#include <LiquidCrystal.h>
#include <Keypad.h>

const byte ROWS = 4;
const byte COLS = 3;
char keys[ROWS][COLS] = {
    {'1','2','3'},
    {'4','5','6'},
    {'7','8','9'},
    {'*','0','#'}
};
byte rowPins[ROWS] = {10, 9, 8, 7};
byte colPins[COLS] = {13, 12, 11};

LiquidCrystal lcd(A0, A1, 0, 1, 2, 3, A2, A3, A4, A5);
Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS );
void setup()
{
       lcd.begin(20, 4); 
       lcd.setCursor(1,2); 
       lcd.setCursor(4,3); 
       lcd.setCursor(0,0);
}
void loop()
{
       char key = keypad.getKey();
       if (key == '*')
       {
            lcd.print("91011");
        }
}


2. Bagaimana jika pin D4 sampai D7 LCD dipindahkan ke pin digital 0 - 3? berikan analisa!
Jawab:

Apabila dilakuakn pemindahan pin D4-D7 ke pin digital 0-3, maka rangkain tidak akan berjalan sesuai dengan kondisi yang diinginkan. Hal ini dikarenakan pin 0 merupakan pin RXD dan pin 1 merupakan pin TXD. karena pin tersebut bukan pin PWM maka rangkain tidak dapat menjalankan atau mengaktifkan fitur PWM.

3. Apa pengaruh V0 terhadap LCD, jelaskan fungsi pin RS, RW, dan E serta bagaimana menghubungkannya agar LCD dapat menampilkan karakter.
Jawab:
V0 berfungsi untuk mengatur tingkat kecerahan layar LCD. V0 terhubung ke potensiometer sehingga tingkat kecerahan LCD diatur oleh tegangan potensiometer.
RS (Register Select) : Pin ini berganti-ganti antara perintah atau data register, digunakan untuk menghubungkan pin unit mikrokontroler dan mendapatkan 0 atau 1 (0 = mode data, dan 1 = mode perintah).
RW (Read Write) : Pin ini mengaktifkan tampilan di antara operasi baca atau tulis, dan terhubung ke pin unit mikrokontroler untuk mendapatkan 0 atau 1 (0 = Operasi Tulis, dan 1 = Operasi Baca).
E (Enable) : Agar dapat mengaktifkan LCD dan dapat menampilkan data maka pin Enable harus dipertahankan dalam kondisi HIGH.
Pada percobaan yang dilakukan pin V0 terhubung ke potensiometer, pin RS terhubung ke pin A0, pin E terhubung ke pin A1, dan pin RW terhubung ke GROUND.

7. Link Download [Kembali]


Download file HTML
Download file simulasi proteus
Download file program arduino
Download video simulasi 
Download file datasheet arduino
Download file datasheet 7 Segment
Download file library arduino








Tidak ada komentar:

Posting Komentar

BAHAN PRSENTASI UNTUK MATA KULIAH SISTEM DIGITAL SEMESTER GENAP 2020-2021 OLEH ROMA IMAM RAHMAN 1910953036 TEKNIK ELEKTRO Dosen Pengampu : M...