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

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Kesme kullanılırken; PCL, Status ve W yazmaçlarının içindeki değerleri koruma işi de<br />

programlayıcıya bırakılmıştır. Bu yazmaçları korumak için PIC veri sayfalarında aşağıdaki<br />

komutları kullanmak yeterlidir.<br />

MOVWF W_TEMP ; W geçici değişkene kopyala<br />

SWAPF STATUS,W ; Status‟u SWAP ile W‟ye yükle<br />

CLRF STATUS ; IRP, RP1 ve RP0‟ı temizle<br />

MOVWF STATUS_TEMP ; Status‟u Bank0‟da geçici değişkene yükle<br />

MOVF PCLATH,W ;<br />

MOVWF PCLATH_TEMP ; Geçici PCLATH‟ı W yazmacına yükle<br />

CLRF PCLATH ; PCLATH‟ı temizle<br />

…….<br />

Komutlar<br />

…….<br />

MOVF PCLATH_TEMP,W ;<br />

SWAPF STATUS_TEMP,W ; STATUS_TEMP‟i W‟ya yükle<br />

MOVF STATUS ; W yazmacını Status‟a aktar<br />

SWAPF W_TEMP,F ; W_TEMP‟e SWAP uygula<br />

SWAPF W_TEMP,W ; W_TEMP‟e 2. kez SWAP uygula<br />

Örnek 9.15 : RB0/ INT ucundan girilen bir sinyal ile kesme oluşturmaya çalışınız.<br />

INT<br />

10k<br />

+5 V<br />

DC<br />

RA0<br />

RB0/INT<br />

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

RB1<br />

RB2<br />

Şekilde görüldüğü gibi bu programın amacı PORTA nın 0.bitine bağlı olan butonun basılı<br />

olup olmadığı gösteren basit bir programdır. RB0/INT ucundan bir sinyal girerek kesme oluşturmak<br />

için RB0 ucuna bir buton bağlanmıştır. INT butonuna basılınca kesme oluşur ve kesme alt programı<br />

çalışarak LED2 in yanma durumunda değişiklik görülür.<br />

470K<br />

LED2<br />

A1<br />

10k<br />

470K<br />

LED1

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

Saved successfully!

Ooh no, something went wrong!