diff --git a/embassy-nrf/src/pwm.rs b/embassy-nrf/src/pwm.rs index a2853de3f..8e8f166d7 100644 --- a/embassy-nrf/src/pwm.rs +++ b/embassy-nrf/src/pwm.rs @@ -836,7 +836,7 @@ impl<'d, T: Instance> SimplePwm<'d, T> { #[inline(always)] pub fn set_ch0_drive(&self, drive: OutputDrive) { if let Some(pin) = &self.ch0 { - pin.conf().write(|w| w.drive().variant(convert_drive(drive))); + pin.conf().modify(|_, w| w.drive().variant(convert_drive(drive))); } } @@ -844,7 +844,7 @@ impl<'d, T: Instance> SimplePwm<'d, T> { #[inline(always)] pub fn set_ch1_drive(&self, drive: OutputDrive) { if let Some(pin) = &self.ch1 { - pin.conf().write(|w| w.drive().variant(convert_drive(drive))); + pin.conf().modify(|_, w| w.drive().variant(convert_drive(drive))); } } @@ -852,7 +852,7 @@ impl<'d, T: Instance> SimplePwm<'d, T> { #[inline(always)] pub fn set_ch2_drive(&self, drive: OutputDrive) { if let Some(pin) = &self.ch2 { - pin.conf().write(|w| w.drive().variant(convert_drive(drive))); + pin.conf().modify(|_, w| w.drive().variant(convert_drive(drive))); } } @@ -860,7 +860,7 @@ impl<'d, T: Instance> SimplePwm<'d, T> { #[inline(always)] pub fn set_ch3_drive(&self, drive: OutputDrive) { if let Some(pin) = &self.ch3 { - pin.conf().write(|w| w.drive().variant(convert_drive(drive))); + pin.conf().modify(|_, w| w.drive().variant(convert_drive(drive))); } } }