Closed
Description
There are a few issues with the current code:
- timers only expose 2 channels
- timers takes the channels pins wether we want it or not.
- timers force the pin mode to be OpenDrain or PushPull
example form timer_input:
impl Pins<TIM1> for (PA8<Alternate<OpenDrain>>, PA9<Alternate<OpenDrain>>) {
const REMAP: u8 = 0b00;
}
I propose having the channels pins using the Option
and a generic mode:
pub type Pwm1Mapping0<M1, M2, M3, M4> = (Option<PA8<Alternate<M1>>>,
Option<PA9<Alternate<M2>>>,
Option<PA10<Alternate<M3>>>,
Option<PA11<Alternate<M4>>>);
here is a more complete example:
https://github.com/japaric/stm32f103xx-hal/blob/9f132cd3a8a95d0b726f925c239fad6e74b60d76/src/pwm2.rs#L219
Metadata
Metadata
Assignees
Labels
No labels