embassy-stm32

Crates

git

Versions

stm32f042g6

Flavors

๐Ÿ“ฃ We want to hear from you! Fill the Rust Embedded 2024 micro-survey.

Struct embassy_stm32::can::CanConfig

source ยท
pub struct CanConfig<'a> { /* private fields */ }
Expand description

Configuration proxy returned by Can::modify_config.

Implementationsยง

sourceยง

impl CanConfig<'_>

source

pub fn set_bit_timing(self, bt: NominalBitTiming) -> Self

Configures the bit timings.

You can use http://www.bittiming.can-wiki.info/ to calculate the btr parameter. Enter parameters as follows:

  • Clock Rate: The input clock speed to the CAN peripheral (not the CPU clock speed). This is the clock rate of the peripheral bus the CAN peripheral is attached to (eg. APB1).
  • Sample Point: Should normally be left at the default value of 87.5%.
  • SJW: Should normally be left at the default value of 1.

Then copy the CAN_BUS_TIME register value from the table and pass it as the btr parameter to this method.

source

pub fn set_bitrate(self, bitrate: u32) -> Self

Configure the CAN bit rate.

This is a helper that internally calls set_bit_timing()Self::set_bit_timing.

source

pub fn set_loopback(self, enabled: bool) -> Self

Enables or disables loopback mode: Internally connects the TX and RX signals together.

source

pub fn set_silent(self, enabled: bool) -> Self

Enables or disables silent mode: Disconnects the TX signal from the pin.

source

pub fn set_automatic_retransmit(self, enabled: bool) -> Self

Enables or disables automatic retransmission of frames.

If this is enabled, the CAN peripheral will automatically try to retransmit each frame until it can be sent. Otherwise, it will try only once to send each frame.

Automatic retransmission is enabled by default.

Trait Implementationsยง

sourceยง

impl Drop for CanConfig<'_>

sourceยง

fn drop(&mut self)

Executes the destructor for this type. Read more

Auto Trait Implementationsยง

ยง

impl<'a> Freeze for CanConfig<'a>

ยง

impl<'a> RefUnwindSafe for CanConfig<'a>

ยง

impl<'a> Send for CanConfig<'a>

ยง

impl<'a> Sync for CanConfig<'a>

ยง

impl<'a> Unpin for CanConfig<'a>

ยง

impl<'a> UnwindSafe for CanConfig<'a>

Blanket Implementationsยง

sourceยง

impl<T> Any for T
where T: 'static + ?Sized,

sourceยง

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
sourceยง

impl<T> Borrow<T> for T
where T: ?Sized,

sourceยง

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
sourceยง

impl<T> BorrowMut<T> for T
where T: ?Sized,

sourceยง

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
sourceยง

impl<T> From<T> for T

sourceยง

fn from(t: T) -> T

Returns the argument unchanged.

sourceยง

impl<T, U> Into<U> for T
where U: From<T>,

sourceยง

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

sourceยง

impl<T, U> TryFrom<U> for T
where U: Into<T>,

sourceยง

type Error = Infallible

The type returned in the event of a conversion error.
sourceยง

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
sourceยง

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

sourceยง

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
sourceยง

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.