Saturday 3 July 2010

Penggunaan EEPROM AT89S8252

Aplikasi mikrokontroller dengan menggunakan EEPROM diperlukan apabila data yang telah tersimpan tidak hilang jika tegangan dimatikan (nonvolatile). Salah satu contoh aplikasi mikrokontroler tersebut adalah untuk mengendalikan lampu, dimana pada saat listrik padam status lampu harus pada kondisi semula. Seperti layaknya kondisi lampu yang ada dirumah kita, pada saat listrik padam maka begitu menyala status lampu akan seperti saat sebelum listrik padam.

Sekarang ini sebagian mikrokontroler sudah mempunyai fasilitas EEPROM internal meskipun terbatas, sehingga tidak perlu tambahan device eksternal apabila ingin menggunakan fasilitas penyimpanan yang nonvolatile. Mikrokontroler keluarga MCS51 yang mempunyai fasilitas tersebut salah satunya adalah AT89S8252. EEPROM internal yang terdapat disini mempunyai kapasitas sampai 2 kb. Jika digunakan untuk aplikasi sederhana seperti pengedalian lampu, counter, jam digital dan traffic light tidak ada masalah.
Agar fasilitas EEPROM internal ini dapat digunakan perlu adanya pengaturan register. Register yang digunakan untuk pengaturan ini terdapat dalam WMCON (Watchdog and Memory Control Register) dengan alamat 96H, berikut ini gambaran register WMCON.
 
image002
Simbol
Fungsi
PS2
PS1
PS0
Kombinasi bit yang digunakan untuk mengatur waktu reset internal (Watchdog Timer). Jika nilainya “0” semua maka waktunya sama dengan 2048 ms.
EEMWE
Bit untuk aktifasi penulisan data ke EEPROM internal jika nilainya “1”. Jika telah selesai melakukan penulisan data, ubah bit menjadi “0”.
EEMEN
Bit untuk aktifasi EEPROM internal jika nilainya “1” sehingga pada saat ada instruksi movx akan langsung menuju ke EEPROM insternal, tapi jika nilainya “0” maka pada saat instruksi movx akan langsung menuju eksternal data memory.
DPS
Digunakan untuk memilih Data Pointer pertama atau Data Pointer kedua.
WDTRST
Bit ini mempunyai fungsi ganda, yang pertama untuk aplikasi reset internal (Watchdog Timer) bit ini digunakan untuk reset timer, sehingga timer yang terdapat dalam reset internal akan di refresh kembali. Fungsi yang kedua adalah sebagai pertanda RDY/BSY untuk aplikasi penulisan EEPROM internal. Jika nilainya “1” maka fungsi penulisan data telah selesai dijalankan dan siap untuk dilakukan penulisan ulang, jika nilainya”0” fungsi penulisan data masih berjalan.
WDTEN
Bit untuk aktifasi reset internal (Watchdog Timer).
Guna mencoba fasilitas EEPROM internal yang ada pada AT89S8252, berikut ini akan gambar rangkaian yang akan digunakan.
Gambar rangkaian
image006
Sedangkan untuk program, akan digunakan program untuk counter dimana hasilnya akan dimasukkan dalam EEPROM sehingga saat power off atau reset hasil counter akan tetap tersimpan. Berikut ini program assembly yang digunakan untuk counter :
Download sourcecode disini

No comments:

Post a Comment