TUTORIAL MEMBUAT JAM DIGITAL MENGGUNAKAN RTC DS3231 DAN LCD KARAKTER 16x2 DENGAN ARDUINO

Tampilan Jam Digital
Tampilan Jam Digital

Pada kesempatan ini kita akan membuat tutorial jam digital, jam digital displaynya dapat berupa Sevent Segment, LCD, P10 dan lain-lain, Untuk kali ini kita akan membuat project sederhana jam digital dengan Display lCD karakter 16x2 untuk tampilannya pada  Tutorial Membuat Jam Digital Menggunakan RTC DS3231 dan LCD Karakter 16x2 Menggunakan Arduino
Supaya jam di gital , waktunya tetap real time. kita menggunakan RTC, ada beberapa jenis RTC misalnya DS3231, DS1307 ,DS1302 dan lain-lain, untuk kali ini jenis RTC yang akan kita gunakan adalah  DS3231 di lengkapi dengan Baterai, Sehingga ketika listrik mati, untuk data waktu dan tanggal tetap tersimpan dan waktu tetap terupdate real time.  Dengan Module RTC ini kita dapat membuat jam digital dengan akurasi waktu lebih baik di banding tanpa RTC.RTC ini berkomunikasi dengan arduino dengan antar muka I2C (Inter Integrated Circuit), untuk lebih jelasnya dapat membaca Tutorial Cara Program RTC DS3213 Menggunakan Arduino
Untuk menampilkan waktu dan tanggal menggunakan display LCD Karakter 16x2, LCD ini dapat menampilkan 16 kolom dan 2 Baris,untuk lebih jelasnya dapat membaca tutorial LCD Karakter dapat membaca Cara Program LCD Karakter 16x2 Menggunakan Arduino dan Simulasi Proteus. LCD Karakter 16x2 sudah cukup untuk menampilkan tanggal dan waktu secara bersamaan.
Untuk membuat project ini dapat mengikuti langkah-langkah berikut ini:

 MODULE / PART YANG DI BUTUHKAN
part atau Module yang di gunakan untuk project kali ini , sebagai berikut :

  1. Arduino
  2. Module LCD Karakter 16x2
  3. RTC DS3231
  4. Potensio Meter 10K ohm
  5. Bread Board
  6. Kabel Jumper secukupnya
Library :
Untuk Project Jam Digital Menggunakan RTCDS3231 dan LCD Karakter 16x2 Library yang digunakan sebagai berikut :

  1. RTC DS3231download di sini (sumber : Github-Adafruit)
  2. LCD Module Karakter 16x2, librarynya secara default sudah ada di arduino IDE
WIRING DIAGRAM 
Berikut Wiring Diagram lCD Karakter 16x2 , RTC DS3231 Dengan Menggunakan Arduino
 
Wiring Jam Digital Menggunakan Arduino
Wiring Diagram Jam Digital Dengan LCD Karakter 16x2 Menggunakan Arduino

ALOKASI PIN ARDUINO  
Supaya dapat bekerja LCD karakter 16x2 dan RTC DS3231 di hubungkan dengan pin-pin Arduino, untuk lebih jelasnya dapat di lihat pada alokasi pin arduino berikut ini : 

  •  Alokasi Pin LCD Karakter 16x2
Komunikasi Arduino dengan LCD Karakter 16x2 menggunakan Komunikasi Paralel 4 bit,  yaitu dari D4,D5,D6,D7 dan 3 Bit Kontrol
    Pin LCD   Arduino     
    Pin 1 (GND) GND
    Pin 2 (VCC) +5V
    Pin 3 (VSS) Pengaturan Contras
    Pin 4 (RS) Pin 12
    Pin 5 (R/W) GND
    Pin 6 (E) Pin 11
    Pin 7 -
    Pin 8 -
    Pin 9 -
    Pin 10 -
    Pin 11 (D4) Pin 5
    Pin 12 (D5) Pin 4
    Pin 13 (D6) Pin 3
    Pin 14 (D7) Pin 2
    Pin 15 (LED +) +5V
    Pin 16 (LED -) GND
    •  Alokasi Pin RTC DS3231
    Mikrokontroler Arduino komunikasi dengan RTC DS3231 Menggunakan Komunikasi I2C , Menggunakan Pin SDA (A4) dan SCL (A5)


      RTC DS3231   Arduino     
      SCL A5
      SDA A4
      VCC +5V
      GND Gnd
       PROGRAM 

      #include  <Wire.h>
      #include "RTClib.h"
      #include <LiquidCrystal.h>

      LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
      RTC_DS3231 rtc;

      char namaHari[7][12] = {"Min", "Sen", "Sel", "Rab", "Kam", "Jum", "Sab"};

      void setup()
      {
      lcd.begin(16,2);
      rtc.begin();

      if (rtc.lostPower()) {
      rtc.adjust(DateTime(F(__DATE__), F(__TIME__)));
      }

      lcd.setCursor(0,0);
      lcd.print(" JAM DIGITAL ");
      delay(1000);
      lcd.setCursor(0,1);
      lcd.print(" LABELEKTRONIKA ");
      delay(1000);
      lcd.clear();
      }

      void loop()
      {
      DateTime now = rtc.now();
      lcd.setCursor(1,0);
      lcd.print(namaHari[now.dayOfTheWeek()]);
      lcd.print(",");
      printAngka(now.day());
      lcd.print("-");
      printAngka(now.month());
      lcd.print("-");
      printAngka(now.year());

      lcd.setCursor(4,1);
      printAngka(now.hour());
      lcd.print(":");
      printAngka(now.minute());
      lcd.print(":");
      printAngka(now.second());

      delay(2000);

      }
      void printAngka(int digits){
      if(digits < 10){
      lcd.print('0');
      lcd.print(digits);
         }
         else lcd.print(digits);
       }

      Aplikasi Jam digital banyak di aplikasikan di kehidupan sehari-hari, karena saat beraktifitas biasanya berhubungan dengan waktu :), jika ada yang kurang jelas bisa meninggalkan pertanyaan di kolom komentar selamat berkarya dan semoga artikelnya bermanfaat :)

      No comments for "TUTORIAL MEMBUAT JAM DIGITAL MENGGUNAKAN RTC DS3231 DAN LCD KARAKTER 16x2 DENGAN ARDUINO"