atsamd51g

Struct SystemControl

Source
pub struct SystemControl { /* private fields */ }
Expand description

System Control Registers

Implementations§

Source§

impl SystemControl

Source

pub const PTR: *const RegisterBlock = {0xe000e000 as *const system_control::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 ictr(&self) -> &Ictr

0x04 - Interrupt Controller Type Register

Source

pub fn actlr(&self) -> &Actlr

0x08 - Auxiliary Control Register

Source

pub fn cpuid(&self) -> &Cpuid

0xd00 - CPUID Base Register

Source

pub fn icsr(&self) -> &Icsr

0xd04 - Interrupt Control and State Register

Source

pub fn vtor(&self) -> &Vtor

0xd08 - Vector Table Offset Register

Source

pub fn aircr(&self) -> &Aircr

0xd0c - Application Interrupt and Reset Control Register

Source

pub fn scr(&self) -> &Scr

0xd10 - System Control Register

Source

pub fn ccr(&self) -> &Ccr

0xd14 - Configuration and Control Register

Source

pub fn shpr1(&self) -> &Shpr1

0xd18 - System Handler Priority Register 1

Source

pub fn shpr2(&self) -> &Shpr2

0xd1c - System Handler Priority Register 2

Source

pub fn shpr3(&self) -> &Shpr3

0xd20 - System Handler Priority Register 3

Source

pub fn shcsr(&self) -> &Shcsr

0xd24 - System Handler Control and State Register

Source

pub fn cfsr(&self) -> &Cfsr

0xd28 - Configurable Fault Status Register

Source

pub fn hfsr(&self) -> &Hfsr

0xd2c - HardFault Status Register

Source

pub fn dfsr(&self) -> &Dfsr

0xd30 - Debug Fault Status Register

Source

pub fn mmfar(&self) -> &Mmfar

0xd34 - MemManage Fault Address Register

Source

pub fn bfar(&self) -> &Bfar

0xd38 - BusFault Address Register

Source

pub fn afsr(&self) -> &Afsr

0xd3c - Auxiliary Fault Status Register

Source

pub fn pfr(&self, n: usize) -> &Pfr

0xd40..0xd48 - Processor Feature Register

Source

pub fn pfr_iter(&self) -> impl Iterator<Item = &Pfr>

Iterator for array of: 0xd40..0xd48 - Processor Feature Register

Source

pub fn dfr(&self) -> &Dfr

0xd48 - Debug Feature Register

Source

pub fn adr(&self) -> &Adr

0xd4c - Auxiliary Feature Register

Source

pub fn mmfr(&self, n: usize) -> &Mmfr

0xd50..0xd60 - Memory Model Feature Register

Source

pub fn mmfr_iter(&self) -> impl Iterator<Item = &Mmfr>

Iterator for array of: 0xd50..0xd60 - Memory Model Feature Register

Source

pub fn isar(&self, n: usize) -> &Isar

0xd60..0xd74 - Instruction Set Attributes Register

Source

pub fn isar_iter(&self) -> impl Iterator<Item = &Isar>

Iterator for array of: 0xd60..0xd74 - Instruction Set Attributes Register

Source

pub fn cpacr(&self) -> &Cpacr

0xd88 - Coprocessor Access Control Register

Trait Implementations§

Source§

impl Debug for SystemControl

Source§

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

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

impl Deref for SystemControl

Source§

type Target = RegisterBlock

The resulting type after dereferencing.
Source§

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

Dereferences the value.
Source§

impl Send for SystemControl

Auto Trait Implementations§

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<P, T> Receiver for P
where P: Deref<Target = T> + ?Sized, T: ?Sized,

Source§

type Target = T

🔬This is a nightly-only experimental API. (arbitrary_self_types)
The target type on which the method may be called.
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.