前提・実現したいこと
Pythonで気象データBME280を使用してデータを収集しています。
I2Cで直接BME280と接続する場合は問題なく動作していますが
USBシリアル経由でデータを入力すると
下記のインデックスエラーになり困っています。
発生している問題・エラーメッセージ
エラーが時々発生する事。
何度も処理している所で、Indexは数値指定でOver
する事が無いはずなんですが?
line 369, in get_data_bme280
hum_raw = (data[6] << 8) | data[7]
IndexError: list index out of range
該当のソースコード
pres_raw = (data[0] << 12) | (data[1] << 4) | (data[2] >> 4) temp_raw = (data[3] << 12) | (data[4] << 4) | (data[5] >> 4) hum_raw = (data[6] << 8) | data[7] <==ここがline 369 です。
この前にdataへは8個入力しております。
試したこと
I2Cで直接入力するとエラー無く正常に動作します。
補足情報(FW/ツールのバージョンなど)
Python3.5、RaspberryPi ZWで発生。3Bでも頻度は少ないが発生します。
OSは、Rasbian stretch
回答2件
あなたの回答
tips
プレビュー