45 lines
1.1 KiB
Rust
45 lines
1.1 KiB
Rust
use hc_sr04::{HcSr04, Unit};
|
|
|
|
let mut ultrasonic_front = HcSr04::new(
|
|
7, // TRIGGER
|
|
1, // ECHO
|
|
Some(23_f32)
|
|
).unwrap();
|
|
|
|
let mut ultrasonic_left = HcSr04::new(
|
|
0,
|
|
4,
|
|
Some(23_f32)
|
|
).unwrap();
|
|
|
|
let mut ultrasonic_right = HcSr04::new(
|
|
2,
|
|
5,
|
|
Some(23_f32)
|
|
).unwrap();
|
|
|
|
let mut ultrasonic_rear = HcSr04::new(
|
|
3,
|
|
6,
|
|
Some(23_f32)
|
|
).unwrap();
|
|
|
|
match ultrasonic_front.measure_distance(Unit::Meters).unwrap() {
|
|
Some(dist) => println!("[FRONT] Distance: {.2}m", dist),
|
|
None => println!("Object out of range"),
|
|
}
|
|
|
|
match ultrasonic_left.measure_distance(Unit::Meters).unwrap() {
|
|
Some(dist) => println!("[LEFT] Distance: {.2}m", dist),
|
|
None => println!("Object out of range"),
|
|
}
|
|
|
|
match ultrasonic_right.measure_distance(Unit::Meters).unwrap() {
|
|
Some(dist) => println!("[RIGHT] Distance: {.2}m", dist),
|
|
None => println!("Object out of range"),
|
|
}
|
|
|
|
match ultrasonic_rear.measure_distance(Unit::Meters).unwrap() {
|
|
Some(dist) => println!("[BACK] Distance: {.2}m", dist),
|
|
None => println!("Object out of range"),
|
|
} |