Mikrokontroler AT89S8253 dilengkapi dengan memori EEPROM sebesar 2 Kb (lumayan nich) yang bisa Anda gunakan untuk menyimpan data-data penting walaupun catu daya ke mikrokontroler dimatikan, Atmel memberikan garansi kepada Anda sekitar 100.000 kali penulisan data. Mudah digunakan karena hanya melibatkan beberapa bit kontrol.

Pengontrolan penulisan dan pembacaan data ke/dari EEPROM melalui register khusus EECON. Proses penulisan EEPROM relatif lambat (penulisan ke sebuah register bisa memakan waktu sekitar 4 milidetik), sehingga trik perangkat keras perlu dilakukan untuk meningkatkannya. Saat bit EELD dalam EECON di-set (berlogika “1″), data tidak langsung dituliskan ke EEPROM tetapi disimpan dulu di sebuah buffer sementara (memori sementara) dengan kapasitas 32 byte. Saat bit EELD ini di-nol-kan, data pertama dan seterusnya akan dituliskan secara normal (butuh 4 milidetik), artinya ke-32 byte data tersebut akan ditulis langsung ke EEPROM secara bersamaan dan hanya membutuhkan 4 milidetik BUKAN 32×4 milidetik = 128 milidetik.

Memori EEPROM ini diperlakukan seperti memori eksternal, dengan demikian instruksi khusus untuk penanganan memori tambahan (MOVX) digunakan. Bit EEMEN dalam register EECON menentukan apakah data akan dibaca/ditulis dari/ke EEPROM eksternal beneran atau EEPROM on-chip (di dalam uC).

Register EECON

Register ini berisi bit-bit kontrol untuk mengoperasikan memori EEPROM, perhatikan gambar berikut

WRTINH

Ini bit yang cuman bisa dibaca saja, saat tingkat tegangan catu daya terlalu rendah untuk operasi pemrograman EEPROM, perangkat keras secara otomatis akan me-nol-kan bit ini, artinya pemrograman EEPROM tidak dapat dilakukan atau proses pemrograman yang sedang berlangsung akan dibatalkan.

RDY/BSY

Bit ini hanya dibaca saja:

  • 0 - Sedang proses pemrograman (butuh waktu 4 milidetik).
  • 1 - Proses pemrograman sudah selesai (data dituliskan ke EEPROM).

DPS

  • 0 - Alamat untuk pemrograman atau pembacaan dari EEPROM tersimpan di register DP0H dan DP0L.
  • 1 - Alamat untuk pemrograman atau pembacaan dari EEPROM tersimpan di register DP1H dan DP1L.

EEMEN

  • 0 - Instruksi MOVX digunakan untuk mengakses memori eksternal.
  • 1 - Instruksi MOVX digunakan untuk mengakses memori EEPROM internal. Jika register alamat lebih besar dari 2KB, maka mikrokontroler akan mengakses memori eksternal.

EEMWE

Saat berlogika “1″, bit EEMWE membolehkan penulisan data ke EEPROM. Instruksi MOVX digunakan untuk penulisan/penyimpanan data. Setelah proses penulisan selesai, bit ini harus di-nol-kan secara manual dalam program.

EELD

Saat berlogika “1″, bit EELD ini membolehkan lebih dari 32 byte dituliskan bersamaan. Jika bit-nya di-set, instruksi MOVX tidak akan menginisialisasi pemrograman EEPROM, hanya sekedar menyimpan data ke buffer data dari memori EEPROM. Sebelum menuliskan data terakhir, bit ini harus di-nol-kan dan setelah instruksi MOVX, seluruh isi buffer secara otomatis dituliskan ke EEPROM selama 4 milidetik.

Tags: , ,

16 Responses to “Penanganan Memori EEPROM (uC AT89S8253)”

  1. wah ini dia yg dicari2 artikelnya mas
    btw,,saya sudah mempunyai buku mikon mas dah lama bgt,, thanx atas bukunya mas,,saya jadi bisa memahami mikon,,
    saya juga sudah bisa membuat alat yg berbasis mikon,,khususnya at89sxx

    saya mempunyai kesulitan,,saya blm mempunyai buku mikon at89s53 dan juga atmega,
    jadi saya blm paham bagaimana cara menuliskan data ke EEPROM.

    misal,, saya punya data hasil pencacahan sampai ribuan..
    alamat 40h = satuan
    alamat 41h = puluhuan
    alamat 42h = ratusan
    alamat 43h = ribuan

    pertanyaannya,, bagaimana instruksi untuk memindahkan data tersebut ke EEPROM??

    sebelumnya terima kasih

  2. minta contoh listing program untuk penyimpanan data dan pembacaan data atau mengeluarkan data yang telah disimpan

    terima kasih

  3. Mas, punya contoh program menggunakan bahasa asembler untuk menyimpan dan membaca data menggunakan serial EEPROM..yang saya gunakan adalah serial EEPROM AT24C64 sedangkan untuk mikronya saya menggunakan At89S51..
    mohon bantuannya mas…
    terima kasih…

  4. mas,gmna cranya menulis dan membaca data 7 byte sekaligus pada memori eksternal AT24C64???mohon bantuannya,,,

  5. Untuk mengakses EEPROM di AT89S823 coba download file ini. Instruksinya ada disini.
    http://www.atmel.com/dyn/resou.....oc3449.pdf

  6. Untuk mengakses memori eksternal AT24Cxx, bisa dilakukan dengan komunikasi secara I2C. Disini ada instruksi-instruksi yang bisa dipakai. http://www.8052.com/codelib
    Semoga bermanfaat.

  7. Sebelumnya maaf ya mas…kalo menggunakan website mas agfianto buat sharing. Saya juga pemakai buku yang mas agfianto bikin. YAHUT betul buku “Belajar Mikrokontroler AT89C51/52/55″ yang mas agfianto tulis.
    Sudah banyak aplikasi yang saya bikin setelah belajar dari buku ini.

    Terima kasih banyak mas agfianto.

  8. @Trigas:
    terima kasih banget loch masukan2-nya…

  9. Anda kesulitan mengcopy/cloning IC MCU Atmel AT89S8253 karena diproteck / dilock, kami bisa mengerjaknnya dengan tingkat keberhasilan 99,99%.

    MCU brand lain yang bisa dibuka code protect-nya sbb:
    -MICROCHIP PIC12xx PIC16Fxxx PIC18Fxxxx
    -ATMEL AT8951 8952 892051 894051 89c555, dsb.
    -Philips P87Vxxxx
    -MOTOROLA MC68hc905 908 911.

  10. Numpang nanya, Apakah ada microcontrolelr keluarga 8051 yg memiliki internal RAM yg kapasitasnya besar, paling tidak 1Kb. Thx.

  11. @bram
    mas bram ada telepon yang bisa di hubungi ga

  12. Mau tanya nih… untuk pemrograman AT89S8253, waktu ngisi program eeprom.hex pertama ke AT89S8253 dengan SPI Prog 3.7 berhasil sukses, tapi mau diisi program lagi ( yg ke-2,ke-3, dst…) koh error terus ya, Kira2 apa yg salah ya… Mohon pencerahan…terima kasih.

  13. pak agfi klo nyimpan data ke eeprom internal avr atmega16 gemana caranya, trus klo nyimpannya tiap 1 menit gemana ?

    Bachtiar efendi

  14. @karso:
    wah kronologis erronya gimana yach?

    @bactiar:
    menggunakan BASCOM AVR, caranya mirip2 dengan seri AT89, untuk penyimpanan tiap 1 menit akurat bisa menggunakan RTC, atau gunakan saja timer yang ada di AVR direka2 supaya 1 menit-an simpen data di eeprom… kira2 begitu konsepnya…

Trackbacks/Pingbacks

  1. Memulai Belajar Mikrokontroler - Quick, Easy and Harmless!
  2. Akses EEPROM pada AT89S8253 dan AVR ATMega32

Leave a Reply

You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>