2
0
mirror of https://github.com/fhem/fhem-mirror.git synced 2025-04-15 16:19:11 +00:00

52_I2C_LM75A: overflow fixed

git-svn-id: https://svn.fhem.de/fhem/trunk@16302 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
klausw 2018-03-01 18:21:42 +00:00
parent 3f6b07b2c1
commit 56a1484dfd

View File

@ -193,14 +193,18 @@ sub I2C_LM75A_GetTemp ($$) {
my @raw = split(" ",$rawdata);
my $temperature = 0;
if(($raw[0] & 0x80) > 0) {
$temperature = 0xffffff00;
}
# if(($raw[0] & 0x80) > 0) {
# $temperature = 0xffffff00;
# }
# $temperature |= ($raw[0] & 0x7f) << 1;
# $temperature |= (($raw[1] >> 7) & 1);
my $temperature_11_bit = ($raw[0]<<8 | $raw[1]) >> 5; # Compute 11-bit temperature output value
my $temperature_11_bit = ($raw[0] << 8 | $raw[1]) >> 5; # Compute 11-bit temperature output value
$temperature = ($temperature_11_bit) * 0.125; # Compute temperature in °C
if(($raw[0] & 0x80) > 0) { # check for negative value
# $temperature *= -1;
$temperature -= 256.000;
}
# $temperature = $temperature / 2;
Log3 $hash, 5, "temperature: $temperature";