Обрезка шильев АЦП. Лог температур
This commit is contained in:
@@ -102,7 +102,7 @@ AdcRegs.ADCREFSEL.bit.REF_SEL=1;
|
||||
COUNT_ONE_CANAL = ADC_FREQ/250; // 15
|
||||
COUNT_DISCHARGE = 4;
|
||||
COUNT_TRANSICIA = 9;
|
||||
FILTER_CLIP = 40;
|
||||
FILTER_CLIP = 20;//40;
|
||||
WAKE_TIME =7L * ADC_FREQ;
|
||||
}
|
||||
if(TermoAD)
|
||||
@@ -111,7 +111,7 @@ AdcRegs.ADCREFSEL.bit.REF_SEL=1;
|
||||
COUNT_ONE_CANAL = ADC_FREQ/15; // 250;
|
||||
COUNT_DISCHARGE = ADC_FREQ/145; // 25;
|
||||
COUNT_TRANSICIA = ADC_FREQ/25; // 150;
|
||||
FILTER_CLIP = 200;
|
||||
FILTER_CLIP = 20;//200;
|
||||
WAKE_TIME =5L * ADC_FREQ;
|
||||
}
|
||||
|
||||
@@ -174,7 +174,6 @@ interrupt void adc_isr(void)
|
||||
n = TermoSW*cownt_cans+i;
|
||||
|
||||
Temper = *(&AdcRegs.ADCRESULT0 + i) >>4;
|
||||
Filter = filterbat(&adc_filter[n],Temper);
|
||||
|
||||
ok = abs(ADC_table[n]-Temper) < FILTER_CLIP;
|
||||
|
||||
@@ -182,9 +181,12 @@ interrupt void adc_isr(void)
|
||||
|
||||
if(ok|!prev_ok[n])
|
||||
{
|
||||
if(WAKE)ADC_table[n] = Temper;
|
||||
else ADC_table[n] = Filter;
|
||||
} }
|
||||
if(WAKE) ADC_table[n] = Temper;
|
||||
else
|
||||
{
|
||||
Filter = filterbat(&adc_filter[n],Temper);
|
||||
ADC_table[n] = Filter;
|
||||
} } }
|
||||
|
||||
if(++cownt_one_canal>=COUNT_ONE_CANAL)
|
||||
{ cownt_one_canal=0;
|
||||
@@ -195,13 +197,27 @@ interrupt void adc_isr(void)
|
||||
{
|
||||
n = TermoSW*cownt_cans+i;
|
||||
Temper_count(n);
|
||||
|
||||
if(cWriteLog)
|
||||
if(no_write)
|
||||
{
|
||||
Log_to_mem(ADC_table[n]);
|
||||
if(cownt_cans<TPL_CANS)
|
||||
Log_to_mem(sens_data[n]);
|
||||
modbus[0x2F]=Log.Adres;
|
||||
}
|
||||
prev_ok[n] = cwnt_ok[i];
|
||||
cwnt_ok[i] = 0;
|
||||
}
|
||||
|
||||
if(++cownt_cans>= TPL_CANS+2)
|
||||
{
|
||||
cownt_cans = 0;
|
||||
}
|
||||
|
||||
Test_mem_limit(TermoSW*(TPL_CANS+2));
|
||||
if(cWriteLog)no_write=1;
|
||||
|
||||
} }
|
||||
|
||||
fin:
|
||||
|
||||
|
||||
@@ -93,6 +93,7 @@ extern int TPL_CANS,tpl_cans;
|
||||
extern FLAG chk,sig;
|
||||
|
||||
extern FILTERBAT adc_filter[];
|
||||
extern float out_filter[];
|
||||
|
||||
extern float tmpK1,tmpK2;
|
||||
|
||||
|
||||
@@ -131,6 +131,7 @@
|
||||
#define cLiteFire bit_comand.bit.bit9
|
||||
#define cHighVolt bit_comand.bit.bitA
|
||||
|
||||
#define cWriteLog bit_comand.bit.bitE
|
||||
#define cReset bit_comand.bit.bitF
|
||||
|
||||
#endif //PACKAGE
|
||||
|
||||
Reference in New Issue
Block a user