Pic devresi nasıl yaparım

Başlatan tahirerbay18, 22 Kasım 2011, 14:09:57

tahirerbay18

selamlar, pic'in bir girişine bağlanan ve çıkış olarak dijital tetik veren pır ile devre yapmak istiyorum.Tetik geldiğinde 10 sn sürecek bir dijital çıkış almak istiyorum ancak bu 10 sn içinde tekrar tetik gelirse 10 saniyeyi baştan başlatacak.hangi pic'i kullanmalıyım,ccs c programı konusunda yardımcı olabilecek var mı?

ctn1905

#1
#include <16F628A.h>

#FUSES NOWDT                    //No Watch Dog Timer
#FUSES XT                       //Crystal osc <= 4mhz
#FUSES NOPUT                    //No Power Up Timer
#FUSES NOPROTECT                //Code not protected from reading
#FUSES NOBROWNOUT               //No brownout reset
#FUSES NOMCLR                   //Master Clear pin used for I/O
#FUSES NOLVP                    //No low voltage prgming, B3(PIC16) or B5(PIC18) used for I/O
#FUSES NOCPD                    //No EE protection

#use delay(clock=4000000)

#int_ext
void dis_kesme()
{  int i;
   output_a(0x01);
   for(i=0;i<100;i++)
   {
   delay_ms(100);
   if(input(pin_b0))
   i=-1;
   }
   output_a(0x00);
}
void main()
{

   setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1);
   setup_timer_1(T1_DISABLED);
   setup_timer_2(T2_DISABLED,0,1);
   setup_comparator(NC_NC_NC_NC);
   setup_vref(FALSE);
 
   ext_int_edge(H_to_L);
   enable_interrupts(int_ext);
   enable_interrupts(global);
   
   while(1)
   {
   }
}




Bu kod 16F628a nın RB0 ayağına tetik geldimi RA0'ı 10sn aktif yapıyor ve aktif iken birdaha tetik geldimi 10sn baştan başlıyor umarım yardımcı olabilmişimdir :)

tahirerbay18

çok teşekkür ederim cevabınız için,ayrıca low power çalıştırma amaçlı neler yapılabilir,saygılar?

skara1214

low power çalıştırmaktan kastın çalışmadığı zamanlarda sleepe almakmı yoksa 2,5 3 voltla çalışmakmı?
Herkes ölür ama herkes gerçekten yaşamaz

tahirerbay18

evet uyku modu çalışmadığı zaman az akım çekmesi için

tahirerbay18

selamlar,programı isiste denedim ama hiç çalışmıyor.

nuriozdas

 kopyala yapıştırla olmuyor bazen :)

tahirerbay18

yeni proje oluşturup gerekli ayarları yaptıktan sonra gerekli kodları kopyalayıp yapıştırdım çalışmadı sorun ne olabilir.

nuriozdas

Ben sana proton ile yardımcı olmak istiyorum.

Sana istediğin programın hex kodlarını verebilirim.. (PROTON ILE YAZDIM)



:100000002828A301A200FF30A207031CA307031C9A
:1000100023280330A100DF300F200328A101E83E90
:10002000A000A109FC30031C1828A00703181528FC
:10003000A0070000A10F152820181E28A01C2228A8
:100040000000222808008313831203130000080015
:100050008316FF3086008312860183168501831282
:10006000850164300120061C44280514A401653074
:1000700024020318442850300120061C4128A40102
:080080003328A40A031D3728F0
:02400E00223F4F
:00000001FF





4MHZ

nuriozdas

#9
Alıntı yapılan: tahirerbay18 - 22 Kasım 2011, 14:09:57
ancak bu 10 sn içinde tekrar tetik gelirse 10 saniyeyi baştan başlatacak.

PROTON IDE:

Device    16F628A
XTAL      4

Input PORTB
PORTB =%00000000
Output PORTA
PORTA =%00000000

Dim say As Byte 
DelayMS 100
    
  BASLA:
      If PORTB.0=1 Then 
             PORTA.0=1
        TEKRAR:
           For say = 0 To 100 
               DelayMS 80                 
                 If PORTB.0=1 Then 
                   say=0
                   GoTo TEKRAR
                 EndIf
            Next 
          PORTA.0=0
       GoTo BASLA
     EndIf


100x80ms=8000ms
8000ms=10sn

ctn1905

program bende çalışıyor sorun yok nerde hata yapıyorsun bilmiyorum :-\

tahirerbay18

hex dosyasını ve program proje dosyasını göndermeniz mümkün mü acaba?

tahirerbay18

Alıntı yapılan: nuriozdas - 23 Kasım 2011, 20:10:14
Ben sana proton ile yardımcı olmak istiyorum.

Sana istediğin programın hex kodlarını verebilirim.. (PROTON ILE YAZDIM)



:100000002828A301A200FF30A207031CA307031C9A
:1000100023280330A100DF300F200328A101E83E90
:10002000A000A109FC30031C1828A00703181528FC
:10003000A0070000A10F152820181E28A01C2228A8
:100040000000222808008313831203130000080015
:100050008316FF3086008312860183168501831282
:10006000850164300120061C44280514A401653074
:1000700024020318442850300120061C4128A40102
:080080003328A40A031D3728F0
:02400E00223F4F
:00000001FF



(Resim gizlendi görmek için tıklayın.)

4MHZ

Teşekkürler verdiğiniz kodlar çalıştı.