aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--embassy-stm32/src/timer/mod.rs2
1 files changed, 2 insertions, 0 deletions
diff --git a/embassy-stm32/src/timer/mod.rs b/embassy-stm32/src/timer/mod.rs
index 4ffb2a289..b5ced45fe 100644
--- a/embassy-stm32/src/timer/mod.rs
+++ b/embassy-stm32/src/timer/mod.rs
@@ -211,6 +211,7 @@ macro_rules! impl_basic_16bit_timer {
211 use core::convert::TryInto; 211 use core::convert::TryInto;
212 let f = frequency.0; 212 let f = frequency.0;
213 let timer_f = Self::frequency().0; 213 let timer_f = Self::frequency().0;
214 assert!(f > 0);
214 let pclk_ticks_per_timer_period = timer_f / f; 215 let pclk_ticks_per_timer_period = timer_f / f;
215 let psc: u16 = unwrap!(((pclk_ticks_per_timer_period - 1) / (1 << 16)).try_into()); 216 let psc: u16 = unwrap!(((pclk_ticks_per_timer_period - 1) / (1 << 16)).try_into());
216 let arr: u16 = unwrap!((pclk_ticks_per_timer_period / (u32::from(psc) + 1)).try_into()); 217 let arr: u16 = unwrap!((pclk_ticks_per_timer_period / (u32::from(psc) + 1)).try_into());
@@ -255,6 +256,7 @@ macro_rules! impl_32bit_timer {
255 fn set_frequency(&mut self, frequency: Hertz) { 256 fn set_frequency(&mut self, frequency: Hertz) {
256 use core::convert::TryInto; 257 use core::convert::TryInto;
257 let f = frequency.0; 258 let f = frequency.0;
259 assert!(f > 0);
258 let timer_f = Self::frequency().0; 260 let timer_f = Self::frequency().0;
259 let pclk_ticks_per_timer_period = (timer_f / f) as u64; 261 let pclk_ticks_per_timer_period = (timer_f / f) as u64;
260 let psc: u16 = unwrap!(((pclk_ticks_per_timer_period - 1) / (1 << 32)).try_into()); 262 let psc: u16 = unwrap!(((pclk_ticks_per_timer_period - 1) / (1 << 32)).try_into());