Pemrograman Running LED pada PIC16F877A
Berikut akan diberikan contoh program untuk membuat sistem sederhana untuk menjalankan RUNNING LED. Aplikasi ini merupakan sebuah runtunan menyalakan dan mematikan sebuah LED yang teratur sehingga tampak seperti RUNNING LED. Pada aplikasi ini PORT D merupakan sebuah PORT outputan yang tidak berpengaruh pada suatu inputan apapun dan akan diumpankan dengan sejumlah LED untuk melihat tampilan urutan nyalanya. Bentuk schema rangkaiannya dapat dilihat pada gambar berikut dibawah ini.

Listing programnya dapat dilihat pada beberapa baris dibawah ini.
Setelah program diatas didownload kedalam PIC16F877A maka langkah selanjutnya anda bisa merangkai sebuah circuit rangkaian seperti pada gambar aplikasi diatas. Dan anda akan bisa melihat nyala setiap LED yang anda hubungkan dengan PORTD sesuai dengan yang anda buat pada program assemblernya.
Berikut akan diberikan contoh program untuk membuat sistem sederhana untuk menjalankan RUNNING LED. Aplikasi ini merupakan sebuah runtunan menyalakan dan mematikan sebuah LED yang teratur sehingga tampak seperti RUNNING LED. Pada aplikasi ini PORT D merupakan sebuah PORT outputan yang tidak berpengaruh pada suatu inputan apapun dan akan diumpankan dengan sejumlah LED untuk melihat tampilan urutan nyalanya. Bentuk schema rangkaiannya dapat dilihat pada gambar berikut dibawah ini.
Listing programnya dapat dilihat pada beberapa baris dibawah ini.
;==========================================================
;PROGRAM LED RUNNING
;==========================================================
list p=16f877A ; List untuk mejelaskan processor
#include p16f877A.inc> ; Speksifikasi variable pada processor
__CONFIG _CP_OFF & _WDT_OFF & _BODEN_OFF & _PWRTE_ON & _HS_OSC & _WRT_OFF & _LVP_OFF & _CPD_OFF
TRISD EQU 0X0088 ; Pengatur Port D
PORTD EQU 0X0008 ; Port D
HITUNG0 EQU 0X0020 ; Variabel Hiung0
HITUNG1 EQU 0X0021 ; Variabel Hiung1
MAJU EQU 0X0022 ; Variabel Maju
MUNDUR EQU 0X0023 ;Variabel Mundur
MULAI
BSF STATUS,RP0 ; Bank 1
MOVLW B'00000000' ;Memindahkan Literal ke W
MOVWF TRISD ;Menset Port D sebagai Output
BCF STATUS,RP0 ; Bank 0
CLRF PORTD ;Clear Port D
LOOP MOVLW D'22' ; Memindahkan nilai D’22’ ke W
MOVWF MUNDUR ; Mengisi Mundur dengan Nilai W
MOVLW D'0' ; Memindahkan nilai D’0’ ke W
MOVWF MAJU ; Mengisi Majudengan Nilai W
LOOP1 CALL TABLE ;Memanggil Prosedur Table
MOVWF PORTD ; Mengeluarkan Outputan di PORT D
CALL DELAY ;Memanggil Prosedur Delay
INCF MAJU ;Meng-Increment Variable Maju
MOVF MAJU,0 ;Memindahkan Nilai Maju ke W
DECFSZ MUNDUR,1 ;Meng-Decrementkan Nilai Mundur
GOTO LOOP1 ;Lompat ke Prosedur Loop 1
GOTO LOOP ;Lompat ke Prosedur Loop
DELAY
MOVLW d'255'
MOVWF HITUNG0
LOOP3 MOVLW d'255' ;Merupakan prosedur Delay
MOVWF HITUNG1
LOOP4 DECFSZ HITUNG1,1
GOTO LOOP4
DECFSZ HITUNG0,1
GOTO LOOP3
RETURN
TABLE
ADDWF PCL,1
RETLW B'10000000'
RETLW B'01000000'
RETLW B'00100000'
RETLW B'00010000'
RETLW B'00001000'
RETLW B'00000100'
RETLW B'00000010'
RETLW B'00000001'
RETLW B'00000010'
RETLW B'00000100'
RETLW B'00001000'
RETLW B'00010000'
RETLW B'00100000'
RETLW B'01000000'
RETLW B'10000000'
RETLW B'00011000'
RETLW B'00100100'
RETLW B'01000010'
RETLW B'10000001'
RETLW B'01000010'
RETLW B'00100100'
RETLW B'00011000'
END ; Akhir dari sebuah Program
Program diatas harus anda ketik dalam MPLAB editor. Pertama anda buka program MPLAB, setelah muncul, kemudian anda pilih menu FILE, kemudian pilih sub menu NEW, selanjutnya akan tampil lembaran putih kosong tempat anda menuliskan code text program assembler diatas. Setelah selesai kemudian anda simpan dengan nama tertentu sesuai keinginan anda, misalnya "LED_RUNNING" , secara otomatis file akan tersimpan dengan ekstension .asm .
Langkah selanjutnya setelah anda melakukan proses penyimpanan yaitu melakukan proses kompilasi. Untuk melakukan proses kompilasi ini anda bisa memulainya dengan cara klik pada menu PROJECT kemudian pilih QUICKBUILD , apabila program yang kita buat diatas tidak terdapat error maka hasil kompilasi akan dinyatakan Sukses, dan apabila terdapat error maka hasil kompilasi akan menyatakan ada error yang harus anda betulkan terlebih dahulu.
Sebelum melakukan proses kompilasi ada baiknya jika anda memilih dahulu tipe mikrokontroller yang anda gunakan, dengan cara klik pada menu CONFIGURE kemudian pilih DEVICE dan selanjutnya anda pilih tipe mikrokontroller yang anda gunakan misalnya PIC16F877A.
Apabila hasil kompilasi tidak ada error maka akan dihasilkan sebuah file yang berekstensi .HEX yang nantinya anda masukkan/download (Burning) pada mikrokontroler PIC16F877A. Cara mendownload file .HEX ini kedalam IC anda bisa gunakan program winpic800 seperti yang telah dibahas pada bagian sebelumnya,Setelah program diatas didownload kedalam PIC16F877A maka langkah selanjutnya anda bisa merangkai sebuah circuit rangkaian seperti pada gambar aplikasi diatas. Dan anda akan bisa melihat nyala setiap LED yang anda hubungkan dengan PORTD sesuai dengan yang anda buat pada program assemblernya.

0 Comments to "ProGram RunninG LED"