aboutsummaryrefslogtreecommitdiff
path: root/embassy-stm32/src/timer
diff options
context:
space:
mode:
Diffstat (limited to 'embassy-stm32/src/timer')
-rw-r--r--embassy-stm32/src/timer/mod.rs12
1 files changed, 11 insertions, 1 deletions
diff --git a/embassy-stm32/src/timer/mod.rs b/embassy-stm32/src/timer/mod.rs
index e92015ee9..772c67686 100644
--- a/embassy-stm32/src/timer/mod.rs
+++ b/embassy-stm32/src/timer/mod.rs
@@ -40,7 +40,7 @@ pub(crate) mod sealed {
40 fn set_frequency(&mut self, frequency: Hertz); 40 fn set_frequency(&mut self, frequency: Hertz);
41 } 41 }
42 42
43 pub trait AdvancedControlInstance: Basic16bitInstance { 43 pub trait AdvancedControlInstance: GeneralPurpose16bitInstance {
44 fn regs_advanced() -> crate::pac::timer::TimAdv; 44 fn regs_advanced() -> crate::pac::timer::TimAdv;
45 } 45 }
46} 46}
@@ -204,11 +204,21 @@ foreach_interrupt! {
204 impl Basic16bitInstance for crate::peripherals::$inst { 204 impl Basic16bitInstance for crate::peripherals::$inst {
205 } 205 }
206 206
207 impl sealed::GeneralPurpose16bitInstance for crate::peripherals::$inst {
208 fn regs_gp16() -> crate::pac::timer::TimGp16 {
209 crate::pac::timer::TimGp16(crate::pac::$inst.0)
210 }
211 }
212
213 impl GeneralPurpose16bitInstance for crate::peripherals::$inst {
214 }
215
207 impl sealed::AdvancedControlInstance for crate::peripherals::$inst { 216 impl sealed::AdvancedControlInstance for crate::peripherals::$inst {
208 fn regs_advanced() -> crate::pac::timer::TimAdv { 217 fn regs_advanced() -> crate::pac::timer::TimAdv {
209 crate::pac::$inst 218 crate::pac::$inst
210 } 219 }
211 } 220 }
221
212 impl AdvancedControlInstance for crate::peripherals::$inst { 222 impl AdvancedControlInstance for crate::peripherals::$inst {
213 } 223 }
214 }; 224 };