#include
"H_16C73B.h"
#include
"H_V_DSP.h"
#use
delay(clock=4000000)
#include
"F_4TADC.c"
#include
"F_7SEG.c"
#define GAIN 139
long
tmr1_cnt;
/////////////////////////////////////////////////////////////
////
interrupt
service function ////
/////////////////////////////////////////////////////////////
#INT_TIMER1
void INT_TMR1_SVR(void) { //
TIMER 1 STOP TMR1IF
= 0; TMR1ON = 0; // Á¦°¡ ¸¸µç
H_16c74B.h" ÆÄÀÏ ¶«¿¡ °¡´ÉÇÔ
tmr1_cnt++;
// 2ÃÊ¿¡ Çѹø¾¿
V°ªÀ» °»½Å if(
tmr1_cnt==40 ) { V
= ( (float) adc_value/255 )*GAIN; // V, I, adc_value´Â H_V_DSP.h³»¿¡
Á¤ÀǵÊ. I
= V; tmr1_cnt=0;
} //
TIMER 1 START set_timer1(5536);
// 50 [ms] ¸¶´Ù interrupt ¹ß»ý TMR1ON
= 1; // Á¦°¡ ¸¸µç H_16c74B.h"
ÆÄÀÏ ¶«¿¡ °¡´ÉÇÔ }
/////////////////////////////////////////////////////////////
void
main(void) { ////////////////////////////////////////////////////
/// timer1
interrupt setting ///
////////////////////////////////////////////////////
setup_timer_1(T1_INTERNAL|T1_DIV_BY_1);
enable_interrupts(INT_TIMER1);
set_timer1(5536);
enable_interrupts(global);
while(1)
{
//
aver_adc_4time()ÇÔ¼ö´Â ÀÎÅ©·çµåµÈ F_4TADC.c ÆÄÀÏ¿¡ ÀÖÀ½. adc_value
= aver_adc_4time();
//
get_value(), display() ÇÔ¼ö´Â ÀÎÅ©·çµåµÈ F_7SEG.c ÆÄÀÏ¿¡ ÀÖÀ½.
get_value(I);
display();
}
|