Elimde bir kaç tane 12f629 var zaten ve ban toplam 2-3 pin lazım onun için bu pici tercih ettim.
İlginiz için teşekkür ederim.
#include <12F629.h>
#FUSES NOWDT, INTRC_IO, NOMCLR, PUT
#use delay(clock=4000000)
#define delay 1000
void main()
{
set_tris_a(0b111100);
int i;
int sn=0;
int dk=0;
while(1)
{
delay_ms(delay);
sn++;
if(sn==60)
{
sn=0;dk++;
if(dk==45)
{
dk=0;
output_high(pin_a0);
for(i=0;i<30;i++)
{
delay_ms(delay);
}
output_low(pin_a0);
output_high(pin_a1);
for(i=0;i<30;i++)
{
delay_ms(delay);
}
output_low(pin_a1);
}
}
}
}
Verdiğiniz kodlarda bir düzenleme yaptım.Hocam Fakat aklıma bir şey takıldı dahili osilatör ayar kodu (INTRC_IO) mu?
Niye 12f kullanıyorsunki 16f84 , 16f628 istersen yapabilirim...Sıfırdan bişey yapacaksan böle zor bulunacak malzemeyi kullanmana gerek yok...Tanıdık malzemeleri kullanalım...
DISABLE
KESME:
SN=SN+1
toggle LED'SANİYEYİ 1 ARTIR,LAMBAYI YAK SÖNDÜR
IF ALR=1 THEN LED=1'ALARM AYARLANIRKEN LEDİ SÖNDÜR
IF mesgul=1 THEN LED=1'ALARM VEYA DERECE GÖSTERİRKEN LEDİ SÖNDÜR
IF SN>59 THEN SN=0 : DK=DK+1
IF DK>59 THEN SA=SA+1 : DK=0
IF SA>23 THEN SA=0
SAAT_SURESI=SAAT_SURESI+1
DERECE_SURESI=DERECE_SURESI+1
INTCON.1=0'KESME BAYRAĞINI SIFIRLA
RESUME'GELDİĞİN YERE DÖN
ENABLE'KESMELER YENİDEN AKTİF