kesme ile saniye saydırmayı yaptım ama yine saniyeler kayıyor çözüm nedir?

Saat kristali çok hassas imal edilmiştir. Bunu timer için external clock olarak kullanacak. İşlemci için yine 4 mhz kristal kullanabilir o ayrı. Çift kristal yani
 
bugün alıcam o osilatörü timer1 kullan demişssiniz 16f628 için 12-13 nolu bacaklarına mı bağlıcam bide bunun programda nasıl tanıtıcam hocam
 
Kod:
#include <16f628a.h>
#FUSES NOWDT
#FUSES INTRC_IO
#FUSES NOBROWNOUT
#FUSES NOLVP


#use delay(int=4000000)


#use fast_io(a)
#use fast_io(b)




unsigned int i=0,z=0;


#int_timer1 // timer0 kesmesi
void timer1_kesme()
{
set_timer1(55543);
i++;
if(i==100)
{
output_toggle(pin_b0);
i=0;z++;
if(z==10)
 {
output_toggle(pin_b1);
z=0;
  }
}
  clear_interrupt(int_timer1);
  }
 
 
  void main()
 
  {
  set_tris_a(0x00);
  set_tris_b(0x00);
  output_a(0x00);
  output_b(0x00);
 
 
  setup_ccp1(CCP_OFF);
  setup_timer_1(T1_INTERNAL|T1_DIV_BY_1);
  set_timer1(55543);
  enable_interrupts(INT_TIMER1);
  enable_interrupts(GLOBAL);
 
  while(1)
 {
 output_high(pin_b7);
 }
 }

buda kod hocam saat osilatörünün yazarsanız artı nereye bağlayacağımı söylerseniz yapıcam
 
tkosis sizin dediğinizi yaptım yine kayma var
 

Forum istatistikleri

Konular
129,877
Mesajlar
930,963
Kullanıcılar
452,745
Son üye
azirr

Yeni konular

Geri
Üst