je parle de ce calcul là , datah et datal contient les bonne valeurs en hexa mais temp_c=0°C ce qui est pas noramal et si la température du capteur est négative temp_c=-4096.
Code:datah=i2c_Read(0); datal==i2c_Read(1); StopI2C2(); if(datah>=0x80) {//if sign bit is set, then temp is negative temp_c = (float)((datah<<8 + datal) - 65536) * 0.0625; return(temp_c); } else { temp_c = (float)((datah<<8) + (datal)) * 0.0625; return(temp_c); } }
-----