Register Fungsi Khusus Special Function Register

CJNE R1,0CCh,LABEL1 ;bandingkan indirect R1 dengan ;CCh,jika tak sama lompat ke ;LABEL1 LABEL1: ----- ----- Instruksi DJNZ direct, rel, adalah : Decrement Jump if Not Zero, artinya kurangi satu dahulu data di direct, kemudian bila isinya nol, maka lomatlah ke rel. Biasanya instruksi ini digunakan untuk pencacah. Berikut contoh penggunaan instruksi tersebut ; START : Mov R0,5 ;isi R0 dengan 5 Mov R1,40h ;isi R1 dengan 40h LOOP: Mov R1,0AAh ;isi memori di R1 dengan AAh Inc R1 ;R1=R1+1 DJNZ R0,LOOP ;R0=R0-1, jika belum 0 kembali ke LOOP Sjmp :usai Perintah diatas adalah mengisi memori lokasi 40h,41h,42h,43h dan 44h dengan data AAh, disini R0 digunakan sebagai pencacah sebanyak 5 kali, sedangkan R1 digunakan sebagai pointer memori dengan alamat awal 40h. Perintah SJMP memerintahkan mikrokontroller untuk melompat ke tempat yang sama, artinya looping ditempat. Instruksi NOP adalah tidak memerintahkan MCU mengerjakan apa-apa, proses ini hanya menunda kerja mikrokontroller, karena satu instruksi NOP memakan 1 mikrodetik, sehingga beberapa perintah NOP bisa digunakan untuk proses penundaan atau delay.

2.4.3 Register Fungsi Khusus Special Function Register

Tidak semua alamat pada SFR digunakan, alamat-alamat yang tidak digunakan diimplementasikan pada chip. Jika dilakukan usaha pembacaan pada alamat-alamat yang tidak terpakai tersebut akan menghasilkan data acak dan penulisannya tidak menimbulkan efek sama sekali. Pengguna perangkat lunak sebaiknya jangan menuliskan ‘1’ pada lokasi-lokasi ‘tak bertuan’ tersebut, karena dapat digunakan untuk mikrokontroler generasi selanjutnya. Dengan demikian, nilai-nilai reset atau non-aktif dari bit-bit baru ini akan selalu ‘0’ dan nilai aktifnya adalah ‘1’. Berikut akan dijelaskan secara singkat SFR- SFR beserta fungsinya: • Akumulator Acc atau akumulator yang menempati lokasi E0h digunakan sebagai register untuk penyimpanan data sementara, dalam program, instruksi mengacunya sebagai register A. • Register B Register B lokasi F0h digunakan selama operasi perkalian dan pembagian, untuk instruksi lain dapat diperlakukan sebagai register scratch pad “papan coret-coret” lainnya. • Program Status Word PSW Register PSW lokasi D0h mengandung informasi status program. • Stack Pointer Register SP atau Stack Pointer lokasi 81h merupakan register dengan panjang 8- bit, digunakan dalam proses simpan menggunakan instruksi PUSH dan CALL. Walau Stack bisa menempati lokasi dimana saja dalam RAM, register SP akan selalu diinisialisasi ke 07h setelah adanya reset, hal ini menyebabkan stack berawal di lokasi 08h. • Data Pointer Register Data Pointer atau DPTR mengandung DPTR untuk byte tinggi DPH dan byte rendah DPL yang masing-masing berada dilokasi 83h dan 82h, bersama-sama membentuk register yang mampu menyimpan alamat 16-bit. Dapat dimanipulasi sebagai register 16-bit atau ditulis darike port, untuk masing-masing Port 0,Port 1, Port2 dan Port 3. • Serial Data Buffer SBUF atau Serial Data Buffer lokasi 99h sebenarnya terdiri dari dua register yang terpisah, yaitu register penyangga pengirim transmit buffer dan penyangga penerima receive buffer. Pada saat data disalin ke SBUF, maka data sesungguhnya dikirim ke penyangga pengirim dan sekaligus mengawali transmisi data serial. Sedangkan pada saat data disalin dari SBUF, maka sebenarnya data tersebut berasal dari penyangga penerima. • Time Register Pasangan register TH0, TL0 dilokasi 8Ch dan 8Ah,TH1, TL1 dilokasi 8Dh dan 8Bh serta TH2, TL2 dilokasi CDh dan CCH merupakan register-register pencacah 16-bit untuk masing-masing Timer 0, Timer 1 dan Timer 2. • Capture Register Pasangan register RCAP2H, RCAP21 yang menempati lokasi CBh dan CAh merupakan register capture untuk mode Timer 2 capture. Pada mode ini, sebagai tanggapan terjadinya suatu transisi sinyal di kaki pin T2EX pada AT89C5255, TH2 dan TL2 disalin masing-masing ke RCAP2H dan RCAP2L. Timer 2 juga memiliki mode isi-ulang-otomatis 16-bit dan RCAP2H serta RCAP2L digunakan untuk menyimpan nilai isi-ulang tersebut. • Kontrol Register Register-register IP, IE, TMOD, TCON, T2CON, T2MOD, SCON dan PCON berisi bit-bit kontrol dan status untuk sistem interupsi, pencacahpewaktu dan port serial.

2.5 INTERFACING