Kamis, 17 Juni 2010

Jenis - Jenis Pengarah Program Yang Digunakan Dalam Pemrograman PIC16F877A

1. Pengarah Kendali

a. #DEFINE

Sintaks:

#define []

Penjelasan:
Pengarah ini menukar suatu bagian teks dengan yang lain. Setiap kali muncul di dalam program, ia akan di ganti dengan .

Contoh:

#define led_on 1

#define led_off 0

#INCLUDE

Sintaks:

#include

#include “nama_file”

Penjelasan:

Pengarah ini digunakan untuk memasukkan file program lain ke dalam program yang bersangkutan. Misalnya, file p16f877A.inc merupakan file header untuk PIC16F877A yag memuat deklarasi register maupun bit-bit di dalam arsitektur PIC16F877A. dengan memasukkan file tersebut ke dalam program, kita dapat langsung menggunakan variabel-variabel yang dinyatakan di dalamnya tanpa harus mendeklarasikan kembali.

Contoh:

#include

#include “subprog.asm”

#CONSTAN

Sintaks:

Constant =

Penjelasan:

Apabila nama konstanta muncul dalam program, akan diganti dengan nilainya.

Contoh:

constant Max=100

constant panjang=45


#VARIABEL

Sintaks:

variable =

Penjelasan:

Apabila nama varabel muncul dalam program, akan digantikan dengan nilai sementara dari variabel tersebut. Hal ini tentu saja berbeda dengan CONSTAN. Nilai konstanta selalu tetap, namun nilai variabel dapat berubah oleh adanya proses yang terjadi.

Contoh:

variable waktu = 10

variable level = 6


#SET

Sintaks:

set

Penjelasan:

Pengarah ini digunakan untuk mendefinisikan variabel assembler. SET mirip dengan EQU, tetapi dengan pengarah SET, nama variabel didefinisikan ulang pada definisi berikutnya.

Contoh:

waktu set 10

level set 6

#EQU

Sintaks:

equ

Penjelasan:

Pengarah EQU digunakan untuk mendefinisikan konstanta, variabel assembler.

Contoh:

lima equ 5

akhir equ 8

#ORG

Sintaks:

Penjelasan:

Mendefinisikan alamat pada mikrokontroler yang akan digunakan untuk menyimpan suatu program. Pengarah ini termasuk sering digunakan. Dengan bantuan pengarah ini, kita dapat menentukan di mana suatu bagian program akan di mulai dalam memori program.

Contoh:

start org 0x00

org 0x04

#END

Sintaks:

end

Penjelasan:

Pengarah ini digunakan pada akhir suatu program. Dengan pengarah ini, translator akan mengetahui bahwa sudah tidak ada instruksi lagi.

Contoh:

movlw FF

movwf PORTB

end

2. Pengarah Data

#CBBLOCK

Sintaks:

cblock []

endc

Penjelasan:

Pengarah ini mendefinisikan suatu blok konstanta berlabel. Nilai pada adalah nilai awal. Jika tidak diberikan, akan di anggap nol.

Contoh:

cblock 0x02

pertama, kedua, ketiga

endc

;pertama=0x02, kedua=0x03, ketiga=0x04

#DB

Sintaks:

[

Penjelasan:

Pengarah ini untuk mendefinisikan data satu byte dalam memori program

Contoh:

db ‘t’, 0x08, ‘e’, ‘s’, 0x12

#DE

Sintaks:

[ de [,,…,]

Penjelasan:

Pengarah ini untuk mendefinisikan byte-byte pada memori program

Contoh:

org H’2100’

de “Version 1.0”,0

#DT

Sintaks:

[

Penjelasan:

Pengarah ini untuk mendefinisikan tabel data dengan runtun RETLW.

Contoh:

dt “pesan”, 0

db perama, kedua, ketiga

3. Instruksi Bersyarat


IF

Sintaks:

if

Penjelasan:

Pengarah untuk percabangan program bersyarat. Jika syarat dipenuhi, instruksi berikutnya akan dijalankan, jika tidak, bagian setelah pengarah ELSE atau ENDIF akan di eksekusi.

Contoh:

if level=200

goto ISI

else

goto AMBIL

endif

ELSE

Sintaks:

else

Penjelasan:

Bagian progam sesudah ELSE akan di eksekusi jika syarat IF tidak dipenuhi.

Contoh:

if time <>

goto TAMBAH

else

goto KURANGI

endif

ENDIF

Sintaks:

endif

Penjelasan:

Pengarah untuk mengakhiri suatu blok besyarat IF.

Contoh:

if level=20

goto MASUK

else

goto KELUAR

endif

WHILE

Sintaks:

while

Penjelasan:

Bagian program antara WHILE dan ENDW akan di eksekusi jika syarat pernyataan dipenuhi. Jika syarat sudah tidak dipenuhi, akan dilanjutkan ke baris setelah ENDW

Contoh:

while i <>

i = i +1

ENDW

Sintaks:

endw

Penjelasan:

Digunakan untuk mengakhiri blok WHILE, sehingga translator mengetahui bahwa tidak ada lagi blok bersyarat.

Contoh:

while i <>

i = i +1

endw


IFDEF

Sintaks:

ifdef

Penjelasan:

Pengarah ini untuk mengeksekusi bagian sesudah label yang didefinisikan (dengan instruksi #define) hingga menemui ELSE atau ENDIF.

Contoh:

#define tes

ifdef tes

…. ;instruksi yang dieksekusi

endif


IFNDEF

Sintaks:

ifndef

Penjelasan:

Bagian program sesudah pengarah ini akan dieksekusi jika label sudah tidak didefinisikan lagi (dengan perintah #UNDEFINE) hingga mencapai ELSE atau ENDIF.

Contoh:

#define tes

…..

ifndef tes

…. ;instruksi yang di eksekusi

endif

4. Pengarah Konfigurasi

CONFIG

Sintaks:

_ _ CONFIG

Atau

_ _ CONFIG ,

Penjelasan:

Pengarah ini menetapkan konfigurasi bit, meliputi tipe osilator, WDT, power-up, timer, code protect.

Contoh:

__CONFIG_XT_OSC_WDT_OFF&_PWRTE_ON&_CP_OFF

PROCESSOR

Sintaks:

processor

Penjelasan:

Pengarah ini untuk mejelaskan ke translator mengenai jenis mikrokontroler yang digunakan.

Contoh:

processor pic16f877A

1 komentar:

  1. mau tanya nih
    saya pengen buat pabx mini menggunakan mikrokontroler MSP430.
    tau gimana caranya gak??
    makasi
    hehehe

    BalasHapus