Haberler:

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

Ana Menü

18f452 kesme sorunu

Başlatan forumsad, 05 Mart 2011, 22:18:09

forumsad

portD'ye 8 adet led bağladım sırayla yakıp söndürüyorum..

ortada bir yerde kesme devreye girince ledlarin kaldığı yerden yanmaya devam etmesini istiyorum...
ama beceremedim hatam nerde acaba

teşekkürler
'****************************************************************
Device 18F452 ;ENTEGRE TANIMLAMA
Xtal 4 ;KRISTAL FREKANSI 
'------------------------------------------------------------------------
TRISA=%11111111
TRISB=%00000001  'PORTB7 GIRIS DIGERLERI ÇIKIS OLSUN
TRISC=%10110000
TRISD=%00000000
TRISE=%00000000

'kesme ayarları------------------------------------------------------
On_Interrupt GoTo KESME
INTCON  =%10010000     'global kesme aktif,dış kesme aktif
'-----------------------------------------------------------------------



PORTA=0 
PORTB=0 
PORTC=0 
PORTD=0
PORTE=0




'//////////////////////////////////////////////////////////////////////////
BASLA:
'*****************************************
Enable             'kesme devrede 
INTCON.7=1         'global kesme aktif       Symbol GIE = INTCON.7    ' Global Interrupt Enable
'*****************************************

PORTD.0=1
DelayMS 500
PORTD.0=0
DelayMS 500
PORTD.1=1
DelayMS 500
PORTD.1=0
DelayMS 500
PORTD.2=1
DelayMS 500
PORTD.2=0
DelayMS 500
PORTD.3=1
DelayMS 500
PORTD.3=0
DelayMS 500
PORTD.4=1
DelayMS 500
PORTD.4=0
DelayMS 500
PORTD.5=1
DelayMS 500
PORTD.5=0
DelayMS 500
PORTD.6=1
DelayMS 500
PORTD.6=0
DelayMS 500
PORTD.7=1
DelayMS 500
PORTD.7=0
DelayMS 500

GoTo BASLA



'////////////////////////////////////////////////////////////////////////////
KESME:
Context Save
Disable            'kesmeyi pasif


PORTE.0=1   
DelayMS 800
PORTE.0=0 
DelayMS 800 
PORTE.0=1   
DelayMS 800
PORTE.0=0 
DelayMS 800 





'-------------------------------------------------------------------------
INTCON.1=0       	'RB0/INT Bayrağı (flag) silindi.
Context Restore
Resume
GoTo BASLA
'-------------------------------------------------------------------------


End



forumsad

Device=18F452 
Xtal=20 
All_Digital true 
Symbol GIE INTCON.7       ' Global Interrupt Enable
Symbol INT0IE INTCON.4    ' INT0 External Interrupt Enable
Symbol INT0F INTCON.1     ' INT0 External Interrupt Flag


Output PORTC 
Output PORTD
PORTC=0
PORTD=0
'*************************
On_Interrupt GoTo Kesme 
GoTo Start
'*************************


Kesme: 
PORTC.0=1
 
INT0F=0    
Context Restore 


Start:
INT0IE = 1 
GIE=1 



BASLA:
PORTC.0=0


PORTD.0=1
DelayMS 500
PORTD.0=0
DelayMS 500
PORTD.1=1
DelayMS 500
PORTD.1=0
DelayMS 500
PORTD.2=1
DelayMS 500
PORTD.2=0
DelayMS 500
PORTD.3=1
DelayMS 500
PORTD.3=0
DelayMS 500
PORTD.4=1
DelayMS 500
PORTD.4=0
DelayMS 500
PORTD.5=1
DelayMS 500
PORTD.5=0
DelayMS 500
PORTD.6=1
DelayMS 500
PORTD.6=0
DelayMS 500
PORTD.7=1
DelayMS 500
PORTD.7=0
DelayMS 500

GoTo BASLA


İNTERNETDEN ŞÖLE BİR ÖRNEK BULDUM ÇALIŞIYOR TEK ANLAMADIĞIM START KISMI  YERİNİ DEĞİŞTİRDİĞİMDE HATAYA NEDEN OLUYOR??

TEŞEKKÜRLER