2 个版本
0.1.1 | 2024年7月27日 |
---|---|
0.1.0 | 2024年7月21日 |
#595 in 硬件支持
232 每月下载量
15KB
186 行
Embassy DHT Sensor Library
这个Rust库提供了使用Embassy框架与DHT1X和DHT2X温度和湿度传感器交互的接口。
Adafruit DHT传感器库被用作此库的参考。https://github.com/adafruit/DHT-sensor-library
注意
此库应在 发布 模式下使用。在 调试 模式下进行的测量不够准确。
支持的设备
目前仅支持Raspberry Pi Pico板。
入门指南
安装
将 embassy-dht-sensor
添加到您的 Cargo.toml
[dependencies]
embassy-dht-sensor = "0.1.0"
用法
使用Embassy初始化您的Raspberry Pi Pico板。创建一个与您的DHT传感器连接的GPIO引脚的DHTSensor实例。使用read方法获取温度和湿度读数。
示例
use embassy_executor::Spawner;
use embassy_rp::gpio::{AnyPin, Flex};
use embassy_time::{Duration, Timer};
use embassy_dht_sensor::DHTSensor;
use defmt::info;
#[embassy_executor::main]
async fn main(_spawner: Spawner) {
let p = embassy_rp::init(Default::default());
let pin = Flex::new(AnyPin::from(p.PIN_0));
let mut dht_sensor = DHTSensor::new(pin);
loop {
match dht_sensor.read() {
Ok(data) => {
info!("Temperature: {:?}, Humidity: {:?}", data.temperature, data.humidity);
},
Err(e) => {
info!("Error reading from DHT sensor: {:?}", e);
}
}
Timer::after(Duration::from_secs(1)).await;
}
}
'''
依赖关系
~4–14MB
~152K SLoC