Skip to content

Commit d9e135f

Browse files
committed
both embedded-hals for PwmPin
1 parent 8d5fa95 commit d9e135f

File tree

1 file changed

+22
-1
lines changed

1 file changed

+22
-1
lines changed

src/pwm.rs

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ use crate::{
44
timer::{General, Timer},
55
};
66
use cast::u16;
7-
use core::{marker::PhantomData, mem::MaybeUninit};
7+
use core::{convert::Infallible, marker::PhantomData, mem::MaybeUninit};
88

99
pub trait Pins<TIM, P> {
1010
const C1: bool = false;
@@ -123,6 +123,27 @@ macro_rules! pwm_pin {
123123
self.set_duty(duty)
124124
}
125125
}
126+
127+
impl embedded_hal_one::pwm::blocking::PwmPin for PwmChannel<$TIMX, $C> {
128+
type Error = Infallible;
129+
type Duty = u16;
130+
131+
fn disable(&mut self) -> Result<(), Self::Error> {
132+
Ok(self.disable())
133+
}
134+
fn enable(&mut self) -> Result<(), Self::Error> {
135+
Ok(self.enable())
136+
}
137+
fn get_duty(&self) -> Result<Self::Duty, Self::Error> {
138+
Ok(self.get_duty())
139+
}
140+
fn get_max_duty(&self) -> Result<Self::Duty, Self::Error> {
141+
Ok(self.get_max_duty())
142+
}
143+
fn set_duty(&mut self, duty: Self::Duty) -> Result<(), Self::Error> {
144+
Ok(self.set_duty(duty))
145+
}
146+
}
126147
};
127148
}
128149

0 commit comments

Comments
 (0)