RTC DS 1307 Dengan Codevision AVR [3] Alarm

Membuat Alarm RTC DS1307 Dengan Codevision AVR bagian 3

Setelah kita membuat jam digital dan tanggalan digital menggunakan IC RTC DS 1307 dengan Codevision, sekarang kita akan membuat Alarm Digital berbasis realtime clock. Alarm tersebut dapat berupa lampu ataupun buzzer. Alarm bisa dimatikan secara manual dengan menggunakan push button.

Alarm ini di set akan berbunyi ketika jam menunjukkan pukul 11:32, dia akan menyala selama satu menit. Prinsipnya adalah membandingkan nilai pada variabel h dan m apakah sesuai alarm yang kita butuhkan. Alarm ini tidak dapat diset secara manual kecuali mengubah codingnya. Untuk keperluan setting secara manual dapat kita tambahkan keypad. 

Kode program Alarm RTC DS 1307 Dengan Codevision AVR (Tutorial ke III)

Source code Codevision-nya sebagai berikut

/*****************************************************
This program was produced by the
CodeWizardAVR V2.05.0 Advanced
Automatic Program Generator
© Copyright 1998-2010 Pavel Haiduc, HP InfoTech s.r.l.
http://www.hpinfotech.com

Project : 
Version : 
Date    : 5/20/2013
Author  : www.Eca.ir *** www.Webkade.ir
Company : 
Comments: 

Chip type               : ATmega16
Program type            : Application
AVR Core Clock frequency: 8.000000 MHz
Memory model            : Small
External RAM size       : 0
Data Stack size         : 256
****************************************************  */

#include <mega16.h>

// I2C Bus functions
#asm
   .equ __i2c_port=0x15 ;PORTC
   .equ __sda_bit=1
   .equ __scl_bit=0
#endasm
#include <alcd.h>
#include <delay.h>
#include <i2c.h>
#include <ds1307.h>
#include <stdlib.h>
char buf[33];
char buf1[33];
unsigned char dd; 
unsigned char mm;
unsigned char yy;
unsigned char s;
unsigned char m;
unsigned char h;
void main(void)
{
PORTD=0x00;
DDRD=0x80;
ACSR=0x80;
SFIOR=0x00;
i2c_init();

// DS1307 Real Time Clock initialization
// Square wave output on pin SQW/OUT: On
// Square wave frequency: 4096Hz
rtc_init(0,0,0);

// Alphanumeric LCD initialization
// Connections specified in the
// Project|Configure|C Compiler|Libraries|Alphanumeric LCD menu:
// RS - PORTB Bit 0
// RD - PORTB Bit 1
// EN - PORTB Bit 2
// D4 - PORTB Bit 4
// D5 - PORTB Bit 5
// D6 - PORTB Bit 6
// D7 - PORTB Bit 7
// Characters/line: 16
lcd_init(16);
lcd_clear();
lcd_gotoxy(0,0);
lcd_putsf("==Jam Digital==");
lcd_gotoxy(0,1);
lcd_putsf("***************"); 
printf("Jam Digital dengan CodeVision AVR.... \r");
delay_ms(2000); 
rtc_set_time(11,12,00);
rtc_set_date(05,05,13);
delay_ms(100);
lcd_clear();
while (1)
 {           
      rtc_get_time(&h,&m,&s); 
      rtc_get_date(&dd,&mm,&yy);
      lcd_gotoxy(0,0);
      sprintf(buf1,"Tgl:%02u/%02u/%02u",dd,mm,yy);
      lcd_puts(buf1);
      lcd_gotoxy(0,1);
      sprintf(buf,"Waktu:%02u:%02u:%02u",h,m,s); 
      lcd_puts(buf); 
      printf("Tanggal: %02u:%02u:%02u \r",dd,mm,yy);
      printf("Waktu  : %02u:%02u:%02u \r",h,m,s);
      delay_ms(1000);       
      if(h==11 & m==12)
      {         
      lcd_clear();
      lcd_gotoxy(0,0);
      lcd_putsf("alarm hidup")  ;
      PORTD.7=1;}
      else{PORTD.7=0;}
      }
}

Gambar rangkaiannya kita tambahkan buzzer, disini saya setting buzzernya 3Volt sesuai dengan output mikro, dan sebuah push button normally close. Anda dapat menggunakan bantuan transistor/relay untuk melewatkan tegangan sesuai spek buzzer anda.

alarm digital codevisionAVR
rangkaian alarm RTC DS1307 Dengan Codevision AVR

Selain untuk keperluan pembuatan jam dan alarm digital, program ini dapat kita kembangkan untuk keperluan pembuatan lampu otomatis yang menyala berdasarkan waktu. Pada postingan berikutnya mungkin akan saya bahas

10 pemikiran pada “RTC DS 1307 Dengan Codevision AVR [3] Alarm”

  1. Judul Harga Beli Sekarang
    Dasar Mikrokontroler Atmega8535 dengan CAVR BUKU ORIGINAL Rp64.000  
    Buku Belajar Sendiri Mikrokontroler AVR Seri ATMega8535 Simulasi, Hardware, Dan Aplikasi Rp70.000  
    Buku 20 Aplikasi Mikrokontroler ATMega 8535 & ATMega 16 Menggunakan Bascom-AVR+CD Rp70.500
    BUKU PRAKTIKUM TEKNOLOGI MICROCONTROLLER ATMEGA- 16 UNTUK SMK/ MAK Rp40.000  
    Buku Dasar Mikrokontroler Atmega8535 dengan CAVR Rp64.000
    BUKU MIKROKONTROLER AVR ATMEGA8535 + CD Rp80.750  
    buku pemrograman mikrokontrorler avr atmega 16 + cd Rp50.000  
  2. Mas mau tanya, pas di compile kok ada 6 eror ya ? apa ada penamaan device di proteus yang harus sama sprti di avr nya? mohon pencerahannya.

    Balas
    • hallo mbak Nurul, biasanya error itu dikarenakan simbol x pada penomoran hexa di blog ini seperti 0x00 saat dicopas ke codevision simbol X nya agak berbeda, huruf X tersebut harus diketik ulang lagi mbak. Untuk device di proteus, sebaiknya disamakan dengan library yang digunakan dalam program. Semoga membantu.

      Balas
  3. hihihi wis klalen kabeh
    dadi kelingan biyen seneng dolanan kaya kuwe nganggo turbo c
    jaman siki krungu turbo c deguyu kethek ndeyan yah..?

    Balas

Tinggalkan komentar

(Note, links and most HTML attributes are not allowed in comments)

Situs ini menggunakan Akismet untuk mengurangi spam. Pelajari bagaimana data komentar Anda diproses.

Ingin produk/website Anda kami ulas? Silahkan klik tombol dibawah ini