//热敏电阻测试,相应温度相似。MF52D103F3435 void Get_BQ1_1_Temp(void) { double d,Tempval_1; float Rt=0; float Rp=10000; float T2=273.15 25; // float Bx=3380; float Bx=3435; float Ka=273.15; unsigned char readTempbuf[2]; double TempRes=0; unsigned char Tempbuf[1]; readTempbuf[1]=BQ76930_AFEReg.TS2_Byte.TS2_HI; readTempbuf[0]=BQ76930_AFEReg.TS2_Byte.TS2_LO; TempRes = ((u16)readTempbuf[1] << 8 ) | readTempbuf[0]; TempRes = (10000*(TempRes*382/1000))/(3300-(TempRes*382/1000)); TempRes= 1/(1/TempRes -(double)1/10000); printf("=========TempRes: %u (OM)\r\n",TempRes); Tempval_1 = 1/(1/T2 (log(TempRes/Rp))/Bx)- Ka 0.5; // Batteryval[7] = Tempval_1; printf("TempRes2 : %.2f\n",Tempval_1); readTempbuf[1]=BQ76930_AFEReg.TS1_Byte.TS1_HI; readTempbuf[0]=BQ76930_AFEReg.TS1_Byte.TS1_LO; TempRes = ((u16)readTempbuf[1] << 8 ) | readTempbuf[0]; TempRes = (10000*(TempRes*382/1000))/(3300-(TempRes*382/1000)); TempRes= 1/(1/TempRes -(double)1/10000); //本身并 // printf("TempRes1: %u (OM)\r\n",TempRes); //Tempval_1 = 1/(1/T2 (log(TempRes))/Bx)- Ka 0.5; Tempval_1 = 1/(1/T2 (log(TempRes/Rp))/Bx)- Ka 0.5; // Batteryval[7] = Tempval_1; printf("TempRes2: %.2f\n",Tempval_1); }
