21.08.2013 Views

Mikro Bilgisayarlı Sistem Tasarımı - Fırat Üniversitesi

Mikro Bilgisayarlı Sistem Tasarımı - Fırat Üniversitesi

Mikro Bilgisayarlı Sistem Tasarımı - Fırat Üniversitesi

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

LIST P16F877<br />

INCLUDE “P16F877.INC”<br />

SAYAC1 EQU h „20‟ ;SAYAC1 „e adres atandı<br />

SAYAC2 EQU h „21‟ ;SAYAC2 „e adres atandı<br />

CLRF PORTB ; PortB ye bağlı ledleri söndür<br />

BSF STATUS,5 ; Bank1‟e geç<br />

CLRF TRISB ; PortB‟nin uçlarını çıkış yap<br />

MOVLW h „FF‟ ; W kayıtçısına h „FF‟ yükle<br />

MOVWF TRISA ; Porta‟nın uçlarını giriş yap<br />

BCF STATUS,5 ;Bank0‟a geç<br />

BASLA<br />

MOVLW h „0A‟ ; W kayıtçısına h „0A‟ sayısını yükle<br />

MOVWF SAYAC1 ; W içeriğini SAYAC1‟e gönder<br />

TEST<br />

BTFSC PORTA,1 ; PortA‟nın 1. biti 0 mı?<br />

GOTO TEST ; değilsei TEST isimli etikete geri dön<br />

MOVLW h „FF‟ ; Evet ise, W‟nın içeriğini h „FF‟ yükle<br />

MOVWF SAYAC2 ; W içeriğini SAYAC2 ye ata.<br />

GECİKME<br />

NOP<br />

NOP ; gecikme işlemi<br />

NOP<br />

DECFSZ SAYAC2,F ; SAYAC2‟nin içeriğini 0 olana kadar azalt<br />

GOTO GECIKME<br />

AZALT<br />

DECFSZ SAYAC1,F ;<br />

GOTO YAK ;SAYAC1=0 değilse,YAK isimli etikete geri dön<br />

GOTO BASLA ; SAYAC1=0 ise, BASLA isimli etikete geri dön<br />

YAK<br />

MOVF SAYAC1,W ; SAYAC1‟in içeriğini W‟ya aktar.<br />

MOVWF PORTB ; W‟ın içeriğini PortB‟ye aktar<br />

GOTO TEST ; TEST isimli etikete geri dön<br />

END<br />

Program yazarken bazı işlerin belirli sayılarda tekrarlanması istenebilir. Bu durumda da bir<br />

kayıtçı sayaç olarak kullanılır ve sayacın değeri her defasında 1 arttırılır. Arttırma işlemi INCF<br />

komutu ile yapılır. Sayaç belirlene değer ulaştığı zaman program akışı başka komuta geçer.<br />

Hayır<br />

SAYAC=h '00'<br />

SAYAC=SAYAC+1<br />

W=h'07'<br />

W=SAYAC-W<br />

STATUS 2.biti<br />

1 mi?<br />

SON<br />

Evet<br />

SUBWF<br />

TEKRAR<br />

DONGU<br />

CLRF SAYAC<br />

INCF SAYAC,F<br />

MOVLW h „07‟<br />

SUBWF SAYAC,W<br />

BTFSS STATUS,2<br />

GOTO TEKRAR<br />

GOTO DONGU<br />

END<br />

İbrahim Türkoğlu, <strong>Fırat</strong> <strong>Üniversitesi</strong> - Elektronik ve Bilgisayar Eğitimi Bölümü, Elazığ- 2010. 111

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!