Haberler:

Eposta uyarılarını yanıtlamayınız ( ! ) https://bit.ly/2J7yi0d

Ana Menü

Kesme ile ilgili

Başlatan avignon, 14 Mayıs 2008, 22:12:48

avignon

RB4-7 kadar olan butonlardan hangisine basılırsa RA0-4 butonlarından hangisine karşılık geliyorsa (B4=A0, B5=A1 ,B6=A2, B7=A3) o uçtaki ledin yanmasını istiyorum. Butona bastıktan sonra butondan elimizi çeksek bile led yanmaya devam edecek. Aşağıdaki programda butondan çektiğimde ledler sönüyor.

LIST P=16F628A
INCLUDE "P16F628A.INC"
ORG H'00'
GOTO BASLA
ORG H'04'
GOTO KESME
BASLA
	SAYAC EQU H'20'
	BANKSEL TRISB
	MOVLW H'F0'
	MOVWF TRISB
	CLRF TRISA
	BSF INTCON,7
	BCF INTCON,0
	BSF INTCON,3
	BANKSEL PORTB
	CLRF PORTB
	CLRF PORTA
DONGU
	GOTO DONGU
KESME
	BCF INTCON,3
	MOVF PORTB,W
	MOVWF SAYAC
	SWAPF SAYAC,F
	MOVF SAYAC,W
	XORLW B'00001111'
	MOVWF PORTA
	BSF INTCON,3
	BCF INTCON,0
RETFIE
END

elmaalma

Butondan elini çekince de yeni durum yani Rb<4:7> kesmesi oluşur. Yeni durumda da butona basılı olmadığından led söner.

avignon

anladım RB4-7 kesmesinde hem düşen kenarlı hemde yükselen kenarlı durumlarda kesme oluşuyor heralde. Peki bu programı nasıl düzeltebiliriz.

avignon

programı bir türlü oluşturamıyorum bir yardım