PageList1

  • Suspendisse neque tellus

  • SRC Angkatan 000 000

    Pertama kali kami gagal, kemudian gagal, sampai kegagalan menjadi teman kami. Modal kami hanya niat dan kerja keras !, bangkit dan terus bangkit, menciptakan inovasi tiada batas cause we are SRC !

Sunday, April 29, 2012

FLIP-FLOP(MICRO-1 COMPUTER APPLICATION)


Hmmmmmmmmmmm inie tu adalah contoh pemakaian sederhana Micro-1 Computer yaitu untuk membuat sebuah Flip-Flop. Dua buah LED akan menyala bergantian satu sama lain. LED tersebut dihubungkan pada RA0 dan RA1.


Prinsip kerja Flip-Flop ini adalah sebgai berikut. Pada saat pertama kali dinyalakan, satu LED akan dinyalakan ( dengan memberi logika 1 ) pada port yang bersesuaian. Setelah itu akan dilaksanakan perintah Delay agar LED menyala dalam kurun waktu tertentu. LED tersebut kemudian dimatikan ( dengan memberi logika 0 ) dan LED kedua akan dinyalakan. Proses ini akan diulang-ulang sehingga kedua LED akan menyala bergantian. Program secara lengkap adalah sbb.
;Program untuk membuat 2 led menyala bergantian ( flip-Flop )
;LED terhubung ke RA0 dan RA1
;Nama file : flipflop.asm
;Programmer : Micro Solutions
;===================================
processor 16f84
status equ 0x03
porta equ 0x05
trisa equ 0x85
rp0 equ 5
;---------------------------------------------------------
org 0x00
mulai
bsf status,rp0 ; ke halaman 1 ( set bit rp0 )
clrf trisa ; port a sebagai keluaran
bcf status,rp0 ; kembali ke halaman 0 ( clear rp0 )
flipflop
bsf porta,0 ; nyalakan led pada RA0
call delay ; tunda sesaat
bcf porta,0 ; matikan led pada RA0
bsf porta,1 ; nyalakan led pada RA1
call delay ; tunda sesaat
bcf porta,1 ; matikan led pada RA1
call delay ; tunda sesaat
goto flipflop ; buat loop tertutup
;------ rutin tunda ----------------------------------------
delay
;-----------------------------------------------------------
movlw d'255' ; isi W dengan 255 desimal
movwf 0x2e ; simpan isi W ( 255D ) ke RAM alamat 2EH
loop1
movlw d'255' ; isi W dengan 255 desimal
movwf 0x2d ; simpan isi W ke RAM alamat 2DH
loop2
decfsz 0x2d ; kurangi satu ( -1 ) isi RAM pada alamat 2DH
goto loop2 ; jika belum 0 pergi ke loop2
decfsz 0x2e ; kurangi satu ( -1 ) isi RAM pada alamat 2EH
goto loop1 ; jika belum 0 pergi ke loop1
return ; jika sudah 0 keluar dari subrutin
;----------------------------------------------------------
end ; end of program
;==== Hasil ==================================================
; Lampu LED pada RA0 dan RA1 menyala bergantian ( flip-flop )
;=============================================================



KETERANGAN... KALAU ada ; itu cuma comment supaya program mudah dibaca XDD..... tapi jangan digatekin kalau mbuatnya... malah mumet

0 komentar:

Post a Comment