Module RTC (Real Time Clock) sangat penting dalam pembuatan Jam Digital menggunakan Arduino. Selain mempermudah, dengan RTC data waktu dan tanggal akan terus berjalan, walaupun Arduinonya kita matikan. Karena RTC mempunyai memori dan daya sendiri yaitu baterai lithium.
Ada banyak jenis Module RTC, saya memilih tipe DS1302. Karena tipe ini adalah yang paling populer dan mudah digunakan.
Apa yang harus kamu siapkan:
1x Arduino Uno
4x Kabel Jumper Male-female
1x Module RTC DS1302
Lalu pasang rangkaianya seperti gambar di bawah ini:
Sudah terpasang kah? Ok sebelum masuk ke-pemrograman, kamu harus install dulu Library RTCnya. Silahkan Download dulu librarynya, klik Link dibawah ini:
Bagi yang masih bingung gimana caranya masukin Library ke Aplikasi Arduino, silahkan buka postingan di bawah ini dulu.
OK! Kalau library RTCnya sudah di masukin, sekarang kita masuk Kepemrograman. Silahkan kamu copy paste Sketch dibawah ini, saran saya ketik ulang biar inget :D
#include <virtuabotixRTC.h> //menambahkan library RTCvirtuabotixRTC myRTC(6, 7, 8); //CLK, DAT, RSTvoid setup() {Serial.begin(9600); //Komunikasi Serial dgn KomputermyRTC.setDS1302Time(00, 48, 20, 6, 17, 11, 2016); //Setting waktu dan tanggal RTC}void loop() {myRTC.updateTime();Serial.print("Tanggal / Waktu: ");Serial.print(myRTC.dayofmonth); //menampilkan tanggalSerial.print("/");Serial.print(myRTC.month); //menampilkan bulanSerial.print("/");Serial.print(myRTC.year); //menampilkan tahunSerial.print(" ");Serial.print(myRTC.hours); //menampilkan jamSerial.print(":");Serial.print(myRTC.minutes); //menampilkan menitSerial.print(":");Serial.println(myRTC.seconds); //menampilkan detikdelay( 1000);}
Jika sudah DONE UPLOADING, kamu bisa buka Serial Monitor untuk melihat data waktu dan tanggalnya. Seperti gambar di bawah ini:
LITTLE NOTES:
- #include <virtuabotixRTC.h> kode ini digunakan untuk menyertakan library virtuabotixRTC kedalam pemrograman.
- virtuabotixRTC myRTC(6, 7, 8); digunakan untuk membuat variabel myRTC, dan untuk pin Arduino yang digunakan pin 6 untuk CLK, pin 7 untuk DAT, dan pin 8 untuk RST. Kamu bisa ubah sesuai kebutuhan.
- myRTC.setDS1302Time(00, 48, 20, 6, 17, 11, 2016); digunakan untuk mengatur detik, menit, jam, yang angka 6 jangan di ubah, tanggal, bulan, dan tahun.
- Serial.print(myRTC.dayofmonth); digunakan untuk menampilkan tanggal pada Serial Monitor
Mau Jadi Lebih Kreatif Lagi?
- Silahkan tambahkan rangkaian Speaker. Yang belum pernah coba bisa buka posting berikut Program Arduino: Melody Dalam Speker!
- Lalu buatlah sebuah fungsi logika, jika myRTC.hours == 12 Speaker berbunyi. Silahkan kamu kreasikan sendiri nadanya, intinya adalah membuat sebuah Alarm Bangun Tidur. :D
kalau ingin ditampilkan di display gimana ?
BalasHapuskenapa angka 6 ga boleh diganti? mohon penjelasannya mas. makasih :D
BalasHapusGan, gimana caranya untuk mengatur waktu On/Off relay sesuai jadwal yang sudah kita tentukan?
BalasHapusSaya menggunakan Arduino Uno R3 + Relay 4 Channel dan RTC DS1302, saya ingin mengontrol Relay secara otomatis berdasarkan waktu yang sudah diatur.
Pin ang saya gunakan adalah, 2,3,4,5.
Mohon bantuannya gan.
kecu hu
BalasHapus