fixed w1 thermosensor reading algorithm in means of adding a loop and… #31

Merged
senaduka merged 1 commits from fix_w1_thermo_readings into master 2016-12-19 09:47:04 +01:00

View File

@@ -1,25 +1,29 @@
import re
def read_one_thermo(filename):
try:
NO_OF_DECIMALS = 3
textfile = open(filename, 'r')
filetext = textfile.read()
textfile.close()
matches = re.findall("t=(\-?)(\d+)", filetext)
sign = -1 if matches[0][0] == '-' else 1
whole_reading = matches[0][1]
first_part = matches[0][1][0:-NO_OF_DECIMALS]
second_part = matches[0][1][-NO_OF_DECIMALS:]
first_part = '0' if first_part == '' else first_part
return (int(first_part) + (int(second_part) / (10.0 ** NO_OF_DECIMALS) )) * sign
for x in range(0, 3):
textfile = open(filename, 'r')
filetext = textfile.read()
textfile.close()
if 'YES' in filetext:
matches = re.findall("t=(\-?)(\d+)", filetext)
sign = -1 if matches[0][0] == '-' else 1
whole_reading = matches[0][1]
first_part = matches[0][1][0:-NO_OF_DECIMALS]
second_part = matches[0][1][-NO_OF_DECIMALS:]
first_part = '0' if first_part == '' else first_part
return (int(first_part) + (int(second_part) / (10.0 ** NO_OF_DECIMALS) )) * sign
print 'error'
print e
return -101.0
except Exception as e:
print 'errror'
print e
return -100.0
def read_many_thermo(filenames):
result = []
for filename in list(filenames):
@@ -27,3 +31,4 @@ def read_many_thermo(filenames):
continue
result.append(read_one_thermo(filename))
return result