60,9 → 60,12 |
#include "config.h" |
|
AnalogData_t AnalogData; |
s32 FC_Temperatur_raw = -10000; |
s32 FC_Temperatur = -1000, FC_StartTemperature = -1000; |
|
void ADC_IRQHandler(void) |
{ |
s16 tmp; |
IENABLE; |
|
if(ADC_GetFlagStatus(ADC_FLAG_ECV) == SET) |
77,7 → 80,17 |
AnalogData.Ch6 = ADC_GetConversionValue(ADC_Channel_6); |
AnalogData.Ch7 = ADC_GetConversionValue(ADC_Channel_7); |
//FC_Temperatur = 250 + (s32)(((s32)AnalogData.Ch0 * 100 - 51200) / 18); |
// ++++++++++++++++++++++++++++++++++++++++++++++++ |
// + FC 3.0 Temperature |
// ++++++++++++++++++++++++++++++++++++++++++++++++ |
if(UART_VersionInfo.HWMajor >= 30) |
{ |
tmp = 2500 + 10 * (s32)(((s32)AnalogData.Ch0 * 100 - 51200) / 18); |
if(FC_Temperatur_raw == -10000) FC_Temperatur_raw = tmp; else FC_Temperatur_raw = (FC_Temperatur_raw * 9 + tmp) / 10; |
} |
else FC_Temperatur_raw = 0; |
// ++++++++++++++++++++++++++++++++++++++++++++++++ |
} |
IDISABLE; |
VIC0->VAR = 0xFF; // write any value to VIC0 Vector address register |
} |