Struct s2pac_ch32v103::PFIC

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

Programmable Fast Interrupt Controller

Implementations§

source§

impl PFIC

source

pub const PTR: *const RegisterBlock = {0xe000e000 as *const pfic::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 isr1(&self) -> &ISR1

0x00 - Interrupt Status Register

source

pub fn isr2(&self) -> &ISR2

0x04 - Interrupt Status Register

source

pub fn ipr1(&self) -> &IPR1

0x20 - Interrupt Pending Register

source

pub fn ipr2(&self) -> &IPR2

0x24 - Interrupt Pending Register

source

pub fn ithresdr(&self) -> &ITHRESDR

0x40 - Interrupt Priority Register

source

pub fn fibaddrr(&self) -> &FIBADDRR

0x44 - Interrupt Fast Address Register

source

pub fn cfgr(&self) -> &CFGR

0x48 - Interrupt Config Register

source

pub fn gisr(&self) -> &GISR

0x4c - Interrupt Global Register

source

pub fn fifoaddrr0(&self) -> &FIFOADDRR0

0x60 - Interrupt 0 address Register

source

pub fn fifoaddrr1(&self) -> &FIFOADDRR1

0x64 - Interrupt 1 address Register

source

pub fn fifoaddrr2(&self) -> &FIFOADDRR2

0x68 - Interrupt 2 address Register

source

pub fn fifoaddrr3(&self) -> &FIFOADDRR3

0x6c - Interrupt 3 address Register

source

pub fn ienr1(&self) -> &IENR1

0x100 - Interrupt Setting Register

source

pub fn ienr2(&self) -> &IENR2

0x104 - Interrupt Setting Register

source

pub fn irer1(&self) -> &IRER1

0x180 - Interrupt Clear Register

source

pub fn irer2(&self) -> &IRER2

0x184 - Interrupt Clear Register

source

pub fn ipsr1(&self) -> &IPSR1

0x200 - Interrupt Pending Register

source

pub fn ipsr2(&self) -> &IPSR2

0x204 - Interrupt Pending Register

source

pub fn iprr1(&self) -> &IPRR1

0x280 - Interrupt Pending Clear Register

source

pub fn iprr2(&self) -> &IPRR2

0x284 - Interrupt Pending Clear Register

source

pub fn iactr1(&self) -> &IACTR1

0x300 - Interrupt ACTIVE Register

source

pub fn iactr2(&self) -> &IACTR2

0x304 - Interrupt ACTIVE Register

source

pub fn sctlr(&self) -> &SCTLR

0xd10 - System Control Register

source

pub fn stk_ctlr(&self) -> &STK_CTLR

0x1000 - STK_CTLR Register

Trait Implementations§

source§

impl Debug for PFIC

source§

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

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

impl Deref for PFIC

§

type Target = RegisterBlock

The resulting type after dereferencing.
source§

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

Dereferences the value.
source§

impl Send for PFIC

Auto Trait Implementations§

§

impl RefUnwindSafe for PFIC

§

impl !Sync for PFIC

§

impl Unpin for PFIC

§

impl UnwindSafe for PFIC

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.