3 个版本
0.1.2 | 2024年5月2日 |
---|---|
0.1.1 | 2023年3月25日 |
0.1.0 | 2022年9月23日 |
#1306 in 硬件支持
18KB
85 行
HC-SR04
本crate提供用于Raspberry Pi上HC-SR04/HC-SR04P超声波距离传感器的驱动程序,使用rppal访问Raspberry Pi的GPIO。
示例
使用示例可以在示例文件夹中找到。
测量距离
use hc_sr04::{HcSr04, Unit};
// Initialize driver.
let mut ultrasonic = HcSr04::new(
24, // TRIGGER -> Gpio pin 24
23, // ECHO -> Gpio pin 23
Some(23_f32) // Ambient temperature (if `None` defaults to 20.0C)
).unwrap();
// Perform distance measurement, specifying measuring unit of return value.
match ultrasonic.measure_distance(Unit::Meters).unwrap() {
Some(dist) => println!("Distance: {.2}m", dist),
None => println!("Object out of range"),
}
校准测量
可以使用此库公开的HcSr04::calibrate
方法在运行时校准距离测量,传递当前环境温度作为f32
。
use hc_sr04::{HcSr04, Unit};
// Initialize driver.
let mut ultrasonic = HcSr04::new(24, 23, None).unwrap();
// Calibrate measurement with ambient temperature.
ultrasonic.calibrate(23_f32);
// Perform distance measurement.
match ultrasonic.measure_distance(Unit::Centimeters).unwrap() {
Some(dist) => println!("Distance: {.1}cm", dist),
None => println!("Object out of range"),
}
依赖项
~360KB