AT89S51 memiliki kemampuan memori program internal 4 Kbyte dan dapat dikembangkan
dengan memori program ekternal sampai 64 Kbyte. Pembacaan memori ekternal menggunakan
sinyal PSEN* (Program Store Enable). jika pin EA* = 1 maka memori program internal
sebanyak 4 Kbyte terpakai dengan alamat 0000h 0FFFh. jika EA* = 0 maka memori
program
internal terabaikan. AT89S51 sepenuhnya menggunakan memori program
eksternal mulai dari alamat 0000h FFFFh.
AT89S51 dapat mengalamati 64 K lokasi memori data di luar chip. Memori data internal pada
AT89S51 ada 128 byte dan dapat dikembangkan
diluar sampai 64 Kbyte.
Pengembangan memori
data ekternal menggunakan bit kendali RD* dan
WR*.
6. Gambarkan diagram blok antar muka antara ICAT89C51 dengan memory eksternal
Jawab:
Do
Rotate A , Right , 1
P2 = A
waitms 500
Loop Until A = &HFE
Perintah diatas jika dikerjakan oleh mikrokontroler maka isi varibel A akan diputar bit-bitnya kekanan
satu bit, kemudian isi varibel A akan dikirim ke P2. Proses pemutaran isi varibel A akan terus dilakukan
sampai varibel A = FE hexsa.
Do
Do
Rotate A , Left , 1
P2 = A
waitms 500
Loop Until A = &H7F
Do
Rotate A , Right , 1
P2 = A
waitms 500
Loop Until A = &HFE
Loop
Perintah diatas jika dikerjakan oleh mikrokontroler maka mikrokontroler akan mengulang kembali isi
varibel A akan diputar bit-bitnya kekanan sampai varibel A = 7F hexsa dan kekiri sampai varibel A = FE
hexsa terus menerus
8. Delapan buah led dikontrol nyalanya oleh port 1 mikrokontroler AT89S51. Jika bit-bit pada port 1 low
maka lampu nyala. Buatlah program untuk menggeser nyala led kekiri dan kekanan tiap detik!