optimation temp & adc
This commit is contained in:
@ -241,12 +241,13 @@ PRIVATE VOID vTempTask( PVOID arg )
|
||||
|
||||
//if( u32Flags & EVENT_REFRESH )
|
||||
//{
|
||||
|
||||
boOK &= ADCD_dReadData(ADCD_eHot, &error, &u16ADC_data[ADCD_eHot]);
|
||||
if( boOK )
|
||||
{
|
||||
osMutexAcquire( m_pstMutexID, osWaitForever );
|
||||
DIPO_vSetOutput(DIPO_eLED);
|
||||
m_flTempData[ADCD_eHot] = flConvertADCData( u16ADC_data[ADCD_eHot] );
|
||||
DIPO_vResetOutput(DIPO_eLED);
|
||||
//temp = flConvertADCData( u16ADC_data[ADCD_eHot] ); // for debugging
|
||||
//VARH_vSetVariableData( VARH_eTempHeatSink + u8Channel, (VARH_UVariable)(FLOAT)m_dbTempData[u8Channel] );
|
||||
osMutexRelease( m_pstMutexID );
|
||||
@ -265,6 +266,8 @@ PRIVATE VOID vTempTask( PVOID arg )
|
||||
boOK = TRUE;
|
||||
}
|
||||
//}
|
||||
|
||||
|
||||
|
||||
osDelay(REFRESH_MS);
|
||||
|
||||
@ -321,15 +324,14 @@ PRIVATE VOID vTempTask( PVOID arg )
|
||||
PRIVATE FLOAT flConvertADCData( U16 u16RTemp )
|
||||
{
|
||||
|
||||
/*u16RTemp = u16RTemp / 1000;
|
||||
FLOAT u16R = u16RTemp / 8192.0f;
|
||||
|
||||
FLOAT flT = 9.9714f * u16RTemp;
|
||||
FLOAT flT = 9.9714f * u16R;
|
||||
flT += 235.904f;
|
||||
flT *= u16RTemp;
|
||||
flT += -245.876f;*/
|
||||
flT *= u16R;
|
||||
flT += -245.876f;
|
||||
|
||||
|
||||
FLOAT flZ1, flZ2, flZ3, flZ4, flRt, flTemp, flRpoly;
|
||||
/*DOUBLE flZ1, flZ2, flZ3, flZ4, flRt, flTemp, flRpoly;
|
||||
flRt = u16RTemp;
|
||||
flRt /= 32768;
|
||||
flRt *= R_REF;
|
||||
@ -354,7 +356,9 @@ PRIVATE FLOAT flConvertADCData( U16 u16RTemp )
|
||||
flRpoly *= flRt; // ^4
|
||||
flTemp -= 2.8183e-8 * flRpoly;
|
||||
flRpoly *= flRt; // ^5
|
||||
flTemp += 1.5243e-10 * flRpoly;
|
||||
flTemp += 1.5243e-10 * flRpoly;*/
|
||||
|
||||
|
||||
return( flTemp );
|
||||
|
||||
return( flT );
|
||||
}
|
||||
|
Reference in New Issue
Block a user