mirror of
https://github.com/embassy-rs/embassy.git
synced 2024-11-25 08:12:30 +00:00
formatting
This commit is contained in:
parent
ad66dc3aab
commit
431a60ca63
@ -3,7 +3,6 @@
|
|||||||
use core::marker::PhantomData;
|
use core::marker::PhantomData;
|
||||||
|
|
||||||
use embassy_hal_internal::{into_ref, PeripheralRef};
|
use embassy_hal_internal::{into_ref, PeripheralRef};
|
||||||
use embassy_sync::channel;
|
|
||||||
|
|
||||||
use super::low_level::{CountingMode, InputCaptureMode, InputTISelection, Timer};
|
use super::low_level::{CountingMode, InputCaptureMode, InputTISelection, Timer};
|
||||||
use super::{Channel, Channel1Pin, Channel2Pin, Channel3Pin, Channel4Pin, GeneralInstance4Channel};
|
use super::{Channel, Channel1Pin, Channel2Pin, Channel3Pin, Channel4Pin, GeneralInstance4Channel};
|
||||||
|
@ -6,7 +6,7 @@ license = "MIT OR Apache-2.0"
|
|||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
# Change stm32f429zi to your chip name, if necessary.
|
# Change stm32f429zi to your chip name, if necessary.
|
||||||
embassy-stm32 = { version = "0.1.0", path = "../../embassy-stm32", features = ["defmt", "stm32f429zi", "unstable-pac", "memory-x", "time-driver-any", "exti", "chrono"] }
|
embassy-stm32 = { version = "0.1.0", path = "../../embassy-stm32", features = ["defmt", "stm32f446re", "unstable-pac", "memory-x", "time-driver-any", "exti", "chrono"] }
|
||||||
embassy-sync = { version = "0.5.0", path = "../../embassy-sync", features = ["defmt"] }
|
embassy-sync = { version = "0.5.0", path = "../../embassy-sync", features = ["defmt"] }
|
||||||
embassy-executor = { version = "0.5.0", path = "../../embassy-executor", features = ["task-arena-size-32768", "arch-cortex-m", "executor-thread", "executor-interrupt", "defmt", "integrated-timers"] }
|
embassy-executor = { version = "0.5.0", path = "../../embassy-executor", features = ["task-arena-size-32768", "arch-cortex-m", "executor-thread", "executor-interrupt", "defmt", "integrated-timers"] }
|
||||||
embassy-time = { version = "0.3.0", path = "../../embassy-time", features = ["defmt", "defmt-timestamp-uptime", "tick-hz-32_768"] }
|
embassy-time = { version = "0.3.0", path = "../../embassy-time", features = ["defmt", "defmt-timestamp-uptime", "tick-hz-32_768"] }
|
||||||
|
@ -3,17 +3,14 @@
|
|||||||
|
|
||||||
use defmt::*;
|
use defmt::*;
|
||||||
use embassy_executor::Spawner;
|
use embassy_executor::Spawner;
|
||||||
use embassy_stm32::{
|
use embassy_stm32::gpio::{Level, Output, Pull, Speed};
|
||||||
gpio::{self, Level, Output, Speed},
|
use embassy_stm32::time::khz;
|
||||||
time::Hertz,
|
use embassy_stm32::timer::input_capture::{CapturePin, InputCapture};
|
||||||
};
|
use embassy_stm32::timer::Channel;
|
||||||
use embassy_time::Timer;
|
use embassy_time::Timer;
|
||||||
use {defmt_rtt as _, panic_probe as _};
|
use {defmt_rtt as _, panic_probe as _};
|
||||||
|
|
||||||
use embassy_stm32::timer::{
|
/// Connect PB2 and PB10 with a 1k Ohm resistor
|
||||||
input_capture::{CapturePin, InputCapture},
|
|
||||||
Channel,
|
|
||||||
};
|
|
||||||
|
|
||||||
#[embassy_executor::main]
|
#[embassy_executor::main]
|
||||||
async fn main(_spawner: Spawner) {
|
async fn main(_spawner: Spawner) {
|
||||||
@ -22,9 +19,11 @@ async fn main(_spawner: Spawner) {
|
|||||||
|
|
||||||
let mut led = Output::new(p.PB2, Level::High, Speed::Low);
|
let mut led = Output::new(p.PB2, Level::High, Speed::Low);
|
||||||
|
|
||||||
let ic = CapturePin::new_ch3(p.PB10, gpio::Pull::None);
|
let ch3 = CapturePin::new_ch3(p.PB10, Pull::None);
|
||||||
let drv = InputCapture::new(p.TIM2, None, None, Some(ic), None, Hertz::mhz(1), Default::default());
|
let mut ic = InputCapture::new(p.TIM2, None, None, Some(ch3), None, khz(1000), Default::default());
|
||||||
let mut _last: u32;
|
ic.enable(Channel::Ch3);
|
||||||
|
|
||||||
|
let mut last = 0;
|
||||||
|
|
||||||
loop {
|
loop {
|
||||||
info!("high");
|
info!("high");
|
||||||
@ -34,6 +33,12 @@ async fn main(_spawner: Spawner) {
|
|||||||
info!("low");
|
info!("low");
|
||||||
led.set_low();
|
led.set_low();
|
||||||
Timer::after_millis(300).await;
|
Timer::after_millis(300).await;
|
||||||
_last = drv.get_capture_value(Channel::Ch1);
|
|
||||||
|
// Check for input capture
|
||||||
|
let cap = ic.get_capture_value(Channel::Ch3);
|
||||||
|
if cap != last {
|
||||||
|
info!("New capture!");
|
||||||
|
last = cap;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user