次の方程式があります。
//get thermistor resistor value
temp=(THERMISTOR_R0)/((temp2/temp)-1);
//get temperature value in Kelvins and convert to Celsiuis
temp=(THERMISTOR_BETA)/log(temp/(THERMISTOR_R0*exp((-THERMISTOR_BETA)/298)));
temp-=273;
desiredVoltage =((15700-(25*temp))/10);
THERMISTOR_R0
とTHERMISTOR _BETA
定数です。
temp
、temp2
およびdesiredVoltage
unsigned int であり、計算前に定義されます。
問題は、たとえば、項((temp2/temp)-1)
が 1 を下回ると、0 に切り捨てられることです。計算に大きな問題を引き起こしているため、この丸めを取り除きたいと考えています。
どうすればいいですか?