Frekans ölçme ccs compiler, similasyonda vsine edit yapın içindeki amplitude=220 değerini yazınız. frekans değerini belirtiniz.
#include<16f877a.h>
#include<stdbool.h>
#fuses xt,nowdt,nodebug
#use delay(clock=4m)
#include<lcd.c>
unsigned int32 f=0;
unsigned int16 count1=0;
volatile int8 i=0;
void bekle(void);
#int_timer0
void timer0_kesme()
{
count1++;
}
#int_timer1
void timer1_kesme()
{
set_timer1(40536);
i=i+1;
}
void main()
{
lcd_init();
setup_timer_1(t1_internal|t1_div_by_8);
setup_timer_0(t0_ext_h_to_l | rtcc_div_1);
enable_interrupts(int_timer0);
enable_interrupts(int_timer1);
while(true)
{
f=0;
count1=0;
clear_interrupt(int_timer0);
clear_interrupt(int_timer1);
bekle();
f=get_timer0();
f=f+count1 * 256;
printf(lcd_putc,"\fFrekans %lu hz\n",f);
printf(lcd_putc,"sifirzero.com");
delay_ms(1000);
}
}
void bekle(void)
{
enable_interrupts(global);
set_timer1(40536);
set_timer0(0);
while(i<5);
i=0;
disable_interrupts(global);
}
Hiç yorum yok:
Yorum Gönder
Her yorum bilgidir. Araştırmaya devam...