pic16f628 kesmesi un ufak bir metal eşya ile dokunduğumda tetikleniyor??

Başlatan forumsad, 04 Kasım 2010, 03:44:41

forumsad

arkadaşlar portb0 kesmesi sıkıntım var
portb0'ı 10 k direnç ile +5v bağladım

portb0 a gnd verdiğimde kesme çalışıyor fakat bağlantıya herhangi bir metalle dokunduğumda hemen kesme gerçekleşiyor nedeni ne olabilir acaba teşekkkürler
'****************************************************************

'****************************************************************
Device 16F628A ;ENTEGRE TANIMLAMA
Xtal 4 ;KRISTAL FREKANSI 
'------------------------------------------------------------------------
TRISA=%00000
TRISB=%00000001  'PORTB7 GIRIS DIGERLERI ÇIKIS OLSUN


'çikislari temizle 
PORTA=0 
PORTB=0 


'------------------kesme ayarlari---------------------------------------
On_Interrupt GoTO KESME
OPTION_REG = %00000000 'INTERRUPT KÖSE DURUMU
INTCON  =%10010000     'global kesme aktif,portb.0 kesmesi aktif
All_Digital=TRUE       'bütün portlari djital (1-0) yap 
'-----------------------------------------------------------------------

Dim k As Word
k=0



BASLA:
devam:
k=k+1
INTCON.7=1         'global kesme aktif

PORTA.2=0 


PORTA.1=1  
DelayMS 1000
PORTA.1=0  
DelayMS 1000

if k=100 then goto kapat
GOTO BASLA




'/////////////////////////////////////////////////////////////
KESME:
Disable            'kesmeyi pasif
DelayMS 30
'++++++++++++++++
PORTB.4=1 
PORTB.5=1 

PORTA.2=1 
DelayMS 2000


'+++++++++++++++++     
INTCON.1=0       	'RB0/INT Bayrağı (flag) silindi.
Resume




       
ENABLE      	'kesmeler yeniden aktif.
RESUME	'geldiğin yere dön.
GOTO devam



kapat:
PORTB.4=0 
PORTB.5=0 
k=0
goto devam



Maxim

nedeni elimizdeki statik elektrik olmalı
10k direnci daha düşük takmalısın bence ,

mesela 4k7 olmadı daha düşük
birde seri bir direnç koysan iyi olur o da aynı değerlerde olabilir .

X-Fi

pull up direncini 4.7k takıpda deneyebilirsiniz. seri direnç takılacaksada aynı değerde olmamalı küçük olmalı yoksa gnd ye çekemezsiniz. extra güvenlik olarak rb0 girişine 100nf kondansetör eklenebilir böylece ani değişimler filtrelenmiş olur.

microchip 16F628 de static problemleri olduğunu açıklamıştı bu yüzden güvenliğe önem vermemiz lazım.

kolay gelsin.
http://www.coskunergan.dev/    (Yürümekle varılmaz, lakin varanlar yürüyenlerdir.)

z

Karşılaştığın durum çok normal. Çünkü int girişindeki pull-up direnci giriş pinini çok zayıf şekilde high da tutuyor ve gelen sinyalin kabul edilme süresi çok kısa.

Eğer bunun problem olduğunu düşünüyorsan yani metal dokundurarak enjekte ettiğin sinyalin PIC de int oluşumunu engellemek istiyorsan pullup direncininin değerini düşük tut.

Bana e^st de diyebilirsiniz.   www.cncdesigner.com

justice_for_all

cunku sen metalle dokununca ordakı voltaj seviyesi sfıra cekiliyo ve kesme olusuyo.. Budurum normal arkadasım...
Deneyip de başaramayanları değil, yalnızca denemeye bile kalkışmayanları yargıla.   Gökhan Arslanbay