ESP32+MicroPythonで温湿度センサAM2320を扱う
1814 ワード
結論から言うと,dhtモジュールでDHT22の1-Wireモードとして扱えば読み取れます.
接続方法
AM2320 | ESP32 |
---|---|
1: VDD | 3V3 |
2: SDA | 任意のIOピン+プルアップ(3V3と~10kΩ抵抗で接続) |
3: GND | GND |
4: SCL | GND |
読み取り
>>> import machine,dht
>>> d = dht.DHT22(machine.Pin(21))
>>> d.measure()
>>> d.temperature()
24.7
>>> d.humidity()
52.4
なお,プルアップ出来ていない等で通信に失敗すると下記のようにタイムアウトエラーになります.
>>> d.measure()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "dht.py", line 16, in measure
OSError: [Errno 110] ETIMEDOUT
参考
AM2320の操作例を探していたところ,上記チュートリアルにAM2320のピン説明が載っていて,もしやと思って試したらあっさり読めました.I2Cでゴリゴリ書かなくて済んだ.
Author And Source
この問題について(ESP32+MicroPythonで温湿度センサAM2320を扱う), 我々は、より多くの情報をここで見つけました https://qiita.com/no_clock/items/9fd7d1820676cd6de9e0著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .