Pada prinsipnya program pada mikrokontroler dijalankan bertahap, jadi pada program itu sendiri terdapat beberapa set instruksi dan tiap instruksi itu dijalankan
secara bertahap atau berurutan.
Beberapa fasilitas yang dimiliki oleh mikrokontroler AT89S51 adalah sebagai berikut :
1. Sebuah Central Processing Unit 8 bit
2. Osilator : internal dan rangkaian pewaktu
3. RAM internal 128 byte
4. Flash
memori 4 Kbyte 5.
Lima buah jalur interupsi dua buah interupsi eksternal dan tiga buah interupsi internal
6. Empat buah programable port IO yang masing-masing terdiri dari delapan
buah jalur IO 7.
Sebuah port serial dengan kontrol serial full duplex UART 8.
Kemampuan untuk melaksanakan operasi aritmatika dan operasi logika 9.
Kecepatan dalam melaksanakan instruksi per siklus 1 mikrodetik pada frekuensi 12 MHz.
2.3.1 Arsitektur Mikrokontroler AT89S51
Setiap mikrokontroler memiliki arsitekturr yang berbeda. Tetapi meskipun demikian memilikikeseragaman dalam pokok – pokok kerjanya. Pada dasarnya arsitektur
mikrokontroler dapat dilihat pada pengalamatan kode dan pengalamatan datanya, yaitu tipe yang menggabungkan pengalamatan kode dengan pengalamatan data, serta
Alex P. Pasaribu : Aplikasi Mikrokontroler AT89S51 Untuk Sistem Pengaturan Bukatutup Atap Dan Pemanas Ruangan, 2009. USU Repository © 2009
tipe yang memisahkan alamat kode dengan alamat datanya. Keluarga MCS-51 termasuk dalam kategori yang memisahkan alamat kode maupun datanya.
Ada beberapa mode pengalamatan pada mikrokontroler : 1.
Pengalamatan Langsung Penglamatan langsung dilakukan dengan memberikan nilai kesuatu register
secara langsung dengan menggunakan tanda ””. Contoh :
Mov A,20h : isi akkumulator dengan bilangan 20 h
Mov DPTR,25h : isi register DPTR dengan bilangan 25 h
Mov R1,10h : isi register R1 dengan bilangan 10 h
2. Pengalamatan tak langsung
Pengalamatan tak langsung dilakukan untuk menunjuk ke sebuah register yang berisi alamat memori yang digunakan dalam operasi dengan menggunakan
tanda ””. AT89S51 mempunyai sebuah register 16 bit DPTR yang dapat digunakan untuk melakukan pengalamatan tidak langsung.
Contoh : DEC R1
: kurangi isi RAM yang alamatnya ditunjukkan oleh register R1
3. Pengalamatan kode
Pengalamatan kode terjadi saat operand berfungsi sebagai alamat dari intruksi JUMP dan CALL
Contoh : ACALL Tunda
- Tunda
Mov
A,20H Loop:
DJNZ A,Loop
RET
Alex P. Pasaribu : Aplikasi Mikrokontroler AT89S51 Untuk Sistem Pengaturan Bukatutup Atap Dan Pemanas Ruangan, 2009. USU Repository © 2009
4. Pengalamatan Bit
Pengalamatan bit merupakan penunjukan alamat lokasi bit, baik yang berada didalam RAM internal atau perangkat keras. Simbol . digunakan dalam
operasi ini. Contoh :
SETB P1.5 : set bit port 1.5 aktif
SETB TR1 : set bit TR1 timer 1 aktif
Tidak seperti sistem komputer, yang mampu manangani berbagai macam program aplikasi misalnya pengolah data, pengolah angka, dan lain sebagainya,
mikrokontroler hanya bisa digunakan untuk satu aplikasi tertentu saja. Perbedaan lainnya terletak pada perbandingan RAM-nya dan ROM. Pada sistem komputer
perbandingan RAM dan ROM-nya besar, artinya program – program pengguna disimpan dalam ruang RAM yang relatif besar, sedangkan rutin – rutin antar muka
prangkat keras disimpan dalam ruang ROM yang kecil. Sedangkan pada mikrokontroler, perbandingan ROM dan RAM-nya yang besar artinya program
kontrol disimpan dalam ROM bisa masked Rom atau Flash PEROM yang ukurannya relatif besar, sedangkan RAM digunakan sebagai tempat penyimpanan
sementara, termasuk register – register yang digunakan pada mikrokontroler yang bersangkutan.
2.3.2 Kontruksi AT89S51