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:
parent
3f6b07b2c1
commit
56a1484dfd
@ -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";
|
||||
|
Loading…
x
Reference in New Issue
Block a user