benim amacım 2 tane aralarında faz farkı bulunan 50 Hz lik bir sinyalin faz farkı süresini bulmak..
ve o süreyide yine pic 2 ayrı çıkışından faz aralık süresini örneğin usn den msn yeye çıkarmak
yazdığım program bu
------------------------------------------------------
#include <16f877.h>
#include <stdio.h>
#fuses HS,NOPROTECT,NOLVP,NOCPD
#use delay (clock=20000000)
#use fast_io(a)
int fark,binkati,tam,gecikme;
void main ( )
{
setup_psp(PSP_DISABLED);
setup_adc_ports(NO_ANALOGS);
setup_adc(ADC_OFF);
setup_CCP1(CCP_OFF);
setup_CCP2(CCP_OFF);
set_tris_a(0x03); // RA0, RA1 pinleri giriş
setup_timer_1(T1_INTERNAL|T1_DIV_BY_1);
while(TRUE)
{
if(input(PIN_A0)==1)
{ while(TRUE)
{set_timer1(0);tam=0;
do
{if(65535==get_timer1()){tam=tam+1;set_timer1(0);}
}while(input(PIN_A1)==0);
fark=get_timer1();
binkati=fark*0.2*1000000;
gecikme=tam*binkati;
output_high(PIN_B0);
delay_ms(gecikme);
output_high(PIN_B1);
break;
}
}delay_ms(gecikme);output_b(0x00);
}
}
------------
iki sinyal arasında faz farkı bile oluşmuyor.. proteusta kurun fazla birşey değil 877 koyun ra0 ra1 çıkışlarına AC sinyal verin 5 v faz farkı yaratın sinyaller arasında çıkışa faz farkı genliği büüyormu ona bakın