|
|
@@ -86,27 +86,59 @@ void TIMER14_IRQHandler(void)
|
|
|
{
|
|
|
timer_interrupt_flag_clear(TIMER14, TIMER_INT_FLAG_UP); //清除定时器更新中断标志
|
|
|
}
|
|
|
-// adc_original_value[0] = adc_channel_sample_V_P();
|
|
|
-// adc_original_value[1] = adc_channel_sample_V_S();
|
|
|
-// adc_original_value[2] = adc_channel_sample_I_P();
|
|
|
-// adc_original_value[3] = adc_channel_sample_I_S();
|
|
|
- if(adc_original_value[0]>0x20 )
|
|
|
- voltage_s[index] = adc_original_value[0] -5;
|
|
|
- else
|
|
|
- voltage_s[index] = 0;
|
|
|
- if(adc_original_value[2] > 0x10 )
|
|
|
- current_s[index++] = adc_original_value[2]-4;
|
|
|
- else
|
|
|
- current_s[index++] = 0;
|
|
|
+
|
|
|
+ if((adc_original_value[0] - adc_original_value[1]) >= 0x10)
|
|
|
+ {
|
|
|
+ voltage_s[index] = adc_original_value[0] - adc_original_value[1]-5;
|
|
|
+ }else
|
|
|
+ {
|
|
|
+ voltage_s[index] = 0;
|
|
|
+ }
|
|
|
+
|
|
|
+ if((adc_original_value[2] - adc_original_value[3]) >= 0x4)
|
|
|
+ {
|
|
|
+ current_s[index] = adc_original_value[2] - adc_original_value[3]-3;
|
|
|
+ }else
|
|
|
+ {
|
|
|
+ current_s[index] = 0;
|
|
|
+ }
|
|
|
+// if(adc_original_value[0] > adc_original_value[1])
|
|
|
+// {
|
|
|
+// if(adc_original_value[0] - adc_original_value[1] >= 10)
|
|
|
+// voltage_s[index] = adc_original_value[0] - adc_original_value[1] - 5;
|
|
|
+// else
|
|
|
+// voltage_s[index] = 0;
|
|
|
+// //voltage_s[index] = voltage_s[index] > 20 ? voltage_s[index]- 5: 0;
|
|
|
+// }else
|
|
|
+// {
|
|
|
+// voltage_s[index] = 0;
|
|
|
+// }
|
|
|
+// if(adc_original_value[2] > adc_original_value[3])
|
|
|
+// {
|
|
|
+// if(adc_original_value[2] - adc_original_value[3] >= 4)
|
|
|
+// current_s[index] = adc_original_value[2] - adc_original_value[3] -4;
|
|
|
+// else
|
|
|
+// current_s[index] = 0;
|
|
|
+// //current_s[index] = current_s[index] > 10 ? current_s[index]- 4: 0;
|
|
|
+// }else
|
|
|
+// {
|
|
|
+// current_s[index] = 0;
|
|
|
+// }
|
|
|
+ index++;
|
|
|
+// if(adc_original_value[0]>0x20 )
|
|
|
+// voltage_s[index] = adc_original_value[0] -5;
|
|
|
+// else
|
|
|
+// voltage_s[index] = 0;
|
|
|
+// if(adc_original_value[2] > 0x10 )
|
|
|
+// current_s[index++] = adc_original_value[2]-4;
|
|
|
+// else
|
|
|
+// current_s[index++] = 0;
|
|
|
if(index == 200)
|
|
|
{
|
|
|
index = 0;
|
|
|
ADC_TimerDisable(); //close timer and calculate
|
|
|
read_flag = 1;
|
|
|
}
|
|
|
- //adc_channel_sample()
|
|
|
- //read_flag = 1;
|
|
|
- //ADC_TimerDisable();
|
|
|
}
|
|
|
|
|
|
void TIMER15_IRQHandler(void)
|