Minggu, 01 Maret 2015

Proyek Jam dengan RTC


Ini adalah latihan dasar mikrokontroller arduino, kita akan mencoba menghubungkan arduino Uno dengan RTC. Untuk menghubungkan Arduino Uno dengan RTC cobalah lihat gambar dibawah ini



Gambar diatas diambil dari forum arduino. mohon maap karena mencari yang mudah ya digunakanlah gogle dengan kata kunci " arduino RTC" dan muncullah banyak gambar. ya diambil salah satu. dari gambar di atas hubungkanlah kaki modul rtc dengan Arduino seperti gambar, untuk kaki ds tidak perlu dihubungkan, abaikan saja.

Untuk menghubungkan Arduino dengan LCD 16x2 lihatlah gambar dibawah ini.







cobalah listing program dibawah ini dan lihat hasilnya

**************************************************************************

#include "Wire.h"
#define DS1307_ADDRESS 0x68
#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

void setup(){
  Wire.begin();
//  Serial.begin(9600);
  lcd.begin(16,2); 
  }

void loop(){
  Wire.beginTransmission(DS1307_ADDRESS);
  byte zero = 0x00;
  Wire.write(zero);
  Wire.endTransmission();
  Wire.requestFrom(DS1307_ADDRESS, 7);
  int detik = bcdToDec(Wire.read());
  int menit = bcdToDec(Wire.read());
  int jam = bcdToDec(Wire.read() & 0b111111); //24 hour time
  int weekDay = bcdToDec(Wire.read()); //0-6 -> sunday - Saturday
  int bulan = bcdToDec(Wire.read());
  int tanggal = bcdToDec(Wire.read());
  int tahun = bcdToDec(Wire.read());

  delay (133);
lcd.clear();
lcd.setCursor(0,0);
  lcd.print(tanggal);
  lcd.print("-");
  lcd.print(bulan);
  lcd.print("-");
  lcd.print(tahun);
  lcd.print(" ");
  lcd.print(jam);
  lcd.print(":");
  lcd.print(menit);
  lcd.print(":");
  lcd.print(detik);
 
lcd.setCursor(0,1);
lcd.print(" Percobaan  ");
delay(200);
}

byte bcdToDec(byte val)  {
// Convert binary coded decimal to normal decimal numbers
  return ( (val/16*10) + (val%16) );
}

**************************************************************************

Nah sekarang marilah rekan kembangkan program di atas sesuai imajinasi rekan rekan. Cobalah modifikasi programnya agar menampilkan jam saja. Atau coba agar baris pertama menampikan jam dan baris ke dua menampilkan hari dan tanggal. Ayo terus berlatih dengan semangat



Tidak ada komentar:

Posting Komentar