diff options
| -rw-r--r-- | embassy-stm32/src/can/bxcan.rs | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/embassy-stm32/src/can/bxcan.rs b/embassy-stm32/src/can/bxcan.rs index 7b664a113..4afbb5687 100644 --- a/embassy-stm32/src/can/bxcan.rs +++ b/embassy-stm32/src/can/bxcan.rs | |||
| @@ -2,7 +2,9 @@ use core::future::poll_fn; | |||
| 2 | use core::marker::PhantomData; | 2 | use core::marker::PhantomData; |
| 3 | use core::ops::{Deref, DerefMut}; | 3 | use core::ops::{Deref, DerefMut}; |
| 4 | use core::task::Poll; | 4 | use core::task::Poll; |
| 5 | use core::cell::RefMut; | ||
| 5 | use core::cell::RefCell; | 6 | use core::cell::RefCell; |
| 7 | |||
| 6 | pub use bxcan; | 8 | pub use bxcan; |
| 7 | use bxcan::{Data, ExtendedId, Frame, Id, StandardId}; | 9 | use bxcan::{Data, ExtendedId, Frame, Id, StandardId}; |
| 8 | use embassy_hal_common::{into_ref, PeripheralRef}; | 10 | use embassy_hal_common::{into_ref, PeripheralRef}; |
| @@ -346,6 +348,10 @@ impl<'d, T: Instance> Can<'d, T> { | |||
| 346 | pub fn split<'c>(&'c self) -> (CanTx<'c, 'd, T>, CanRx<'c, 'd, T>) { | 348 | pub fn split<'c>(&'c self) -> (CanTx<'c, 'd, T>, CanRx<'c, 'd, T>) { |
| 347 | (CanTx { can: &self.can }, CanRx { can: &self.can }) | 349 | (CanTx { can: &self.can }, CanRx { can: &self.can }) |
| 348 | } | 350 | } |
| 351 | |||
| 352 | pub fn as_mut(&self) -> RefMut<'_, bxcan::Can<BxcanInstance<'d, T>>> { | ||
| 353 | self.can.borrow_mut() | ||
| 354 | } | ||
| 349 | } | 355 | } |
| 350 | 356 | ||
| 351 | pub struct CanTx<'c, 'd, T: Instance> { | 357 | pub struct CanTx<'c, 'd, T: Instance> { |
