?? temp.c
字號:
#include "SPCE061A.h"
#include "M.h"
#include "SPLC501User.h"
unsigned int temp;
float Degree;
float Temp_Degree(float Vol_Value)
{
float Vol=Vol_Value;
// float Vol=0;
// float Vol=0;
int i_of_V_above,j_of_V_above;
int i_of_V_below,j_of_V_below;
int CirNum;
// float Degree;
float Deci;
// int temp;
if(Vol<0.5252)
i_of_V_above=0;
else
if(Vol>=0.5252 && Vol<0.6955)i_of_V_above=2;
else
if(Vol>=0.6955 && Vol<1.0712)i_of_V_above=3;
else
if(Vol>=1.0712 && Vol<1.4377)i_of_V_above=4;
else
if(Vol>=1.4377 && Vol<1.8007)i_of_V_above=5;
else
if(Vol>=1.8007 && Vol<2.2065)i_of_V_above=6;
else
if(Vol>=2.2065 && Vol<2.5772)i_of_V_above=7;
else
if(Vol>=2.5772 && Vol<2.9305)i_of_V_above=8;
else
if(Vol>=2.9305 && Vol<3.2417)i_of_V_above=9;
else
i_of_V_above=10;
switch(i_of_V_above)
{
case 0:j_of_V_above=2;break;
case 2:
for(CirNum=6;CirNum<=9;CirNum++)
if(Vol<=Temp_Volt[i_of_V_above][CirNum]){j_of_V_above=CirNum;break;}
if(CirNum==10){i_of_V_above=3;j_of_V_above=0;}//如果比[2][9]大,那么一定比[3][0]小,下面同理
break;
case 3:
for(CirNum=1;CirNum<=9;CirNum++)
if(Vol<=Temp_Volt[i_of_V_above][CirNum]){j_of_V_above=CirNum;break;}
if(CirNum==10){i_of_V_above=4;j_of_V_above=0;}
break;
case 4:
for(CirNum=1;CirNum<=9;CirNum++)
if(Vol<=Temp_Volt[i_of_V_above][CirNum]){j_of_V_above=CirNum;break;}
if(CirNum==10){i_of_V_above=5;j_of_V_above=0;}
break;
case 5:
for(CirNum=1;CirNum<=9;CirNum++)
if(Vol<=Temp_Volt[i_of_V_above][CirNum]){j_of_V_above=CirNum;break;}
if(CirNum==10){i_of_V_above=6;j_of_V_above=0;}
break;
case 6:
for(CirNum=1;CirNum<=9;CirNum++)
if(Vol<=Temp_Volt[i_of_V_above][CirNum]){j_of_V_above=CirNum;break;}
if(CirNum==10){i_of_V_above=7;j_of_V_above=0;}
break;
case 7:
for(CirNum=1;CirNum<=9;CirNum++)
if(Vol<=Temp_Volt[i_of_V_above][CirNum]){j_of_V_above=CirNum;break;}
if(CirNum==10){i_of_V_above=8;j_of_V_above=0;}
break;
case 8:
for(CirNum=1;CirNum<=9;CirNum++)
if(Vol<=Temp_Volt[i_of_V_above][CirNum]){j_of_V_above=CirNum;break;}
if(CirNum==10){i_of_V_above=9;j_of_V_above=0;}
break;
case 9:
for(CirNum=1;CirNum<=9;CirNum++)
if(Vol<=Temp_Volt[i_of_V_above][CirNum]){j_of_V_above=CirNum;break;}
break;
case 10:j_of_V_above=0;break;
default:
break;
}
if(j_of_V_above!=0)
{
i_of_V_below=i_of_V_above;
j_of_V_below=j_of_V_above-1;
}
else
{
i_of_V_below=i_of_V_above-1;
j_of_V_below=9;
}
if(i_of_V_above==0 && j_of_V_above==2)
return Degree=0.0;
else if(i_of_V_above==10 && j_of_V_above==0)
{
Deci=(Vol-Temp_Volt[i_of_V_below][j_of_V_below])/
(3.2850f-Temp_Volt[i_of_V_below][j_of_V_below]);
temp=(int)(Deci*10);
return Degree=i_of_V_below*10+j_of_V_below+(float)(temp)/10;
}
else
{
Deci=(Vol-Temp_Volt[i_of_V_below][j_of_V_below])/
(Temp_Volt[i_of_V_above][j_of_V_above]-Temp_Volt[i_of_V_below][j_of_V_below]);
temp=(int)(Deci*10);
return Degree=i_of_V_below*10+j_of_V_below+(float)(temp)/10;
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -