12.01.2015 Views

pic16f877-ev-icin-hirsiz-alarmi - 320Volt

pic16f877-ev-icin-hirsiz-alarmi - 320Volt

pic16f877-ev-icin-hirsiz-alarmi - 320Volt

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.

C. Selçuk KAHYALAR, Bitirme Öd<strong>ev</strong>i, Niğde Üniversitesi, Mühendislik-Mimarlık<br />

Fakültesi, Elektrik-Elektronik Mühendisliği Bölümü, 2001-2002 Eğitim- Öğretim Yılı<br />

MOVLW H’FF’<br />

MOVWF SAYI2<br />

DONGU2<br />

DECFSZ SAYI2,F<br />

GOTO DONGU2<br />

DECFSZ SAYI1,F<br />

GOTO DONGU1<br />

DECFSZ SAYI<br />

GOTO DONGU<br />

RETURN<br />

Oysa bunu PIC BASIC PRO programlama dilinde PAUSE 49000 şeklinde tek satırda<br />

gerçekleştirmek mümkün olmaktadır. Görüldüğü üzere PIC BASIC PRO ile program<br />

yazmak hem çok rahat hem de çok basit olmaktadır.<br />

2.2.7 Döngü düzenlemek ( For…Next )<br />

Bazı işlemlerin önceden belirlenen sayıda tekrarlanması gerekmektedir. PIC BASIC PRO<br />

programlama dilinde bu işi ‘FOR…NEXT’ döngüsü bir sayaç gibi çalışarak<br />

gerçekleştirmektedir. ‘FOR’ komutundan sonra bir değişkene ilk değer atanıp, bu<br />

değişkenin sayacağı son değer de belirtilmelidir. Ayrıca değişkenin kaçar kaçar artacağı<br />

‘STEP’ komutuyla kontrol edilebilmektedir. Son olarak ‘NEXT’ döngüsüne gelen<br />

program eğer son değere ulaşılmamış ise döngüsüne d<strong>ev</strong>am edecektir. Örneğin:<br />

FOR K=2 to 10 STEP 2<br />

PAUSE 1000<br />

NEXT<br />

Burada k değişkeni 2’den 10’a kadar ikişer ikişer saymaktadır. Her bir döngüde bir<br />

saniyelik bir gecikme sağlanmaktadır. Döngü toplam beş tur atacağından 5 saniyelik bir<br />

gecikme sağlanmış olacaktır.<br />

2.2.8 Kontrol komutları (If…Then)<br />

Bazı işlemlerde bir durumun kontrol edilmesi gerekebilir. PIC BASIC PRO programlama<br />

dilinde bu işi ‘IF…THEN’ komutu sağlar. Bu kontrol deyimi bir veya<br />

6

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

Saved successfully!

Ooh no, something went wrong!