|
@@ -13,7 +13,10 @@
|
|
|
Beginning of File, do not put anything above here except notes
|
|
|
Compiler Directives:
|
|
|
*************************************************************************/
|
|
|
+#include "syspar.h"
|
|
|
#include "typedefine.h"
|
|
|
+#include "mathtool.h"
|
|
|
+#include "gd32f30x.h"
|
|
|
#include "Temp.h"
|
|
|
|
|
|
/******************************
|
|
@@ -21,88 +24,68 @@
|
|
|
* Parameter
|
|
|
*
|
|
|
******************************/
|
|
|
-SWORD tmp_CurCalibCoef[CURCALIBNUM] = {
|
|
|
- 1024, // 0-20
|
|
|
- 1024, // 20-30
|
|
|
- 1024, // 30-40
|
|
|
- 1024, // 40-50
|
|
|
- 1000, // 50-60
|
|
|
- 980, // 60-70
|
|
|
- 960, // 70-80
|
|
|
- 940, // 80-90
|
|
|
+SLONG tmp_CurCalibCoef[CURCALIBNUM] = {
|
|
|
+ 30224, // 0-19 Q10
|
|
|
+ 53743, // 20-39
|
|
|
+ 77427, // 40-59
|
|
|
+ 101477, // 60-79
|
|
|
+ 125143, // 80-99
|
|
|
+ 149524, // 100-119
|
|
|
+ 174172, // 120-139
|
|
|
};
|
|
|
|
|
|
-static SWORD PCB_swRTempTab[PCB_TEMP_NUM] = {
|
|
|
-0, // 0.01kOnm IPM voltage at 0 C initial
|
|
|
-0, // 0.01kOnm IPM voltage at 10 C
|
|
|
-0, // 0.01kOnm IPM voltage at 20 C
|
|
|
-0, // 0.01kOnm IPM voltage at 30 C
|
|
|
-0, // 0.01kOnm IPM voltage at 40 C
|
|
|
-0, //0.01kOnm IPM voltage at 50 C
|
|
|
-0, // 0.01kOnm IPM voltage at 60 C
|
|
|
-0, // 0.01kOnm IPM voltage at 70 C
|
|
|
-0, // 0.01kOnm IPM voltage at 80 C
|
|
|
-0, // 0.01kOnm IPM voltage at 90 C
|
|
|
-0, // 0.01kOnm IPM voltage at 100 C
|
|
|
-0, // 0.01kOnm IPM voltage at 110 C
|
|
|
-0// 40 // 0.01kOnm IPM voltage at 120 C
|
|
|
-};
|
|
|
-static SWORD PCB_swRTempTab_CITY[PCB_TEMP_NUM] = {
|
|
|
- 3000, // 0.01kOnm IPM voltage at 0 C CITY
|
|
|
- 1900, // 0.01kOnm IPM voltage at 10 C
|
|
|
- 1200, // 0.01kOnm IPM voltage at 20 C
|
|
|
- 718, // 0.01kOnm IPM voltage at 30 C
|
|
|
- 436, // 0.01kOnm IPM voltage at 40 C
|
|
|
- 302, // 0.01kOnm IPM voltage at 50 C
|
|
|
- 211, // 0.01kOnm IPM voltage at 60 C
|
|
|
- 149, // 0.01kOnm IPM voltage at 70 C
|
|
|
- 107, // 0.01kOnm IPM voltage at 80 C
|
|
|
- 79, // 0.01kOnm IPM voltage at 90 C
|
|
|
- 59, // 0.01kOnm IPM voltage at 100 C
|
|
|
- 43, // 0.01kOnm IPM voltage at 110 C
|
|
|
- 33 // 0.01kOnm IPM voltage at 120 C
|
|
|
-};
|
|
|
-static SWORD PCB_swRTempTab_MTB[PCB_TEMP_NUM] = {
|
|
|
- 3000, // 0.01kOnm IPM voltage at 0 C MTB
|
|
|
- 1800, // 0.01kOnm IPM voltage at 10 C
|
|
|
- 1100, // 0.01kOnm IPM voltage at 20 C
|
|
|
- 661, // 0.01kOnm IPM voltage at 30 C
|
|
|
- 386, // 0.01kOnm IPM voltage at 40 C
|
|
|
- 280, //0.01kOnm IPM voltage at 50 C
|
|
|
- 190, // 0.01kOnm IPM voltage at 60 C
|
|
|
- 136, // 0.01kOnm IPM voltage at 70 C
|
|
|
- 95, // 0.01kOnm IPM voltage at 80 C
|
|
|
- 68, // 0.01kOnm IPM voltage at 90 C
|
|
|
- 51, // 0.01kOnm IPM voltage at 100 C
|
|
|
- 37, // 0.01kOnm IPM voltage at 110 C
|
|
|
- 27 // 0.01kOnm IPM voltage at 120 C
|
|
|
+static SWORD PCB_swRTempTab[TEMPNUM] = {
|
|
|
+ 3362, // 0.01kOnm IPM voltage at 0 C
|
|
|
+ 1253, // 0.01kOnm IPM voltage at 20 C
|
|
|
+ 530, // 0.01kOnm IPM voltage at 40 C
|
|
|
+ 248, // 0.01kOnm IPM voltage at 60 C
|
|
|
+ 127, // 0.01kOnm IPM voltage at 80 C
|
|
|
+ 69, // 0.01kOnm IPM voltage at 100 C
|
|
|
+ 40, //120C
|
|
|
};
|
|
|
|
|
|
-static SWORD PCB_swRTempCofTab[PCB_TEMP_NUM-1] = {
|
|
|
- 0,0,0,0,0,0,0,0,0,0,0,0
|
|
|
+static SWORD PCB_swRTempCofTab[TEMPNUM] = {
|
|
|
+ -10, // Q10 0-19 Coef of R
|
|
|
+ -28, // Q10 20-39 Coef of R
|
|
|
+ -72, // Q10 40-59 Coef of R
|
|
|
+ -167, // Q10 60-79 Coef of R
|
|
|
+ -349, // Q10 80-99 Coef of R
|
|
|
+ -696, // Q10 100-119
|
|
|
+ -1301,// Q10 120-139
|
|
|
};
|
|
|
-
|
|
|
-static volatile SWORD TorqTempReg[TORQ_TEMP_NUM]= {
|
|
|
-3301, //-11 C
|
|
|
-2690, //8 C
|
|
|
-1802, //28 C
|
|
|
-1368, //40 C
|
|
|
-899, //55 C
|
|
|
-580, //69 C
|
|
|
-376 //85 C
|
|
|
+/* motor NTC intercept array */
|
|
|
+SLONG q10_motor_tmp_CurCalibCoef[CURCALIBNUM] = {
|
|
|
+ 112056, // 70-81 Q10
|
|
|
+ 125480, // 81-91
|
|
|
+ 139284, // 92-102
|
|
|
+ 152248, // 103-113
|
|
|
+ 166113, // 114-124
|
|
|
+ 178913, // 125-135
|
|
|
+ 198400, // 136-146
|
|
|
};
|
|
|
-static volatile SWORD TorqTemp[TORQ_TEMP_NUM]= {
|
|
|
--1083, //unit: 0.01C
|
|
|
-843,
|
|
|
-2830,
|
|
|
-3997,
|
|
|
-5460,
|
|
|
-6930,
|
|
|
-8453
|
|
|
+/* motor NTC resistance */
|
|
|
+static SWORD motor_swRTempTab[TEMPNUM] = {
|
|
|
+ 223, // 0.01kOnm IPM voltage at 70 C
|
|
|
+ 163, // 0.01kOnm IPM voltage at 81 C
|
|
|
+ 120, // 0.01kOnm IPM voltage at 92 C
|
|
|
+ 91, // 0.01kOnm IPM voltage at 103 C
|
|
|
+ 69, // 0.01kOnm IPM voltage at 114 C
|
|
|
+ 54, // 0.01kOnm IPM voltage at 125 C
|
|
|
+ 43, //0.01kOnm IPM voltage at 136 C
|
|
|
};
|
|
|
-static volatile SWORD TorqTempCof[TORQ_TEMP_NUM-1]= {
|
|
|
- 0,0,0,0,0,0
|
|
|
+/* motor NTC fitting slope array */
|
|
|
+static SWORD q10_motor_swRTempCofTab[TEMPNUM] = {
|
|
|
+ -182, // Q10 70-81 Coef of R
|
|
|
+ -263, // Q10 81-91 Coef of R
|
|
|
+ -378, // Q10 92-102 Coef of R
|
|
|
+ -519, // Q10 103-113 Coef of R
|
|
|
+ -715, // Q10 114-124 Coef of R
|
|
|
+ -947, //Q10 125-135
|
|
|
+ -1393, //Q10 136-146
|
|
|
};
|
|
|
+
|
|
|
+SWORD tmp_PcbTemp = 0;
|
|
|
+SWORD tmp_MotTemp = 0;
|
|
|
/***************************************************************
|
|
|
Function: TempInit;
|
|
|
Description: cadence frequency get initialization
|
|
@@ -114,31 +97,13 @@ static volatile SWORD TorqTempCof[TORQ_TEMP_NUM-1]= {
|
|
|
****************************************************************/
|
|
|
void TempInit(void)
|
|
|
{
|
|
|
- UWORD i = 0;
|
|
|
-
|
|
|
-#if((MOTOR_ID_SEL == MOTOR_WELLING_MTB_36V) || (MOTOR_ID_SEL == MOTOR_WELLING_MTB_48V))
|
|
|
- for(i = 0 ; i < PCB_TEMP_NUM ;i ++)
|
|
|
- {
|
|
|
- PCB_swRTempTab[i] = PCB_swRTempTab_MTB[i] ;
|
|
|
- }
|
|
|
-#elif((MOTOR_ID_SEL == MOTOR_WELLING_CITY_36V) || (MOTOR_ID_SEL == MOTOR_WELLING_CITY_48V))
|
|
|
- for(i = 0 ; i < PCB_TEMP_NUM ;i ++)
|
|
|
- {
|
|
|
- PCB_swRTempTab[i] = PCB_swRTempTab_CITY[i] ;
|
|
|
- }
|
|
|
-#endif
|
|
|
-
|
|
|
- for (i = 0; i < (PCB_TEMP_NUM - 1); i++)
|
|
|
+#if 0
|
|
|
+ UWORD CNT = 0;
|
|
|
+ for (CNT = 0; CNT < (TEMPNUM - 1); CNT++)
|
|
|
{
|
|
|
- PCB_swRTempCofTab[i] = (SWORD)(((SLONG)10 << 10) / (PCB_swRTempTab[i] - PCB_swRTempTab[i+ 1])); //Q10
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
-// for (i = 0; i < (TORQ_TEMP_NUM - 1); i++)
|
|
|
-// {
|
|
|
-// TorqTempCof[i] = (((SLONG)TorqTemp[i+1] - (SLONG)TorqTemp[i]) << 10) / (TorqTempReg[i] - TorqTempReg[i+1]) ; //Q10
|
|
|
-// }
|
|
|
-
|
|
|
+ PCB_swRTempCofTab[CNT] = ((SLONG)20 << 10) / (PCB_swRTempTab[CNT + 1] - PCB_swRTempTab[CNT]);
|
|
|
+ }
|
|
|
+#endif
|
|
|
}
|
|
|
|
|
|
/***************************************************************
|
|
@@ -150,151 +115,107 @@ void TempInit(void)
|
|
|
Subroutine Call: N/A;
|
|
|
Reference: N/A
|
|
|
****************************************************************/
|
|
|
-SWORD tmp_PcbTemp = 0;
|
|
|
-//void PcbTempCal(SWORD PcbR)
|
|
|
-//{
|
|
|
-// if (PcbR >= PCB_swRTempTab[temp_0])
|
|
|
-// {
|
|
|
-// tmp_PcbTemp = 0;
|
|
|
-// }
|
|
|
-// else if (PcbR < PCB_swRTempTab[temp_0] && PcbR >= PCB_swRTempTab[temp_20])
|
|
|
-// {
|
|
|
-// tmp_PcbTemp = 0 + (((PcbR - PCB_swRTempTab[temp_0]) * PCB_swRTempCofTab[temp_coef_0_20]) >> 10);
|
|
|
-// }
|
|
|
-// else if (PcbR < PCB_swRTempTab[temp_20] && PcbR >= PCB_swRTempTab[temp_40])
|
|
|
-// {
|
|
|
-// tmp_PcbTemp = 20 + (((PcbR - PCB_swRTempTab[temp_20]) * PCB_swRTempCofTab[temp_coef_20_40]) >> 10);
|
|
|
-// }
|
|
|
-// else if (PcbR < PCB_swRTempTab[temp_40] && PcbR >= PCB_swRTempTab[temp_60])
|
|
|
-// {
|
|
|
-// tmp_PcbTemp = 40 + (((PcbR - PCB_swRTempTab[temp_40]) * PCB_swRTempCofTab[temp_coef_40_60]) >> 10);
|
|
|
-// }
|
|
|
-// else if (PcbR < PCB_swRTempTab[temp_60] && PcbR >= PCB_swRTempTab[temp_80])
|
|
|
-// {
|
|
|
-// tmp_PcbTemp = 60 + (((PcbR - PCB_swRTempTab[temp_60]) * PCB_swRTempCofTab[temp_coef_60_80]) >> 10);
|
|
|
-// }
|
|
|
-// else if (PcbR < PCB_swRTempTab[temp_80] && PcbR >= PCB_swRTempTab[temp_100])
|
|
|
-// {
|
|
|
-// tmp_PcbTemp = 80 + (((PcbR - PCB_swRTempTab[temp_80]) * PCB_swRTempCofTab[temp_coef_80_100]) >> 10);
|
|
|
-// }
|
|
|
-// else if (PcbR < PCB_swRTempTab[temp_100])
|
|
|
-// {
|
|
|
-// tmp_PcbTemp = 100 +(((PcbR - PCB_swRTempTab[temp_100]) * PCB_swRTempCofTab[temp_coef_100_120]) >> 10);
|
|
|
-// }
|
|
|
-// else
|
|
|
-// {}
|
|
|
-//}
|
|
|
-static SWORD coeftest = 0 ;
|
|
|
+#if 0
|
|
|
void PcbTempCal(SWORD PcbR)
|
|
|
{
|
|
|
if (PcbR >= PCB_swRTempTab[temp_0])
|
|
|
{
|
|
|
tmp_PcbTemp = 0;
|
|
|
- coeftest = 2 ;
|
|
|
}
|
|
|
- else if (PcbR >= PCB_swRTempTab[temp_10])
|
|
|
+ else if (PcbR < PCB_swRTempTab[temp_0] && PcbR >= PCB_swRTempTab[temp_20])
|
|
|
{
|
|
|
- tmp_PcbTemp = 10 - (((PcbR - PCB_swRTempTab[temp_10]) * PCB_swRTempCofTab[temp_coef_0_10]) >> 10);
|
|
|
- coeftest = PCB_swRTempCofTab[temp_coef_0_10] ;
|
|
|
-
|
|
|
+ tmp_PcbTemp = 0 + (((PcbR - PCB_swRTempTab[temp_0]) * PCB_swRTempCofTab[temp_coef_0_20]) >> 10);
|
|
|
}
|
|
|
- else if (PcbR >= PCB_swRTempTab[temp_20])
|
|
|
+ else if (PcbR < PCB_swRTempTab[temp_20] && PcbR >= PCB_swRTempTab[temp_40])
|
|
|
{
|
|
|
- tmp_PcbTemp = 20 - (((PcbR - PCB_swRTempTab[temp_20]) * PCB_swRTempCofTab[temp_coef_10_20]) >> 10);
|
|
|
- coeftest = PCB_swRTempCofTab[temp_coef_10_20] ;
|
|
|
+ tmp_PcbTemp = 20 + (((PcbR - PCB_swRTempTab[temp_20]) * PCB_swRTempCofTab[temp_coef_20_40]) >> 10);
|
|
|
}
|
|
|
- else if (PcbR >= PCB_swRTempTab[temp_30])
|
|
|
+ else if (PcbR < PCB_swRTempTab[temp_40] && PcbR >= PCB_swRTempTab[temp_60])
|
|
|
{
|
|
|
- tmp_PcbTemp = 30 - (((PcbR - PCB_swRTempTab[temp_30]) * PCB_swRTempCofTab[temp_coef_20_30]) >> 10);
|
|
|
- coeftest = PCB_swRTempCofTab[temp_coef_20_30] ;
|
|
|
+ tmp_PcbTemp = 40 + (((PcbR - PCB_swRTempTab[temp_40]) * PCB_swRTempCofTab[temp_coef_40_60]) >> 10);
|
|
|
}
|
|
|
- else if (PcbR >= PCB_swRTempTab[temp_40])
|
|
|
+ else if (PcbR < PCB_swRTempTab[temp_60] && PcbR >= PCB_swRTempTab[temp_80])
|
|
|
{
|
|
|
- tmp_PcbTemp = 40 - (((PcbR - PCB_swRTempTab[temp_40]) * PCB_swRTempCofTab[temp_coef_30_40]) >> 10);
|
|
|
- coeftest = PCB_swRTempCofTab[temp_coef_30_40] ;
|
|
|
+ tmp_PcbTemp = 60 + (((PcbR - PCB_swRTempTab[temp_60]) * PCB_swRTempCofTab[temp_coef_60_80]) >> 10);
|
|
|
}
|
|
|
- else if (PcbR >= PCB_swRTempTab[temp_50])
|
|
|
+ else if (PcbR < PCB_swRTempTab[temp_80] && PcbR >= PCB_swRTempTab[temp_100])
|
|
|
{
|
|
|
- tmp_PcbTemp = 50 - (((PcbR - PCB_swRTempTab[temp_50]) * PCB_swRTempCofTab[temp_coef_40_50]) >> 10);
|
|
|
- coeftest = PCB_swRTempCofTab[temp_coef_40_50] ;
|
|
|
+ tmp_PcbTemp = 80 + (((PcbR - PCB_swRTempTab[temp_80]) * PCB_swRTempCofTab[temp_coef_80_100]) >> 10);
|
|
|
}
|
|
|
- else if (PcbR >= PCB_swRTempTab[temp_60])
|
|
|
+ else if (PcbR < PCB_swRTempTab[temp_100])
|
|
|
{
|
|
|
- tmp_PcbTemp = 60 - (((PcbR - PCB_swRTempTab[temp_60]) * PCB_swRTempCofTab[temp_coef_50_60]) >> 10);
|
|
|
- coeftest = PCB_swRTempCofTab[temp_coef_50_60] ;
|
|
|
+ tmp_PcbTemp = 100;
|
|
|
}
|
|
|
- else if (PcbR >= PCB_swRTempTab[temp_70])
|
|
|
+ else
|
|
|
+ {}
|
|
|
+}
|
|
|
+#endif
|
|
|
+
|
|
|
+/*!
|
|
|
+ * @brief Fault state called in fast state machine
|
|
|
+ *
|
|
|
+ * @param 1)current NTC resistance 2) NTC resistance array
|
|
|
+ * 3)fitting slope array 4)intercept array 5)140C correspond resistance
|
|
|
+ *
|
|
|
+ * @return current temperature
|
|
|
+ */
|
|
|
+
|
|
|
+#if 1
|
|
|
+SWORD TempCal(SWORD PcbR, SWORD *ptemp_tab, SWORD *p_temp_coef, SLONG *p_cali_coef, SWORD temp_140)
|
|
|
+{
|
|
|
+ SWORD per_temp;
|
|
|
+ if (PcbR >= *(ptemp_tab+temp_0))
|
|
|
{
|
|
|
- tmp_PcbTemp = 70 - (((PcbR - PCB_swRTempTab[temp_70]) * PCB_swRTempCofTab[temp_coef_60_70]) >> 10);
|
|
|
- coeftest = PCB_swRTempCofTab[temp_coef_60_70] ;
|
|
|
+ per_temp = 0;
|
|
|
}
|
|
|
- else if (PcbR >= PCB_swRTempTab[temp_80])
|
|
|
+ else if (PcbR < *(ptemp_tab+temp_0) && PcbR >= *(ptemp_tab+temp_20))
|
|
|
{
|
|
|
- tmp_PcbTemp = 80 - (((PcbR - PCB_swRTempTab[temp_80]) * PCB_swRTempCofTab[temp_coef_70_80]) >> 10);
|
|
|
- coeftest = PCB_swRTempCofTab[temp_coef_70_80] ;
|
|
|
+ per_temp = (PcbR * (*(p_temp_coef+temp_0)) + (*(p_cali_coef+temp_0))) >> 10;
|
|
|
}
|
|
|
- else if (PcbR >= PCB_swRTempTab[temp_90])
|
|
|
+ else if (PcbR < *(ptemp_tab+temp_20) && PcbR >= *(ptemp_tab+temp_40))
|
|
|
{
|
|
|
- tmp_PcbTemp = 90 - (((PcbR - PCB_swRTempTab[temp_90]) * PCB_swRTempCofTab[temp_coef_80_90]) >> 10);
|
|
|
- coeftest = PCB_swRTempCofTab[temp_coef_80_90] ;
|
|
|
+ per_temp = (PcbR * (*(p_temp_coef+temp_20)) + (*(p_cali_coef+temp_20))) >> 10;
|
|
|
}
|
|
|
- else if (PcbR >= PCB_swRTempTab[temp_100])
|
|
|
+ else if (PcbR < *(ptemp_tab+temp_40) && PcbR >= *(ptemp_tab+temp_60))
|
|
|
{
|
|
|
- tmp_PcbTemp = 100 - (((PcbR - PCB_swRTempTab[temp_100]) * PCB_swRTempCofTab[temp_coef_90_100]) >> 10);
|
|
|
- coeftest = PCB_swRTempCofTab[temp_coef_90_100] ;
|
|
|
+ per_temp = (PcbR * (*(p_temp_coef+temp_40)) + (*(p_cali_coef+temp_40))) >> 10;
|
|
|
}
|
|
|
- else if (PcbR >= PCB_swRTempTab[temp_110])
|
|
|
+ else if (PcbR < *(ptemp_tab+temp_60) && PcbR >= *(ptemp_tab+temp_80))
|
|
|
{
|
|
|
- tmp_PcbTemp = 110 - (((PcbR - PCB_swRTempTab[temp_110]) * PCB_swRTempCofTab[temp_coef_100_110]) >> 10);
|
|
|
- coeftest = PCB_swRTempCofTab[temp_coef_100_110] ;
|
|
|
+ per_temp = (PcbR * (*(p_temp_coef+temp_60)) + (*(p_cali_coef+temp_60))) >> 10;
|
|
|
}
|
|
|
- else if (PcbR >= PCB_swRTempTab[temp_120])
|
|
|
+ else if (PcbR < *(ptemp_tab+temp_80) && PcbR >= *(ptemp_tab+temp_100))
|
|
|
{
|
|
|
- tmp_PcbTemp = 120 - (((PcbR - PCB_swRTempTab[temp_120]) * PCB_swRTempCofTab[temp_coef_110_120]) >> 10);
|
|
|
- coeftest = PCB_swRTempCofTab[temp_coef_110_120] ;
|
|
|
+ per_temp = (PcbR * (*(p_temp_coef+temp_80)) + (*(p_cali_coef+temp_80))) >> 10;
|
|
|
+ }
|
|
|
+ else if (PcbR < *(ptemp_tab+temp_100) && PcbR >= *(ptemp_tab+temp_120))
|
|
|
+ {
|
|
|
+ per_temp = (PcbR * (*(p_temp_coef+temp_100)) + (*(p_cali_coef+temp_100))) >> 10;
|
|
|
+ }
|
|
|
+ else if(PcbR < *(ptemp_tab+temp_120))
|
|
|
+ {
|
|
|
+ per_temp = (PcbR * (*(p_temp_coef+temp_120)) + (*(p_cali_coef+temp_120))) >> 10;
|
|
|
+ }
|
|
|
+ else if(PcbR < temp_140)
|
|
|
+ {
|
|
|
+ per_temp = 150;
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
- tmp_PcbTemp = 130 ;
|
|
|
- coeftest = 1;
|
|
|
}
|
|
|
+ return per_temp;
|
|
|
}
|
|
|
-/***************************************************************
|
|
|
- Function:
|
|
|
- Description:
|
|
|
- Call by:
|
|
|
- Input Variables: N/A
|
|
|
- Output/Return Variables: N/A
|
|
|
- Subroutine Call: N/A
|
|
|
- Reference: N/A
|
|
|
-****************************************************************/
|
|
|
-//SWORD temp_swTorqTempCal(UWORD Reg)
|
|
|
-//{
|
|
|
-// SWORD Temp = 0,i = 0;
|
|
|
-//
|
|
|
-// if(Reg >= TorqTempReg[0])
|
|
|
-// {
|
|
|
-// Temp = TorqTemp[0];
|
|
|
-// }
|
|
|
-// else if(Reg < TorqTempReg[TORQ_TEMP_NUM - 1])
|
|
|
-// {
|
|
|
-// Temp = TorqTemp[TORQ_TEMP_NUM - 1];
|
|
|
-// }
|
|
|
-// else
|
|
|
-// {
|
|
|
-// for (i = 0; i < (TORQ_TEMP_NUM - 1); i++)
|
|
|
-// {
|
|
|
-// if(Reg >= TorqTempReg[i+1] && Reg < TorqTempReg[i])
|
|
|
-// {
|
|
|
-// Temp = TorqTemp[i] + ((SLONG)TorqTempCof[i] * (TorqTempReg[i] - Reg) >> 10); //Q10
|
|
|
-// break;
|
|
|
-// }
|
|
|
-// }
|
|
|
-// }
|
|
|
-//
|
|
|
-// return Temp;
|
|
|
-//}
|
|
|
-
|
|
|
+
|
|
|
+void PcbTempCal(SWORD PcbR)
|
|
|
+{
|
|
|
+ tmp_PcbTemp = TempCal(PcbR, PCB_swRTempTab, PCB_swRTempCofTab, tmp_CurCalibCoef, temp_pcb_140);
|
|
|
+}
|
|
|
+
|
|
|
+void MotorTempCal(SWORD PcbR)
|
|
|
+{
|
|
|
+ tmp_MotTemp = TempCal(PcbR, motor_swRTempTab, q10_motor_swRTempCofTab, q10_motor_tmp_CurCalibCoef, temp_motor_150);
|
|
|
+}
|
|
|
+#endif
|
|
|
/*************************************************************************
|
|
|
End of this File (EOF)!
|
|
|
Do not put anything after this part!
|