logo

Select Sidearea

Populate the sidearea with useful widgets. Itโ€™s simple to add images, categories, latest post, social media icon links, tag clouds, and more.
[email protected]
+1234567890
 

Tutorial Microcontroller MCS-51 ATMEL ISP

PERCOBAAN 14
REAL TIME CLOCK (RTC) 12C887

TUJUAN
1. Mahasiswa memahami tentang real time clock
2. Mahasiswa memahami rangkaian interface RTC dengan mikrokontroller
3. Mahasiswa memahami pembuatan program pengambilan data RTC

TEORI DASAR

Real Time Clock merupakan suatu chip (IC) yang memiliki fungsi sebagai penunjuk waktu. RTC DS 12C887 memiliki register yg dapat menunjukkan detik, menit, jam, tanggal, bulan dan tahun. RTC ini didesain memiliki 128 lokasi RAM yang terdiri dari 15 byte untuk data waktu serta kontrol, dan 113 byte sebagai RAM yang dapat digunakan sebagai RAM pada umumnya.
RTC DS 12C887 menggunakan bus yang termultipleks untuk menghemat pin. Timing yang digunakan untuk mengakses RTC dapat menggunakan intel timing atau motorola timing. RTC ini juga dilengkapi dengan pin IRQ untuk kemudahan dalam proses.

Operasi dari RTC

Berikut ini gambar pin-pin dari RTC DS 12C887, jumlah total pin-nya sebanyak 13 buah :

Gambar 14.1 Pin RTC DS 12C887

Berikut ini akan ditampilkan blok diagram dari RTC DALLAS 12C887. Terlihat dari blok diagram tersebut bawhwa RTC terbagi menjadi beberapa bagian utama dengan kontrol maupun I/O untuk operasinya.

Tabel 14.1. berikut ini menjelaskan fungsi masing-masing pin yang ada :

Nama Pin

Keterangan

MOT Motorola / Intel timing
AD0-AD7 Bus DATA / ADDRESS yang termultipleks
CS Chip Select
AS Address Strobe
R/W Write Strobe
DS Data Strobe
RESET Inputan Reset
IRQ Interrupt Request Output
SQW Output Sinyal Kotak
VCC Catu tegangan +5 volt
Gnd Ground
RCLR Hapus RAM

Penjelasan dari masing-masing pin RTC DS12C887 dijelaskan berikut :

1. GND, VCC
Merupakan pin untuk power supply RTC. VCC diberikan input +5volt. Ketika tegangan 5 volt diberikan dalam batas yang normal, RTC bebas diakses dan data dapat ditulis atau dibaca. Sedangkan ketika Vcc dibawah 4.25 volt, maka proses baca dan tulis tidak dapat dilakukan. Akan tetapi, proses pewaktu (timekeeping) tetap dilakukan oleh RTC tanpa dipengaruhi oleh tegangan input yang rendah. Saat VCC turun dibawah 3 volt, catu daya untuk RAM dan pewaktu dipindahkan ke internal lithium batery yang terdapat pada RTC. Fungsi pewaktu dari RTC memiliki akurasi ยฑ 1 menit per bulan pada suhu 250 C walaupun tanpa adanya catu pada VCC.

2. MOT (Mode Select)
Pin MOT memberikan kebebasan untuk memilih dua tipe bus. Ketika pin ini dihubungkan dengan VCC, maka motorolla bus timing yang dipilih, sedangkan ketika dihubungkan ke ground atau dibiarkan (tak dihubungkan) maka intel bus timing yang dipilih. Pin ini memiliki pull down internal sebesar sekitar 20 k?.

3. SQW (Square Wave Output)
Pin SQW dapat mengeluarkan sinyal kotak, dari satu sampai 13 pembagian yang disediakan oleh 15 buah tingkat pembagi (divider) internal dari RTC. Frekuensi dari SQW dapat dipilih dengan memprogram register A seperti pada tabel. Sinyal SQW dapat dihidupkan dan dimatikan dengan mengatur bit SQWE pada register B. Sinyal SQW tidak hidup ketika VCC dibawah 4,25 volt.

4. AD0 โ€“ AD7 (Adrress/Data bus yang ter-multipleks dan bidirect)
Bus yang ter-multiplex menghemat penggunaan pin karena informasi address dan data waktu menggunakan jalur sinyal yang sama. Alamat muncul pada bagian pertama dari bus cycle dan dengan pin yang sama pula digunakan untuk data pada bagian kedua dari bus cycle. Multipleksing antara data dan address tidak memperlambat waktu akses dari RTC karena perubahan dari address menuju data dilakukan pada saat akses RAM internal pada RTC. Address harus valid saat terjadi falling edge pada AS/ALE, yang kemudian RTC akan me-latch address dari AD0 sampai AD6. Data valid yang akan dituliskan ke RTC harus valid dan dijaga stabil pada saat pin DS dan WR diberi pulsa. Pada proses pembacaan, RTC menghasilkan output 8 bit data pada saat pin DS dan RD diberi pulsa. Bus akan menjadi high impedance saat pulsa low diberikan pada pin DS (motorola) atau pulsa high diberikan pada pin RD (intel).

5. AS (Address Strobe Input)
Perubahan pulsa positif pada address strobe berguna untuk melakukan multipleks pada bus. Perubahan pulsa negatif pada AS akan menyebabkan address ter-latch. Perubahan positif selanjutnya akan menghapus address walaupun CS tidak diaktifkan. Perintah access seharusnya dikirimkan secara bersamaan.

6. DS (Data Strobe or Read Input)
Pin DS/RD mempunyai 2 mode operasi tergantung pada tingkat yang diberikan kepada MOT. Ketika MOT dihubungkan ke VCC, motorola bus timing dipilih dan pada mode ini DS merupakan pulsa positif saat bagian lanjut dari bus cycle dan disebut sebagai data strobe. Saat proses pembacaan, DS menunjukkan bahwa RTC memiliki bus yang bidirectional. Pada proses penulisan, pulsa positif pada DS akan me-latch data yang ditulis. Ketika MOT dihubungkan ke ground, maka intel bus timing yang dipilih dan pin DS disebut sebagai read (RD). RD menjelaskan periode ketika RTC memperlakukan bus sebagai pembaca data. Sinyal RD mempunyai pengertian yang sama seperti sinyal Output Enable (OE) pada memori yang umum.

7. R/W (Read/Write Input)
Pin R/W juga memiliki 2 mode operasi. Ketika pin MOT dihubungkan ke VCC untuk motorola timing, R/W berada pada level yang menunjukkan apakah berada pada proses baca atau tulis. Proses baca ditunjukkan dengan level high pada R/W sementara DS juga high. Proses tulis ditunjukkan saat R/W low dan DS high. Ketika pin MOT dihubungkan ke ground untuk intel timing, sinyal R/W adalah sinyal active low dinamakan WR. Pada mode ini pin R/W mempunyai makna yang sama dengan sinyal Write Enable (WE) seperti pada RAM umum.

8. CS (Chip Select Input)
Sinyal chip select harus di hubungkan low untuk dapat mengakses bus cycle. CS harus dijaga pada posisi aktif saat DS dan AS pada motorola timing atau RD dan WR untuk intel timing. Bus cycle yang terjadi tanpa mengaktifkan CS akan me-latch address tapi tidak ada akses yang bisa dilakukan. Saat VCC dibawah 4,25 volt, RTC secara internal menghalangi akses dengan cara secara internal tidak mengaktifkan input CS. Proses ini akan melindungi baik data RTC maupun data pada RAM saat tidak ada catu daya.

9. IRQ (Interrupt Request Output)
Pin IRQ adalah keluaran active low dari RTC 12C887 yang digunakan sebagai masukan interupsi pada prosessor. Keluaran IRQ tetap low selama selama bit status menyebabkan interupsi terjadi dan bit yang berhubungan yaitu interrupt-enable di-set. Untuk menghapus interupsi biasanya dilakukan dengan membaca register C. Pin RESET juga menghapus interupsi yang dilakukan atau yang belum terjadi (pending). Ketika tidak terjadi interupt maka level IRQ berada pada kondisi high impedance. Beberapa peralatan interupsi dapat dihubungkan dengan IRQ bus. Bus IRQ adalah keluaran open drain dan memerlukan tambahan resistor pull-up.

10. RESET (Reset Input)
Pin RESET tidak berpengaruh terhadap jam, kalender atau RAM. Pada saat penyalaan RTC, pin RESET dapat dijaga LOW untuk beberapa saat untuk menstabilkan catu daya. Lamanya waktu pin RESET diberikan low tergantung dari aplikasi yang digunakan. Akan tetapi jika reset digunakan saat power up (penyalaan), waktu RESET dijaga low harus melebihi 200 ms untuk meyakinkan bahwa timer internal dari RTC untuk penyalaan telah cukup. Ketika RESET low dan VCC diatas 4,25 volt, maka hal-hal yang terjadi adalah sebagai berikut :

a. Periodic Interrupt Enable (PEI) dihapus menjadi nol.
b. Alarm Interrupt Enable (AIE) dihapus menjadi nol.
c. Update Ended Interrupt Flag (UF) dihapus menjadi nol.
d. Interrupt Request Status Flag (IRQF) dihapus menjadi nol.
e. Periodic Interrupt Flag (PF) dihapus menjadi nol.
f. RTC tidak dapat diakses sampai RESET menjadi high.
g. Alarm Interrupt Flag (AF) dihapus menjadi nol.
h. Pin IRQ dalam kondisi high impedance.
i. Square Wave Output Enable (SQWE) dihapus menjadi nol.
j. Update Ended Interrupt Enable (UIE) dihapus menjadi nol.
Pada aplikasi umum, RESET dapat dihubungkan langsung VCC. Koneksi ini akan menjadikan RTC 12C887 dapat berfungsi saat terjadi kerusakan catu daya tanpa mempengaruhi register kontrol RTC.

NEXT