Memori Data Simulator Penghitug Jumlah Orang Pada Pintu Masuk dan Keluar Gedung.

14 MCS-51 P1 P0 EA ALE PSEN ADDR MEMORI PROGRAM EKSTERNAL INSTR OE LATCH Gambar 4. Eksekusi Memori Program Eksternal Didin Wahyudin, 2006: 13

H. Memori Data

Gambar ini menunjukkan konfigurasi perangkat keras pada saat mengakses RAM eksternal bila kapasitas memori yang dibutuhkan lebih dari 2 K byte. Dalam hal ini, CPU mengeksekusi program dari ROM internal. Port 0 berfungsi sebagai bus alamat atau data bersifat multiplexer terhadap RAM. Kemudian, 3 buah jalur dari port 2 digunakan untuk pemilihan halaman RAM RAM page. CPU mengaktifkan sinyal RD dan WR berdasarkan kebutuhannya selama pengaksesan RAM eksternal. MCS-51 P1 P0 EA ALE RD ADDR MEMORI PROGRAM EKSTERNAL DATA WE LATCH VCC OE PAGE BITS WR P3 P2 IO Gambar 5. Pengaksesan Memori Data Eksternal Didin Wahyudin, 2006: 14 Data memori eksternal dapat mencapai 64 KB. Pengalamatan data memori eksternal ada yang memerlukan lebar cukup 1 byte atau dengan 2 byte. Pengalamatan dengan 1 byte sering digunakan asalkan satu atau lebih jalur I O digunakan untuk memilih RAM page, seperti yang terlihat pada gambar. Sebaliknya, pengalamatan 2 byte digunakan dengan catatan port 2 digunakan untuk mengirim high address byte byte alamat atas. 15 16 FFH UPPER 128 80H 7FH LOWER 128 DIAKSES HANYA DENGAN INDIRECT ADDRESSING PENGAKSESAN DENGAN DIRECT ADDRESSING DIAKSES DENGAN DIRECT MAUPUN INDIREST ADDRESSING SPECIAL FUCTION REGISTER FFH 80H Gambar 6. Data Memori Internal Agfianto Eko Putra;2002: 6 Data memori internal dibagi menjadi beberapa bagian seperti pada gambar. Memori internal dibagi menjadi 3 blok yang secara umum dibedakan menjadi lower 128, upper 128 dan ruang Special Fucntion Register SFR. Lebar alamat data memori internal selalu sebesar 1 byte, sehingga kapasitas maksimum sebuah alamat data adalah 256 byte. Namun demikian, mode pengalaman untuk internal RAM dapat diakomodasikan menjadi 384 byte dengan sedikit trik. Pengalamatan langsung yang lebih tinggi dari 7 FH akan mengakses blok memori berbeda. Gambar 6 menunjukkan bagaimana upper 128 dan ruang SFR menggunakan blok yang sama pada pengalamatan 80H sampai FFH, walaupun secara fisik keduanya terpisah 17 7FH 2FH 1FH 17H H RUANG PENGALAMATAN 11 10 01 20H 18H 10H 08H 4 B A NK DA R I REGIS TER R 0-R7 BIT PEMILIH BANK REGISTER PADA PSW 0F 07H 00 0 STACK 8 POINTER SAAT RESET Gambar 7. Blok Lower 128 Didin Wahyudin, 2006: 16 Blok lower 128 selalu tersedia pada semua piranti MCS-51 seperti terlihat pada gambar diatas. Lokasi di bawah 32 byte dikelompokkan menjadi 4 buah bank dari 8 register. Program instruksi mengenalnya sebagai R0 sampai R7. dua bit dalam PSW Program Status Word dipakai untuk memilih bank-bank yang akan digunakan. Akibatnya, penggunaan pengkodean akan lebih efisien sebab dengan menggunakan cara demikian, kita akan mendapatkan instruksi yang lebih pendek daripada dengan menggunakan Direct Addresing pengalamatan langsung Didin Wahyudin; 2006;16 . BIT NOT ADDRESSABLE Dapat digunakan sebagai ruang STACK pada piranti dengan RAM 256 byte 80H FFH Gambar 8. Blok Upper 128 Didin Wahyudin, 2006: 17 16 byte berikutnya di atas bank register adalah ruang memori yang bersifat bit-addressable dapat dialamati per bit. Pada instruktion Set MCS-51 terdapat instruksi-instruksi yang dapat mengolah bit tunggal dan sebanyak 128 bit pada area dapat diakses secara langsung dengan menggunakan instruction set. Bit yang dapat diakses langsung adalah daerah dari 00H sampai 7FH. Semua daerah dalam lower 128 dapat diakses secara direct maupun indirect addressing pengalamatan langsung maupun tidak langsung. Sebaliknya, upper 128 dari RAM tidak digunakan pada 8051, tetapi menggunakan RAM lain dengan kapasitas 256 byte. Tabel di bawah ini menunjukkan ruang SFR Spesial Function Register. Dalam ruang SFR, ada port latch, timer, kontrol peripheral dan lain-lain. Kita dapat mengakses register-register hanya dengan menggunakan dirrect addressing. Secara umum, seluruh keluarga MCS-51 memiliki ruang SFR sama dengan 8051. kemudian SFR diletakkan pada alamat yang sama. Kita dapat melakukan pengalamatan sebanyak 16 alamat pada ruang SFR, baik pengalamatan bit 18 maupun byte. SFR yang bersifat bit addressable adalah alamat-alamat yang berakhir dengan 000B. Bit yang dialamatkan pada daerah ini mulai 80H sampai FFH. I. SFR Special Function Register SFR pada mikrokontoler dapat dibagi menjadi beberapa bagian. Setiap FSR pada mikrokontoler AT89S51mempunyai alamat masing-masing sebagai berikut : Tabel 1. Special Function Register Macam SFR Alamat Fungsi Accumulator E0H Menyimpan data sementara Register B F0H Operasi perkalian dan pembagian Program Status Word PSW D0H Informasi statuus program Stack Pointer 81H Menyimpan dan mengambil data dari atau ke stack Data Pointer 83 H dan 82H Menampung data 16 bit Port 0, 1, 2 dan 3 80H, 90H, A0H Menyimpan data yang akan dibaca atau ditulis dari atau ke port Serial Data Buffer 99H Sebagai register penyangga penerima atau pengirim Timer Register 8CH dan 8AH Merupakan register-register pencacah 16 bit untuk masing- masing timer 0, 1 dan 2 19 Capture Register CBH dan CAH Menyimpan nilai isi ulang

J. Mode-mode Pengalamatan