drivers/onewire/ds18x20: Fix negative temperature calc for DS18B20.
This commit is contained in:
parent
044f96c330
commit
b2611d6be3
@ -93,6 +93,9 @@ class DS18X20(object):
|
||||
temp = temp_read - 0.25 + (count_per_c - count_remain) / count_per_c
|
||||
return temp
|
||||
elif rom0 == 0x28:
|
||||
return (temp_msb << 8 | temp_lsb) / 16
|
||||
temp = (temp_msb << 8 | temp_lsb) / 16
|
||||
if (temp_msb & 0xf8) == 0xf8: # for negative temperature
|
||||
temp -= 0x1000
|
||||
return temp
|
||||
else:
|
||||
assert False
|
||||
|
Loading…
x
Reference in New Issue
Block a user