Anda di halaman 1dari 5

Nama : Rahman Hanggara

Nim : 41420010014

Tugas 13 Perancangan Berbasis Mikroprosesor

1. Berikan Contoh Penggunaan RTC Modul DS3231!

Jawab

RTC (Real Time Clock) adalah sebutan untuk IC yang menyediakan informasi waktu
secara presisi mulai dari detik, menit, jam, tanggal, hari, bulan sampai dengan tahun.
Ada banyak tipe IC RTC yang tersedia di pasaran, misalnya DS3231. Module RTC
DS3231 adalah salah satu jenis module yang dimana berfungsi sebagai RTC (Real Time
Clock) atau pewaktuan digital serta penambahan fitur pengukur suhu yang dikemas
kedalam 1 module.

Contoh Monitoring waktu dan temperature RTC DS3231 menggunakan LCD Display
Bahan yang diperlukan :
1) Arduino Uno
2) RTC DS3231
3) Module i2c pcf8574
4) LCD 16×2
5) Kabel jumper
6) Komputer + Software Arduino IDE
Skema rangkaian untuk percobaan ini :

Library yang dibutuhkan :


 DS3231 :
 I2C PCF8574

Kode program untuk LCD Display

#include <Wire.h>
#include <LiquidCrystal_PCF8574.h> //memasukan library LCD
#include <DS3231.h> //memasukan library DS3231

DS3231 rtc(SDA, SCL); //prosedur pembacaan I2C


LiquidCrystal_PCF8574 lcd(0x3F); //didapat dari i2c scanner

void setup()
{
//set komunikasi baut di serial monitor pada kecepatan 115200
Serial.begin(115200);
//menuliskan data di serial monitor
Serial.println("Trial LCD + DS3231");
//prosedur pembacaan RTC DS3231
rtc.begin();

//Inisialisasi LCD berukuran 16 kolom dan 2 baris


lcd.begin(16, 2);
//menyalakan backlight LCD, jika mematikan dapat diisi dengan nilai "0"
lcd.setBacklight(255);

//setting pertama download program


//rtc.setDate(07, 4, 2018); //mensetting tanggal 07 april 2018
//rtc.setTime(22, 00, 00); //menset jam 22:00:00
//rtc.setDOW(6); //menset hari "Sabtu"

lcd.setCursor(00,00);
lcd.print("nyebarilmu.com"); //pada baris pertama dituliskan nyebarilmu.com

lcd.setCursor(00,1);
lcd.print(" LCD + DS3231 "); //pada baris kedua dituliskan LCD + DS3231

delay(5000); //Waktu jeda


lcd.clear();
}

void loop()
{
Serial.print(rtc.getDOWStr(1));
Serial.print(" ");

Serial.print(rtc.getDateStr());
Serial.print(" -- ");

Serial.println(rtc.getTimeStr());
Serial.print(" -- ");

Serial.println(rtc.getTemp());

lcd.setCursor(00,00);
lcd.print(rtc.getDOWStr(1)); //prosedur pemanggilan hari
lcd.setCursor(3,00);
lcd.print(",");

lcd.setCursor(4,00);
lcd.print(rtc.getDateStr()); //prosedur pemanggilan tanggal

lcd.setCursor(00,1);
lcd.print(rtc.getTimeStr()); //prosedur pemanggilan waktu

lcd.setCursor(10,1);
lcd.print("t:");

lcd.setCursor(12,1);
lcd.print(rtc.getTemp()); //prosedur pemanggilan suhu

delay (1000);
}
Hasil program diatas

Anda mungkin juga menyukai