diff --git a/2sem_sem2/src/bin/main.rs b/2sem_sem2/src/bin/main.rs index abf484d..58dd020 100644 --- a/2sem_sem2/src/bin/main.rs +++ b/2sem_sem2/src/bin/main.rs @@ -11,7 +11,7 @@ use embassy_stm32::usart::{Config, InterruptHandler, Uart, UartRx, UartTx}; use embassy_sync::blocking_mutex::raw::CriticalSectionRawMutex; use embassy_sync::channel::Channel; use embassy_sync::channel::Sender; -use embassy_time::{Duration, Timer}; +use embassy_time::{Duration, Ticker, Timer}; use heapless::Vec; use {defmt_rtt as _, panic_probe as _}; @@ -108,6 +108,7 @@ async fn nrz(enkodovany: &Vec, sender: &Sender<'_, CriticalSectionRa #[embassy_executor::task] async fn bit_send(mut pin: Output<'static>) { + let mut ticker = Ticker::every(Duration::from_millis(10)); let receiver = PIPE.receiver(); loop { let bit = receiver.receive().await; @@ -117,6 +118,6 @@ async fn bit_send(mut pin: Output<'static>) { pin.set_low(); } // bitrate - Timer::after(Duration::from_millis(10)).await; + ticker.next().await; } }