- Merangkai dan menguji aplikasi output pada mikrokontroller Arduino
- Merangkai dan menguji input pada mikrokontroller Arduino
- Merangkai dan menguji I/O pada mikrokontroller Arduino
Kondisi pada percobaan ini adalah ditampilkan angka 7435 apabila pada keypad ditekan tombol '#'
2. Hardware[Kembali]
a. Alat
-. Breadboard
Breadboard merupakan sebuah board atau papan yang berfungsi untuk merancang sebuah rangkaian elektronik sederhana. Breadboard tersebut nantinya akan dilakukan prototipe atau uji coba tanpa harus melakukan solder.Salah satu keuntungan menggunakan breadboard adalah komponen-komponen yang dirakit tersebut tidak akan mengalami kerusakan. Komponen tersebut juga masih bisa dirangkai kembali untuk membentuk rangkaian yang lainnya.
Umumnya breadboard terbuat dari bahan plastik yang juga sudah terdapat berbagai lubang. Lubang tersebut sudah diatur sebelumnya sehingga membentuk pola yang didasarkan pada pola jaringan di dalamnya. Selain itu, breadboard yang bisa ditemukan di pasaran umumnya dibagi menjadi 3 ukuran. Pertama dinamakan sebagai mini breadboard, kedua disebut medium breadboard, dan yang terakhir dinamakan sebagai large breadboard. Untuk mini breadboard, ia memiliki kurang lebih 170 titik.
-. Kabel Jumper
Pengertian kabel jumper adalah kabel elektrik yang memiliki pin konektor di setiap ujungnya dan memungkinkanmu untuk menghubungkan dua komponen yang melibatkan Arduino tanpa memerlukan solder.
Intinya kegunaan kabel jumper ini adalah sebagai konduktor listrik untuk menyambungkan rangkaian listrik.
Biasanya kabel jamper digunakan pada breadboard atau alat prototyping lainnya agar lebih mudah untuk mengutak-atik rangkaian. Konektor yang ada pada ujung kabel terdiri atas dua jenis yaitu konektor jantan (male connector) dan konektor betina (female connector).
Intinya kegunaan kabel jumper ini adalah sebagai konduktor listrik untuk menyambungkan rangkaian listrik.
Biasanya kabel jamper digunakan pada breadboard atau alat prototyping lainnya agar lebih mudah untuk mengutak-atik rangkaian. Konektor yang ada pada ujung kabel terdiri atas dua jenis yaitu konektor jantan (male connector) dan konektor betina (female connector).
-. Kabel USB
b. Bahan
-. LCD
LCD (Liquid Crystal Display) adalah salah satu jenis display elektronik yang bekerja dengan menggunakan liquid crystal sebagai media untuk merefleksikan cahaya. Seperti yang sudah kita sampaikan di atas, LCD atau Liquid Crystal Display ini banyak digunakan pada perangkat elektronik yang menggunakan layar elektronik, seperti: mnitor televisi, layar smartphone, layar PC, dan lain-lain. Jumlah pixel yang terdapat pada LCD sangat bervariasi tergantung jenis perangkat yang digunakan. Namun umumnya, jumlah pixel pada LCD mulai dari ribuan, ratusan ribu, hingga jutaan pixel dalam satu keeping LCD. Nantinya, kepingan LCD yang di dalamnya terdapat liquid crystal akan memvisualisasikan objek tertentu dengan menggunakan pixel-pixel yang terdapat pada LCD tersebut.
Fungsi LCD secara umum adalah sebagai layar atau display digital yang menghasilkan citra pada permukaan bidang yang datar. Proses visualisasi objek pada LCD melibatkan Kristal cair (liquid crystal) serta filter berwarna dengan struktur molekul polar yang diapit dua elektroda transparan. Namun perlu diingat, bahwa LCD ini tidak serta merta langsung memancarkan sinar. Dalam hal ini LCD harus mendapatkan aliran listrik aliran listrik agar cairan kristal dapat bekerja dan membentuk pola tertentu.
-. Keypad
Keypad Matriks adalah tombol-tombol yang disusun secara maktriks (baris x kolom) sehingga dapat mengurangi penggunaan pin input. Sebagai contoh, Keypad Matriks 4×4 cukup menggunakan 8 pin untuk 16 tombol. Hal tersebut dimungkinkan karena rangkaian tombol yang disusun secara horizontal membentuk baris dan secara vertikal membentuk kolom.
-. Arduino
Arduino Uno adalah board mikrokontroler berbasis ATmega328 (datasheet). Memiliki 14 pin input dari output digital dimana 6 pin input tersebut dapat digunakan sebagai output PWM dan 6 pin input analog, 16 MHz osilator kristal, koneksi USB, jack power, ICSP header, dan tombol reset. Untuk mendukung mikrokontroler agar dapat digunakan, cukup hanya menghubungkan Board Arduino Uno ke komputer dengan menggunakan kabel USB atau listrik dengan AC yang-ke adaptor-DC atau baterai untuk menjalankannya.
3. Rangkaian Percobaan[Kembali]
prinsip kerja :Pada rangkaian ini, arduino menerima input dari keypad dan memproses input tersebut dengan sebuah program yang telah diatur sebelumnya. Pada program tersebut, berdasarkan kondisi percobaan maka apabila pada keypad ditekan tombol '#' maka program diproses dan meneruskan data ke LCD. Pada LCD, terlebih dahulu mengatur kontras agar tampilan LCD lebih jernih. Lalu LCD akan menerima data tersebut melalui pin RS dan menampilkannya pada display LCD. Apabila pada display muncul angka '7435' maka percobaan telah berhasil dilakukan.
4. Listing Program[Kembali]
#include <Keypad.h>
#include <LiquidCrystal.h>
const byte ROWS = 4; //Deklarasi jumlah baris
const byte COLS = 4; //Deklarasi jumlah kolom
char keys[ROWS][COLS] = {
{'1','2','3','A'},
{'4','5','6','B'}, //Inisialisasi keypad matriks 4x3
{'7','8','9','C'},
{'*','0','#','D'}
};
byte rowPins[ROWS] = {9, 8, 7, 6}; //Deklarasi pin yang digunakan untuk baris
byte colPins[COLS] = {13, 12, 11,10}; //Deklarasi pin yang digunakan untuk kolom
// Inisialisasi library dengan pin yang digunakan
LiquidCrystal lcd(A0, A1, A2, A3, A4, A5);
Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS );
void setup() { //Semua kode dalam fungsi ini akan dieksekusi sekali
// Set baris dan kolom LCD
lcd.begin(20, 4);
lcd.setCursor(1,2);
lcd.setCursor(4,3);
lcd.setCursor(0,0);
}
void loop() { //Semua kode dalam fungsi ini akan dieksekusi berulang
char key = keypad.getKey(); //Membaca keypad
if (key=='#' ) { //Kondisi pilihan jika keypad ditekan
lcd.print(7435); //Menampilkan input dari keypad pada LCD
}
}
flowchart :
5. Analisa[Kembali]
a. Jelaskan listing program sesuai kondisi kelompok masing-masing
Jawab :
Pada baris pertama dan kedua, terdapat pendeklarasian library dari LCD dan keypad. Setelah itu terdapat fungsi const byte ROWS = 4; dan const byte COLS = 4; yang berarti pendeklarasian jumlah baris dan kolom pada keypad yang digunakan. Lalu fungsi char keys[ROWS][COLS] adalah menginisialiasikan keypad kedalam bentuk matriks 4x4 seperti listing program diatas. Lalu untuk fungsi byte rowPins[ROWS] = {9, 8, 7, 6}; mendeklarasian bahwa pin yang digunakan oleh keypad pada arduino untuk bagian baris adalah pin 9, 8, 7, dan 6. Begitu juga untuk fungsi byte colPins[COLS] = {13, 12, 11,10}; yang berarti pendeklarasian pin yang digunakan pada arduino untuk kolom adalah 13, 12, 11, dan 10. Pada fungsi LiquidCrystal lcd(A0, A1, A2, A3, A4, A5); terjadi penginisialisasi library dengan pin arduino yang akan digunakan oleh LCD. Pada fungsi Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS ); apabila
b. Bagaimana jika pin D4-D7 LCD dipindahkan ke pin digital 0-3?
Jawab :
Apabila pin D4-D7 dipindahkan ke D0-D3 maka tetap keluar hasilnya pada LCD namun hasil yang ditampilkan berbeda dengan inputan pada program arduino karena pada pengisian data untuk pembacaan dimulai dari LSB (Less Significant Bit)hingga ke MSB (Most Significant Bit). Jika nilai 0 pada MSB, maka hal tersebut tidak mempengaruhi data namun jika pada LSB ditambahkan data 0 maka hal tersebut dapat merubah nilai inputan data.
c. Apa pengaruh V0 terhadap LCD, jelaskan fungsi pin RS, RW, dan E serta bagaimana menghubungkannya agar LCD dapat menampilkan karakter
Jawab :
V0 atau Vee memiliki pengaruh terhadap LCD karena pin tersebut mengatur kontras pada tampilan LCD. Pin ini akan dihubungkan pada potensiometer. Fungsi dari pin RS adalah sebagi register data, dimana apabila pin RS berlogika 1 maka data akan ditampung sementara sebelum diteruskan. Fungsi dari pin RW adalah sebagai read and write data. Karena pada pin RW terhubung dengan ground, maka pin RW berlogika 0 dan pin ini menjadi fungsi write karena logika 0. Pada pin ini, data atau karakter akan ditulis dan meneruskannya menuju modul. Pin E berfungsi sebagai transfer aktual dari perintah-perintah atau karakter antara modul dengan hubungan data. Agar dapat menampilkan data yang di inputkan dari keypad, maka LCD dihubungkan dengan arduino menggunakan kabel jumper jenis male to female. Pin LCD yang dihubungkan dengan arduino untuk mendapatkan data dari arduino antara lain pin RS, E, dan D4 - D7. Lalu pin RW pada LCD dihubungkan dengan ground, pin Vdd dihubungkan dengan Vcc 5V, Vss dihubungkan dengan ground, dan yang terakhir Vee atau V0 dihubungkan dengan potensio meter. Arduino juga dihubungkan dengan keypad agar mendapat input data dari keypad menggunakan kabel jumper jenis male to male.
6. Video[Kembali]
7. Link Download[Kembali]
download file simulasi disini
download HTML disini
download library arduino disini
download library keypad disini
download listing program disini
download datasheet arduino disini
download datasheet LCD disini
download video disini
Tidak ada komentar:
Posting Komentar