Struct xmc4500::CAN

source ·
pub struct CAN { /* private fields */ }
Expand description

Controller Area Networks

Implementations§

source§

impl CAN

source

pub const PTR: *const RegisterBlock = {0x48014000 as *const can::RegisterBlock}

Pointer to the register block

source

pub const fn ptr() -> *const RegisterBlock

Return the pointer to the register block

source

pub unsafe fn steal() -> Self

Steal an instance of this peripheral

§Safety

Ensure that the new instance of the peripheral cannot be used in a way that may race with any existing instances, for example by only accessing read-only or write-only registers, or by consuming the original peripheral and using critical sections to coordinate access between multiple new instances.

Additionally, other software such as HALs may rely on only one peripheral instance existing to ensure memory safety; ensure no stolen instances are passed to such software.

Methods from Deref<Target = RegisterBlock>§

source

pub fn clc(&self) -> &CLC

0x00 - CAN Clock Control Register

source

pub fn id(&self) -> &ID

0x08 - Module Identification Register

source

pub fn fdr(&self) -> &FDR

0x0c - CAN Fractional Divider Register

source

pub fn list(&self, n: usize) -> &LIST

0x100..0x120 - List Register

source

pub fn list_iter(&self) -> impl Iterator<Item = &LIST>

Iterator for array of: 0x100..0x120 - List Register

source

pub fn mspnd(&self, n: usize) -> &MSPND

0x140..0x160 - Message Pending Register

source

pub fn mspnd_iter(&self) -> impl Iterator<Item = &MSPND>

Iterator for array of: 0x140..0x160 - Message Pending Register

source

pub fn msid(&self, n: usize) -> &MSID

0x180..0x1a0 - Message Index Register

source

pub fn msid_iter(&self) -> impl Iterator<Item = &MSID>

Iterator for array of: 0x180..0x1a0 - Message Index Register

source

pub fn msimask(&self) -> &MSIMASK

0x1c0 - Message Index Mask Register

source

pub fn panctr(&self) -> &PANCTR

0x1c4 - Panel Control Register

source

pub fn mcr(&self) -> &MCR

0x1c8 - Module Control Register

source

pub fn mitr(&self) -> &MITR

0x1cc - Module Interrupt Trigger Register

Trait Implementations§

source§

impl Debug for CAN

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Deref for CAN

§

type Target = RegisterBlock

The resulting type after dereferencing.
source§

fn deref(&self) -> &Self::Target

Dereferences the value.
source§

impl Send for CAN

Auto Trait Implementations§

§

impl Freeze for CAN

§

impl RefUnwindSafe for CAN

§

impl !Sync for CAN

§

impl Unpin for CAN

§

impl UnwindSafe for CAN

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>,

§

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>,

§

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.