タイトルに記載されているエラーの回答を探していましたが、まだ回答を得られなかったのは初めてです。Raspberry pi にアナログ データを読み取らせようとしていますが、ターミナル ウィンドウでコードを実行すると、「IOError: [Errno 5] Input/output error」が表示されます。
アナログデータを読み取るために使用するコードを以下に示します。PCF8591 ADCコンバーターを使用しています。
from smbus import SMBus
bus = SMBus(0)
print "read a/d press ctrl + c to stop"
bus.write_byte(0x48, 0)
lastval = -1
while True:
reada = bus.read_byte(0x48)
if(abs(lastval-reada) > 2):
print(reada)
lastval=reada
raspberry pi でバージョンが変更されたことが原因である可能性があることを理解しており、SMBus(0) を SMBus(1) に変更する必要があります。このために、改訂版ではないRPiバージョンをチェックしました。それでも、SMBus 番号を変更してプログラムを実行しようとしましたが、うまくいきませんでした。
私が得るエラーは以下のとおりです。
Traceback (most recent call last):
File "analogread.py", line 7, in <module>
bus.write_byte(0x48, 0)
IOError: [Errno 5] Input/output error
どんな助けでも大歓迎です。これは、実行しようとしている私のより大きなプロジェクトの基本ブロックです。ですから、私が物事をうまく機能させるほど、アプリケーションをより適切に構築できます。ありがとうございました