modul 5c. pemrograman mikrokontroler at89xxx

Click here to load reader

Post on 04-Feb-2016

24 views

Category:

Documents

0 download

Embed Size (px)

DESCRIPTION

Mikrokontroler

TRANSCRIPT

  • PEMROGRAMAN MIKROKONTROLER AT89XXXOleh :Drs. Edidas, MT

  • KEBUTUHAN ALAT/BAHANKomputer yang punya port serial atau parallelTeks editor, untuk mengetik program.Software Compiler, ASM51, HB200 dll untuk mengkompilasi source program menjadi program objek yang bereksistensi HEX.Rangkaian Downloder, untuk menghubungkan Rangkain mikrokontroler ke KomputerDownload Software, untuk men-copy program HEX ke dalam Memory Mikrokontroler.Papan rangkaian aplikasi, untuk menancapkan IC mikrokontroler dimana programnya akan dipergunakan.

  • BAHASA RAKITAN MIKROKONTROLER AT89XXXORG : Untuk menyatakan alamat dimana program mulai ditulis. Mis. Org 0H, org 2000H dll.Label: Adalah alamat yang diberi nama tertentu. Guna label adalah sebagai tempat tujuan alamat program lompatan. Label harus diberi nama dengan susunan karakter yang bukan merupakan kata baku lalu diikuti dengan : (titik dua) Mis. Ulang : mov R0,#0ffh..sjmp ulangMnemonic: adalah kode operasi yang yang ditulis dalam kata baku (kata yang ada padanan binernya) yang dimengerti oleh software Compiler. Misalnya : Mov R0, Acall, sjmp setb, clear dll.Operand: adalah data atau alamat yang mengikuti sebuah menemonic. Mis. Mov R0,#0ffh. R0 adalah opernad 1 sedangkan #0ffh adalah operand 2. Ingat Tidak seluruh mnemonic membutuhkan operand 2 buah dan bahkab ada mnemonic yang tidak membutuhkan opernad satupun

  • BAHASA RAKITAN MIKROKONTROLER AT89XXXKomentar : adalah keterangan yang dituliskan bersama sintag program tetapi TIDAK akan terbaca oleh kompiler. Gunanya hanya untuk memberi penjelasan kepada orang yang membaca sintag-sintag program. Penulisan komentar harus diawali dengan ; (titik koma) pada setiap baris komentar itu.Mis. Mov P0,#0ffh ; Mengirim data FF ke Port P0

  • Instruksi Dalam Bahasa Rakitan Mikrokontroler

    Instruksi : Adalah kata baku yang berguna untuk memerintahkan mikrokonroler mengerjakan suatu pekerjaanInstruksi mempunyai padanan kata dengan bilangan biner yang disandi.Sandi bilangan biner harus dikenalin oleh software Compiler-nya.Jumlah Instruksi seluruhnya 255 buah

  • Instruksi Dalam Bahasa Rakitan Mikrokontroler

    Mov : Perintah untuk menyalin data dari sumber ke tujuan. Mis. Mov R0,50hMovc : Perintah baca memory programMis. Movc A,@A+DPTRMovc A,@A+R0Movx : Perintah baca memory data eketrnal. Mis. Movx A,@DPTRmovx A,@R0Movx @R0,A

  • Instruksi Dalam Bahasa Rakitan Mikrokontroler

    Setb : Perintah untuk membuat satu bit data menjadi 1. Mis. setb TR0, Setb P1.5 dll.Clr : Perintah untuk membuat satu bit data menjadi 0. Mis. Clr Tr1, Clr P0.1 dll.Push : Simpan data register yang disebutkan ke stack. Mis push APOP : ambil data di stack. Mis pop A

  • Instruksi Dalam Bahasa Rakitan Mikrokontroler (lanjutan)Djnz : Perintah untuk mengurangi isi register sebanyak 1 dan melompat ke label yang dituju jika hasil pengurangan belum kosong (nol). Mis. Djnz R1,ulangCjnz : Perintah untuk membanding isi sebuah register dengan nilai tertentu, jika tidak nol melompat ke label yang dituju. Mis. Cjnz R0,#0FDH,tombol1

  • Instruksi Dalam Bahasa Rakitan Mikrokontroler (lanjutan)Acall : Perintah untuk memanggil sub program. Mis. Acall delay, acall lampuRet : Perintah untuk menutup subprogram.End : Perintah untuk menutup program utama.

  • Instruksi Dalam Bahasa Rakitan Mikrokontroler (lanjutan)JB : Perintah untuk melompat ke label yang ditujuj jika bit yang diperiksa bernilai satu. Mis. Jb P0.0, mulaiJNB : Perintah untuk melompat ke label yang dituju jika bit yang diperiksa bernilai nol. Mis jnb P0.5, serine

  • Instruksi Dalam Bahasa Rakitan Mikrokontroler (lanjutan)Sjmp : melompat ke label yang dituju tanpa syarat. Jarak lompatan pendek.Ajmp : melompat ke label yang dituju tanpa syarat. Jarak lompatan Absolut.Ljmp : melompat ke label yang dituju tanpa syarat. Jarak lompatan Panjang.

  • Instruksi Dalam Bahasa Rakitan Mikrokontroler (lanjutan)RR : Rotate Right , putar data biner yanag ada pada register yang disebutkan ke kanan 1 bit. Mis. RR aRL : Rotate Right , putar data biner yanag ada pada register yang disebutkan ke kiri 1 bit. Mis. RLaNOP : No Operation. Tidak ada pekerjaan tetapi hanya menunggu waktu 1 cycle

  • Instruksi Dalam Bahasa Rakitan Mikrokontroler (lanjutan)INC : Inrement , tambahkan 1 pada data biner yang ada pada register yang disebutkan . Mis. INC R0, INC ADEC : DECrement , kurangkan 1 pada data biner yang ada pada register yang disebutkan . Mis. dec R0, dec AXch : adalah perintah menukarkan isi registerMis. Xch a,R0Xchd : adalah perintah menukarkan isi register hanya pada 4 bit rendah sajaMis. Xchd a,@R0

  • Instruksi Addressing Mode pada MikrokontrolerAdalah operasi penyebutan data dan pengalamatan (addressing Mode). Ada beberapa jenis pengalamat data sbb :Immediate Addressing Mode : Pengalamatan data segera, yaitu data konstanta disalin ke register yang disebutkan lebih dahulu. Mis. Mov P1,#02fhDirect Addressing Mode : Penglamatan data langsun, dimana data dari lokasi memory tertentu di salin ke register yang disebutkan lebih dahulu. Mis. Mov P0,2fh

  • Instruksi Addressing Mode pada Mikrokontroler (lanjutanIndirect Addressing Mode : Penglamatan data TIDAK langsunG, dimana data yang akan disalin lokasinya ditunjuk oleh register perantara, dengan demikian regsiter penunjuk harus diisi dulu nilainya dengan angka alamat lokasi memory tertentu. Mis.Mov R0,#0f7h Mov A,@R0

  • Instruksi Addressing Mode pada Mikrokontroler (lanjutanRegister Addressing Mode : Pengalamatan register, dimana data yang akan disalin diisikan duku ke register perantaraMis. Mov R1,#40Mov A,R1Code Addressing : Pengalamatan kode, yaitu perintah untuk memanggil subprogramMis.Acall delayajmp ulangsjmp lampuljmpajmp

  • Instruksi Dalam Bahasa Rakitan Mikrokontroler (lanjutan)Silahkan dilanjutkan Intruksi aritmatika !!!Intruksi logika !!!Selamat bekerja.

  • Instruksi Dalam Bahasa Rakitan Mikrokontroler (lanjutan)

  • Instruksi Dalam Bahasa Rakitan Mikrokontroler (lanjutan)

  • Instruksi Dalam Bahasa Rakitan Mikrokontroler (lanjutan)

View more