Diesmal habe ich auf diese Seite verwiesen.
Holen Sie sich mit Razzpie Temperatur und Luftfeuchtigkeit vom Sensor!
Es war sehr leicht zu verstehen, aber als ich den Code so schrieb, wie er war, bekam ich einen Fehler.
Traceback (most recent call last):
File "SHT31D.py", line 16, in <module>
i2c.write_byte_data(i2c_addr, 0x21, 0x30)
OSError: [Errno 121] Remote I/O error
Als ich es nachgeschlagen habe, scheint es, dass I2C nicht verwendet werden kann, weil die Slave-Adresse falsch ist.
$ sudo i2cdetect -y 1
Ich habe das im Terminal eingegeben
Ich bin mir nicht sicher, wie ich die Tabelle jetzt lesen soll. Es stellt sich heraus, dass das Gerät an I2C angeschlossen ist und es die Adresse 44 zu sein scheint. 14. Zeile
i2c_addr = 0x45
Von
i2c_addr = 0x44
Es hat funktioniert, als ich es geändert habe. ... Fehler, nicht Zeile 16 ...
Danach habe ich Rechtschreibfehler korrigiert und es hat funktioniert.
Ich war mir nicht sicher, warum die Adressen unterschiedlich waren Das zukünftige Problem ist klar.