1.9. Lokasi RAM internal
Gambar 1.9. Lokasi RAM internal
Pada gambar 1.9 dapat anda saksikan, suatu peristiwa yang sangat luarbiasa yang dimiliki oleh mikrokontroler keluarga besar 8051. Apabila anda ingin melakukan transaksi penyimpanan ' uang ' ( baca:data ), maka mikrokontroler telah menyediakan tiga buah Bank Besar yang dapat anda manfaatkan untuk proses simpan dan ambil setiap saat bila anda sedang memerlukan ' uang ' ( baca:data ) tersebut. Ketiga BANK tersebut berdiri dengan nama-nama sebagai berikut: BANK 0, BANK 1, BANK 2, dan BANK 3, bukankah terlalu sederhana nama-nama bank ini ?. Setiap bank hanya mampu mengeluarkan nama rekening sebanyak 8 buah: R0, R1, R2, R3, R4, R5, R6, dan R7. Sehingga jumlah rekening yang ada pada BANK MIKROKONTOLER adalah sejumlah 4 x 8 = 32 Rekening ( baca: alamat ). Sebelum anda menjadi nasabah BANK dan bagaimanakah proses penyimpanan atau pengambilan data, anda harus membaca terlebih dahulu peraturan-peraturan pada tabel 1.9.1 dan 1.9.2
Yang lebih menakjubkan lagi pada mikrokontroler juga dilengkapi dengan memori yang dapat diakses per bit, yaitu pada alamat 020 h s/d 02F h. Yang dimaksud adalah anda dapat set atau clear ( mengirim logika '0' atau '1' per bit dari sejumlah 8 bit.
Contoh: SETB 20.3; maka kita menyimpan data logika '1' pada lokasi memori 20h.3
CLR 23.7; maka anda telah menyimpan data logika '0' pada lokasi memori 23h.7
Masih banyak lagi hal-hal menggembirakan yang dapat anda peroleh pada memori mikrokontroler keluarga besar 8051, yaitu lokasi RAM 30h s/d 70h, anda dapat foya-foya dengan lokasi tersebut dan dapat anda gunakan untuk keperluan apapun ( asalkan untuk tujuan yang baik )
Perkecualian pada alamat 80h dan seterusnya, anda tidak dapat memanfaatkannya karena lokasi tersebut sudah ditempati oleh register-register khusus ( Special Function Register ), sangat berbahaya sekali apabila anda menggunakannya !!!!.
Program Status Word
PSW atau Program Status Word berisi bit-bit status yang berkaitan dengan kondisi atau keadaan CPU mikrokontroler pada saat tersebut. PSW berada dalam lokasi ruang SFR ( perhatikan pada gambar 1.9, dengan lokasi alamat D0h ). Pada PSW ini kita dapat memantau beberapa status yang meliputi: carry bit, auxiliary carry ( untuk operasi BCD ), dua bit pemilih bank register, flag overflow, sebuah bit paritas dan dua flag status yang bisa didifinisikan sendiri. Bit carry dapat juga anda guakan pada keperluan operasi aritmatika, juga bisa digunakan sebagai universal akumulator untuk beberapa operasi boolean.
Tabel. 1.9.1 Register PSW ( Program Status Word )
PSW.7 | PSW.6 | PSW.5 | PSW.4 | PSW.3 | PSW.2 | PSW.1 | PSW.0 |
CY | AC | FO | RS1 | RS0 | OV | - | P |
Keterangan:
CY | Carry Flag |
AC | Auxiliry Flag |
FO | General Purpose |
RS1 | Register Bank Select 1 |
RS0 | Register Bank Select 0 |
OV | Over Flow |
- | General Purpose |
P | Parity |
Bit RS0 dan RS1 dapat digunakan untuk memilih satu dari empat bank register sebagaimana ditunjukkan pada tabel 19.2. Bit paritas dapat digunakan untuk mengetahuai jumlah logika '1' pada akumulator: P=1 bila pada akumulator mempunyai logika '1' yang jumlahnya ganjil, dan P=0 jika akumulator mempunyai logika '1' yang jumlahnya genap. Dua bit yang lain PSW1 dan PSW5 dapat digunakan untuk berbagai macam tujuan.
Tabel 1.9.2. Alamat rekening bank
RS1 | RS0 | Bank | Address RAM |
0 | 0 | 0 | 00 h - 07 h |
0 | 1 | 1 | 08 h - 0F h |
1 | 0 | 2 | 10 h - 17 h |
1 | 1 | 3 | 18 h - 1F h |
No comments:
Post a Comment