anahtar

Başlatan selvi, 27 Nisan 2009, 10:50:15

selvi

asagidaki programi pbp ile yazdim.45 dakikalik sayici.tmr0 kesmesi kullandim.12f675 islemcisini kullandim.devrenin beslemesi 3.15v.devre cok kucuk.besleme uclarina 100nf bagli.picin gpio.2 cikisina 620 ohm direnc bagli.ve o dirence seri fotomos role bagli.gpio.2=1 olunca role cekiyor.
  devrenin beslemesi 3v luk fotograf makinesinin pilini kullandim.besleme ucuna anahtar bagli.  anahtar  on konumuna getirildiginde devreye beslenme verilmis olunur.anahtari on konumuna getirdikten 45 dk sonra led 20sn kadar yanip sonuyor.sonrasinda anahtari off konumuna getirip tekrar on konumuna getirdikten hemen sonra  led surekli yanik kaliyor.tabi bu surekli olmuyor. bu durum nerden kaynaklanmis olabilir.
 
@   device  pic12F675,intrc_osc_noclkout, wdt_off, pwrt_on, mclr_off, protect_off,bod_off
 
DEFINE OSC 4       'DEFINE OSCCAL_1K 
TRISIO = 0
GPIO.2=0
IOC=0 
ON INTERRUPT GoTo KESME   'kesme olu?ursa KESME adl? etikete git.
OPTION_REG=%10000101   	 'Pull up dirençleri ?PTAL- Bölme oran? 1/64.
INTCON=%10100000  		 'Kesmeler aktif ve TMR0 kesmesi aktif
TMR0=0
CMCON=7    			'16F628 de komparatör pinleri iptal hepsi giri? ç?k??
ANSEL=0
 
'----------------------------------------------------------------------------
SAYAC   VAR   BYTE
SN      VAR   BYTE
DAK     VAR   BYTE
I       VAR   BYTE
SAYAC=0
SN=0
DAK=0 
I=0
'-----------------------------------------------------------------------------
CLEAR  'tüm de?i?kenler s?f?rland?
 
BASLA:
PAUSEUS 1
GOTO BASLA

DISABLE
KESME:GPIO.2=0 
      SAYAC=SAYAC+1  	    'kesme sayac?  1 sn= 61(sayac) x 256 (Tmr0) x 64 (bölme)
      IF SAYAC=69  then  	    '61 adet kesme olunca 1 sn. süre geçiyor.(999424 us)
         SAYAC=0       	     'sayaç s?f?rlan?yor
         SN=SN+1       	    'saniye de?eri bir art?r?l?yor
            IF SN=60 THEN  	   'saniye 60 olmu? ise 1 dakika süre geçti o halde
               SN=0        	   ' saniye s?f?rlan?yor
               DAK=DAK+1   	   ' dakika de?eri bir art?r?l?yor
                  IF DAK>20 AND DAK=45 THEN   'dakika 30 olmu?  
                    GPIO.2=1
                    FOR I=0 TO 200
                    PAUSE 100
                    NEXT I
                   GPIO.2=0  
                     DAK=0         	   ' dakika s?f?rlan?yor
                ENDIF     
            ENDIF
         ENDIF
         INTCON.2=0        'TMR0 Kesme bayra?? s?f?rlan?yor
         RESUME
         ENABLE
         
END
Yaşam anlamlandırıldıkça kutsaldır....

selvi

besleme ucuna 47uf -16v kondansator bagladim.durum degismedi.besleme anahtarini ust uste acip kapatiyorum.bazen ust uste 3-4 kez yaniyor.bazen ust uste yaptigimda led yanmiyor.program onceki mesajdaki gibidir.
Yaşam anlamlandırıldıkça kutsaldır....

Maxim

bod_off .. bunu bod_on yapıp denermisin ?

birde bu BODEN olması lazım değilmi ? yani boden_on

selvi

oncelikle BODEN seklinde yazilim protona ait,bildigim kadar.belirttiginiz sekilde deneme yaptim.simdiye kadar belirttigim sorun ortaya cikmadi.soyle bir durum var.2 tane 12f675 denedim.bir tanesinde belirlenen surede led yaniyor.bir tanesinde ust uste 2 deneme yaptim.ilkinde suresinde yandi.2.denemede sure dolmasina ragmen led yanmadi.nedeni ne olabilir.
Yaşam anlamlandırıldıkça kutsaldır....