2

私は Occidentalis v0.2 を使用しており、Python スクリプトで modprobe を呼び出して、1 つの DS18B20 から温度を読み取っています!

私はPythonも初めてなので、我慢してください。これは私のコードの小さな部分です:

with open(path, "r") as f:
  contentArray = []
  for line in f:
    contentArray.append (line)
f.close

s = contentArray[0]
if s.find('YES'):
  return contentArray[0]
else:
  return 88

例: contentArray[0] は次のように結果を返すことができます:

68 01 4b 46 7f ff 0c 10 05 : crc=3e NO

また:

68 01 4b 46 7f ff 08 10 05 : crc=05 YES

上記のコードが間違っている場合、どうすればYES? これは正しい CRC を示しているためです。はいの場合は、実際に戻りたいですcontentArray[1](正しい温度値が含まれています)。

4

2 に答える 2

1

解決したので、コードに次の変更を加える必要がありました。

s = contentArray[0]
if s.find('YES') != -1:
  return contentArray[0]
else:
  return 88
于 2012-09-11T13:49:41.820 に答える