You are on page 1of 12

Jam Digital dengan RTC12C887 Berbasis AT89C52

I. Latar Belakang

Waktu merupakan bagian dari kehidupan manusia yang sangat berharga. Sebab banyaknya
waktu dapat menggambarkan banyaknya peluang atau kesempatan, uang atau keuntungan yang
dapat dicapai. Manajemen waktu yang baik dapat membatu keteraturan hidup dan banyak
keuntungan bagi hidup seseorang.

Didasari oleh kenyataan tersebut, penulis merancang suatu alat yang dapat membatu pencapaian
manajemen waktu yang baik yaitu jam digital. Kelebihan dari jam ditigal ini adalah penggunaan
RTC12C887 produksi Dallas Semiconductor. Dengan adanya ic ini tidak perlu setting ulang jam
jika supply dimatikan, karena di dalam RTC tersimpan baterai Lithium sehingga pencatatan waktu
tidak terhenti . Oleh karena itu mikrokontroler dapat mengambil kapanpun hasil kerjanya tanpa harus
mengaturnya.

II. Dasar Teori

2.1 Mikrokontroler AT89S51


Mikrokontroler adalah suatu sistem kikroprosor yang lengkap dan dikemas dalam bentuk sebuah
IC (single chip). Mikrokontroler ini merupakan terobosan teknologi Mikroprosesor dan
microcomputer untuk memenuhi kebutuhan pasar (market need). IC microcontroller memiliki
perangkat penunjang seperti yang terdapat dalam mikrokomputer seperti unit pusat pengolahan
data (central Processing Unit), unit memori ( ROM dan RAM ) dan unit I/O. Selain itu terdapat
juga fasilitas -fasilitas seperti timer, counter, dan kontrol interupsi ( interrupt Control ).
Mikrokontroler merupakan
teknologi semikonduktor dengan kandungan transistor yang lebih banyak, namun hanya
membutuhkan ruang yang kecil serta dapat diproduksi dalam jumlah yang banyak, sehingga
harganya menjadi lebih murah jika dibandingkan dengan mikroprosesor. Sebagai kebutuhan
pasar, mikrokontroler hadir untuk memenuhi selera industri dan para konsumen akan kebutuhan
dan keinginan alat-alat bantu yang lebih baik dan canggih.
Dalam sub bab ini akan dibahas mengenai fitur-fitur dan arsitektur microcontroller MCS51 seri
AT 89S51. Seri AT 89S51 dipilih karena mikrokontroler ini dapat mewakili beberapa seri yang
lain, baik dari segi instruksi yang digunakan, maupun peripheralnya yang lengkap. Dengan
mempelajari 89S51 , maka akan lebih mudah mempelajari tipe MCS51 yang lain, yang pada
dasarnya memiliki konsep dan arsitektur yang hampir sama.
AT89S51 mempunyai keistimewaan sebagai berikut :
 8 bit CMOS mikrokomputer
 4 Kbytes Flash Memory
 128 bytes RAM
 32 jalur input – Output
 Dua 16-bit timer/counter
 Memiliki arsitektur lima two-level vector interrup
 Sepasang full duplex serial port
 On chip oscillator
 64 Kbytes ROM dan RAM
 Bit addressable internal RAM
Struktur dasar AT89S51 digambarkan secara blok diagram seperti pada gambar, berikut:

Gambar 2.1 Blok Diagram AT89S51


Konfigurasi Pin:

Gambar 2.2 Konfigurasi Pin AT89S51

2.2 Real Time Clock DS12C887

Chip DS12C887 buatan Dallas Semiconductor merupakan alat pencatat waktu yang baik, dalam
chip itu tersimpan baterai Lithium sehingga pencatatan waktu tidak terhenti jika catu daya alat
pemakaiannya terhenti, dan prosesor dapat mengambil kapanpun hasil kerjanya tanpa harus
mengaturnya.
Waktu dicatat mulai dari  Detik, Menit, Jam, Hari, Bulan, Tahun bahkan sampai dengan Abad
dan sistem penanggalannya dirancang bisa bekerja tanpa salah sampai tahun 2099. Pencatatan
jam bisa dilakukan dalam format 24 jam perhari, atau 12 jam am/pm.
Dalam mother board IBM produksi beberapa tahun yang lalu DS12C887sering dipakai sebagai
pencatat waktu. Dalam chip ini terdapat pula memori (CMOS RAM) yang mendapat catu daya
yang sama dengan catu daya pencatat waktu, sehingga informasi yang disimpan tidak hilang
selama pencatat waktu masih bekerja. CMOS RAM  tersebut dipakai untuk mencatat parameter
yang dipakai untuk mengatur tata kerja mother board, dari sinilah didapat istilah CMOS Setup
yang sangat dikenal dengan PC.
Selain dipakai sebagai pencatat waktu, DS12C887 bisa berfungsi sebagai alarm, bisa pula
dipakai untuk membangkitkan sinyal periodik dengan frekuensi mulai dari 2 Hz sampai dengan 8
kHz. Karakteristik dari RTC DS 12C887 adalah sebagai berikut:

1.             Pengganti clock /kalender komputer IBM AT


2.             PIN kompatibel /sesuai dengan MC14618B dan DS 12C887
3.             Data tidak akan hilang maksimal sampai 10 tahun meskipun tidak ada daya
4.             Subsistem tercakup sendiri meliputi litium, kwarsa, dan pendukung rangkaian
5.            Menghitung detik,menit, jam, hari seminggu, tanggal, bulan dan tahun dengan
lompatan pergantian tahun
6.             Data waktu kalender atau alarm dapat dipresentasikan dalam format biner / BCD
7.             Format jam yang dipakai 24 atau 12 jam dengan AM dan PM dalam mode 12 jam-an
8.             Pilihan waktu penyimpanan sianghari
9.             Timing bus dapat dipilih antara Motorola dan Intel.
10.         Bus multipleks antara address dengan data untuk efisiensi PIN
11.         Interface dengan software dengan lokasi RAM 128 byte dengan15 byte clock register
kontrol dan 113 byte RAM untuk tujuan umum.
Secara lengkap struktur dari DS12C887 dapat dilihat pada gambar dibawah ini :

 
Gambar 2.3 Diagram Blok DS12C887
 
Gambar 2.4 Konfigurasi Kaki DS12C887
1.             AD0-AD7  : Bus alamat / data
2.             NC             : Tidak ada hubungan
3.             MOT          : Seleksi tipe bus Intel atau Motorola
4.             CS              : Chip select
5.             AS              : Sinyal untuk penanda bahwa AD0-AD7 adalah alamat
6.             R/           : Masukan baca/tulis
7.             DS              : Sinyal untuk penanda bahwa AD0-AD7 adalah data
8.             RESET       : Masukan reset
9.             IRQ            : Pengiriman sinyal interupsi selamat 1 detik sekali
10.         SQW          : Keluaran gelombang kotak
11.         VCC          :  Catu daya + 5 V
12.         GND          :  Ground ( Vss )
 
Peta Memori
Dari sudut pandang pemprograman, chip DS12C887 terlihat sebagai 128 byte memori data.
Memori data tersebut dipakai untuk mencatat waktu, penentu alarm, register pengatur kerja
DS12C887 dan register pemantau kerja dari DS12C887, yang secara lengkap diperlihatkan
dalam Tabel dibawah ini :
 
Tabel 1 Lokasi Memori DS12C887
Alamat Kegunaan Rentang Nilai (BCD)
0 Detik 00…59
1 Alarm 00…59
2 Menit 00…59
3 Alarm menit 00…59
4 Jam 00…12  81…92   00…23
5 Alarm jam 00…12  81…92   00…23
6 Hari 01…07
7 Tanggal 01…31
8 Bulan 01…12
9 Tahun 00…99
10 Register A  
11 Register B  
12 Register C  
13 Register D  
14…49 Memori Bebas  
50 Abad 19..20
51… Memori Bebas  
128
 
Memori data yang masih tersisa atau memori bebas merupakan memori yang bisa dipakai untuk
segala macam keperluan. Memori nomor 10 sampai 13 dipakai sebagai register pengatur kerja
DS12C887 dan register pemantau kerja dari DS1C8287, register-register tersebut dinamakan
sebagai register A, B, C dan D. Pemakaian masing-masing bit dalam register-register tersebut
dirinci dalam tabel – tabel dibawah ini :
 
Tabel 2 Register A (CMOS RAM No. 10)
D7 D6 D5 D4 D3 D2 D1 D0
UIP DV2 DV1 DV0 RS3 RS2 RS1 RS0
 
Tabel 3 Register B (CMOS RAM No. 11)
D7 D6 D5 D4 D3 D2 D1 D0
SET PIE AIE UIE SQWE DM 24/12 DSE
 
Tabel 4 Register C (CMOS RAM No. 12)
D7 D6 D5 D4 D3 D2 D1 D0
IRQF PF AF UF 0 0 0 0
 
Tabel 5 Register D (CMOS RAM No. 14)
D7 D6 D5 D4 D3 D2 D1 D0
VRT 0 0 0 0 0 0 0
 
Register A
Bit 7 dari register A dinamakan UIP (singkatan dari Update In Progress). Nilai 1 pada uip
menyatakan data catatan waktu dalam DS1287 segera akan diperbaiki, jadi pengambilan data
terkini seharusnya dilakukan pada saat UIP = 0. DV2, DV1 dan DV0 (bit 6 sampai 4) dipakai
untuk mengatur kerja osilator kristal. Nilai 010 pada tiga bit ini menghidupkan rangkaian osilator
dan mengaktifkan system pecatatan waktu. Nilai 110 atau 111 menghidupkan rangkaian osilator
tapi system pencatatan waktu tidak bekerja. Nilai-nilai lainnya mematikan rangkaian osilator.
Saat setelah diproduksi, agar beterai Lithium tidak terpakai  sia-sia osilator dalam chip
dimatikan. RS3, RS2, RS1, RS0 (bit 3 sampai 0) untuk menentukan frekuensi sinyal kotak yang
dibangkitkan sesuai dengan kombinasi biner dari keempat bit ini, kombinasinya secara lengkap
diperhatikan dalam Tabel 6.
 
Tabel 6 Frekuensi Pulsa SQW
RS RS2 RS1 RS Frekuensi SQW
3 0
0 0 0 0 0
0 0 0 1 256 Hz
0 0 1 0 128 Hz
0 0 1 1 8.192 Hz
0 1 0 1 4.096 Hz
0 1 0 1 2.048 Hz
0 1 1 0 1.024 Hz
0 1 1 1 512 Hz
1 0 0 0 256 Hz
1 0 0 1 128 Hz
1 0 1 0 64 Hz
1 0 1 1 32 Hz
1 1 0 0 16 Hz
1 1 0 1 8 Hz
1 1 1 0 4 Hz
1 1 1 1 2 Hz
 
Register B
AIE (bit 5, singkatan dari Alarm Interrupt enable) = 1 mengaktifkan system interupt alarm. UIE
(bit 4, singkatan dari Update Ended Interrupt Enable) = 1 Mengaktifkan system interupt karena
adanya perubahan nilai pencatatan waktu. SQWE (bit 3, singkatan dari Square Wave Enable) = 1
membangkitkan sinyal kontak pada kaki SQW (kaki nomor 23). DM (bit 2, singkatan dari data
mode)  menentukan format data pencatatan waktu. DM = 0 pencatatan waktu dilakukan dengan
format biner, DM = 1 pencatatan waktu dilakukan dengan format BCD.  24/12 (bit 1)
menentukan format pencatatan JAM, 24/12 = 0 pencatatan jam dilakukan dengan format 0..12,
24/12 = 1 pencatatan JAM dilakukan dengan format 0..24.DSE (bit 0, singkatan dari Daylight
Savings Enable) dipakai untuk mengatur perubahan waktu pada musim panas dan musim dingin,
hanya diperlukan pada daerah dengan 4 musim.
 
Register C
IRQF (bit 7 sigkatan dari Interrupt Request Flag) dipakai untuk menandai DS12C887 sedangkan
mengajukan permintaan interup pada prosesor dengan cara me-nol-kan kaki IRQ* (kaki nomor
19). Setelah prosesor membaca isi register C, IRQF dan bit-bit lainnya dalam register C berubah
menjadi 0 dan kaki IRQ* menjadi 1.
PF (bit 6 singkatan dari Periodic Interrupt Flag) menjadi 1 secara periodic, periodenya ditentukan
oleh kombinasi nilai biner pada RS3..RS0 dalam Register A. Jika PIE  dalam register B bernilai
1 saat PF bernilai 1, DS12C887 mengajukan permintaan interupsi pada prosesor dengan cara
membuat 0 kaki IRQ* (kaki nomor 19).
AF (bit 5, singkatan dari Alarm Interrupt Flag) menjadi 1 jika waktu saat ini sudah sama dengan
waktu alarm, jika saat itu AIE dalam Register B bernilai 1 pula, DS12C887 mengajukan
permintaan interupsi dengan membuat 0 kaki IRQ* (kaki nomor 19).
UF (bit 4, singkatan dari Update Ended Interrupt Flag) menjadi 1 sekali dalam 1 detik, yakni
pada saat perubahan pencatatan waktu. Jika saat itu UIE dalam Begister B bernilai 1 pula,
DS12C887 mengajukan permintaan interupsi dengan membuat 0 kaki IRQ* (kaki nomor 19).
Register D
VRT (bit 7, singkatan dari Valid RAM and Time) disatukan saat DS12C887 diproduksi, menjadi
0 jika energi baterai Lithium sudah lemah sehingga nilai pencatatan waktu dan isi  CMOS RAM
diragukan keberadaannya.

III. Perancangan Alat


1. Spesifikasi Alat
Tegangan Sumber 220v AC
Tegangan Input 5v DC
Data Input - RCT DS12C887
- Keypad
- Push Button
Pengolah Data Mikrokotroler
Output LCD
Kunci utama RTC DS12C887

2. Blok Dagram

uC LCD

Keypad
AT89c52

RTC DS12C887

Gambar 3.1 Blok Diagram Sistem


Keteangan blok diaram:

a. Keypad berfungsi sebagai setting data pada RC DS12C887


b. Mikrokontroler berfungsi sebagai pengolah data dari RTC DS12C887 yang kemudian
ditampilkan pada LCD
c. RTC DS12C887 sebagai komponen utama system ini yang mencatat waktu mulai dari 
Detik, Menit, Jam, Hari, Bulan, Tahun bahkan sampai dengan Abad.

3.Gambar Skematik Sistem

Gambar 3.2 Skematik Rangkaian

3.Flow Chart
START

Inisialisasi I/O

Ambil data dari


RTC

Tidak
Jam Sesuai Setting data pada
Keypad

Ya

Tampilkan Jam dan


Tanggal ke LCD

Gambar 3.3 Flow Chart Sistem

Gambar Alat:

Referensi:
- http://wahyusp.wordpress.com/2008/12/24/proyek-jam-digital-i/
- www.dalsemi.com
- www.dataimage.com

You might also like