Kali ini saya akan memberikan tutorial dasar pemrograman Arduino dengan module RTC DS1302 dan akan di tampilkan di LCD 16 x 2 secara realtime. RTC adalah singkatan dari Real Time Clock yang berfungsi sebagai module yang dapat menghitung waktu secara akurat dan dapat menyimpan data waktu dan tanggal secara realtime. Jadi misalnya jika anda menggunakan RTC module maka disaat Sistem anda dalam keadaan OFF dan jika pada saat anda menjalankan sistem anda kembali waktu akan tetap sesuai dengan tanggal dan waktu saat anda menjalankan Sistem anda. langsung saja ikuti langkah - langkah percobaan dibawah ini.
Bahan Percobaan :
- Arduino Uno
- LCD 16 x 2
- Potensio Meter
- Potensio Meter
- RTC DS1302
- Breadboard
- Kabel Jumper
Skema Rangkaian :
1. Langkah awal, rangkailah rangkaian LCD terlbeih dahulu lihat gambar dibawah ini :
Konfigurasi PIN LCD
- VSS ==> GND
- VDD ==> 5V
- VO ==> Contrast (Hubungkan ke kaki tengah trimpot atau potensio)
- RS ==> PIN 3
- RW ==> GND
- E ==> PIN 2
- D4 ==> PIN 5
- D5 ==> PIN 6
- D6 ==> PIN 7
- D7 ==> PIN 8
- A ==> 5V
- K ==> GND
2. Selanjutnya hubungkan RTC modul dengan Arduino anda
Jika berhasil, berikut ini hasil akhir dari percobaan kali ini :
Terimakasih atas kunjunganya selamat mencoba dan semoga bermanfaat 😊.
Skema rangkaian RTC DS1302 |
Konfigurasi PIN RTC DS1302Selanjutnya jika anda belum memiliki library RTC DS1302 di software Arduino IDE anda, silakan anda download terlebih dahulu pada link dibawah ini :
- VCC ==> 5V
- GND ==> GND
- CLK ==> PIN 10
- DAT ==> PIN 11
- RST ==> PIN 12
Setelah anda download anda import ke software Arduino IDE library RTC yang sudah anda download tadi dengan cara :
- Buka software Arduino IDE
- Klik tab "Sketch" dan pilih "Include Library"
- Kemudian pilih "Add .ZIP Library.."
- Selanjutnya pilih file Library berformat .ZIP yang sudah di download tadi dan klik "Open"
Kemudian anda upload Sketch dibawah ini ke Board Arduino anda
//www.berbageilmu.blogspot.co.id//
#include <virtuabotixRTC.h>
#include <LiquidCrystal.h>
virtuabotixRTC myRTC(10, 11, 12); //CLK, DAT, RST
LiquidCrystal lcd(3, 2, 5, 6, 7, 8);
void setup() {
lcd.begin(16,2);
myRTC.setDS1302Time(00, 20, 13, 6, 25, 05, 2017); //setelah di upload ke Arduino , upload sketch ini kembali dan jadikan komen "//myRTC.setDS1302Time(00, 20, 13, 6, 25, 05, 2017);"
/*
00 = Detik 25 = Tanggal
20 = Menit 05 = Bulan
13 = Jam 2017 = Tahun
*/
}
void loop() {
myRTC.updateTime();
lcd.setCursor(0, 0);
lcd.print("Tggl: ");
lcd.print(myRTC.dayofmonth);
lcd.print("-");
lcd.print(myRTC.month);
lcd.print("-");
lcd.print(myRTC.year);
lcd.setCursor(0, 1);
lcd.print("Jam : ");
lcd.print(myRTC.hours);
lcd.print(":");
lcd.print(myRTC.minutes);
lcd.print(":");
lcd.print(myRTC.seconds);
}
Jika berhasil, berikut ini hasil akhir dari percobaan kali ini :
Terimakasih atas kunjunganya selamat mencoba dan semoga bermanfaat 😊.