Struct xmc4300::PPB

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

Cortex-M4 Private Peripheral Block

Implementations§

source§

impl PPB

source

pub const PTR: *const RegisterBlock = {0xe000e000 as *const ppb::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 actlr(&self) -> &ACTLR

0x08 - Auxiliary Control Register

source

pub fn syst_csr(&self) -> &SYST_CSR

0x10 - SysTick Control and Status Register

source

pub fn syst_rvr(&self) -> &SYST_RVR

0x14 - SysTick Reload Value Register

source

pub fn syst_cvr(&self) -> &SYST_CVR

0x18 - SysTick Current Value Register

source

pub fn syst_calib(&self) -> &SYST_CALIB

0x1c - SysTick Calibration Value Register r

source

pub fn nvic_iser0(&self) -> &NVIC_ISER0

0x100 - Interrupt Set-enable Register 0

source

pub fn nvic_iser1(&self) -> &NVIC_ISER1

0x104 - Interrupt Set-enable Register 1

source

pub fn nvic_iser2(&self) -> &NVIC_ISER2

0x108 - Interrupt Set-enable Register 2

source

pub fn nvic_iser3(&self) -> &NVIC_ISER3

0x10c - Interrupt Set-enable Register 3

source

pub fn nvic_icer0(&self) -> &NVIC_ICER0

0x180 - Interrupt Clear-enable Register 0

source

pub fn nvic_icer1(&self) -> &NVIC_ICER1

0x184 - Interrupt Clear-enable Register 1

source

pub fn nvic_icer2(&self) -> &NVIC_ICER2

0x188 - Interrupt Clear-enable Register 2

source

pub fn nvic_icer3(&self) -> &NVIC_ICER3

0x18c - Interrupt Clear-enable Register 3

source

pub fn nvic_ispr0(&self) -> &NVIC_ISPR0

0x200 - Interrupt Set-pending Register 0

source

pub fn nvic_ispr1(&self) -> &NVIC_ISPR1

0x204 - Interrupt Set-pending Register 1

source

pub fn nvic_ispr2(&self) -> &NVIC_ISPR2

0x208 - Interrupt Set-pending Register 2

source

pub fn nvic_ispr3(&self) -> &NVIC_ISPR3

0x20c - Interrupt Set-pending Register 3

source

pub fn nvic_icpr0(&self) -> &NVIC_ICPR0

0x280 - Interrupt Clear-pending Register 0

source

pub fn nvic_icpr1(&self) -> &NVIC_ICPR1

0x284 - Interrupt Clear-pending Register 1

source

pub fn nvic_icpr2(&self) -> &NVIC_ICPR2

0x288 - Interrupt Clear-pending Register 2

source

pub fn nvic_icpr3(&self) -> &NVIC_ICPR3

0x28c - Interrupt Clear-pending Register 3

source

pub fn nvic_iabr0(&self) -> &NVIC_IABR0

0x300 - Interrupt Active Bit Register 0

source

pub fn nvic_iabr1(&self) -> &NVIC_IABR1

0x304 - Interrupt Active Bit Register 1

source

pub fn nvic_iabr2(&self) -> &NVIC_IABR2

0x308 - Interrupt Active Bit Register 2

source

pub fn nvic_iabr3(&self) -> &NVIC_IABR3

0x30c - Interrupt Active Bit Register 3

source

pub fn nvic_ipr0(&self) -> &NVIC_IPR0

0x400 - Interrupt Priority Register 0

source

pub fn nvic_ipr1(&self) -> &NVIC_IPR1

0x404 - Interrupt Priority Register 1

source

pub fn nvic_ipr2(&self) -> &NVIC_IPR2

0x408 - Interrupt Priority Register 2

source

pub fn nvic_ipr3(&self) -> &NVIC_IPR3

0x40c - Interrupt Priority Register 3

source

pub fn nvic_ipr4(&self) -> &NVIC_IPR4

0x410 - Interrupt Priority Register 4

source

pub fn nvic_ipr5(&self) -> &NVIC_IPR5

0x414 - Interrupt Priority Register 5

source

pub fn nvic_ipr6(&self) -> &NVIC_IPR6

0x418 - Interrupt Priority Register 6

source

pub fn nvic_ipr7(&self) -> &NVIC_IPR7

0x41c - Interrupt Priority Register 7

source

pub fn nvic_ipr8(&self) -> &NVIC_IPR8

0x420 - Interrupt Priority Register 8

source

pub fn nvic_ipr9(&self) -> &NVIC_IPR9

0x424 - Interrupt Priority Register 9

source

pub fn nvic_ipr10(&self) -> &NVIC_IPR10

0x428 - Interrupt Priority Register 10

source

pub fn nvic_ipr11(&self) -> &NVIC_IPR11

0x42c - Interrupt Priority Register 11

source

pub fn nvic_ipr12(&self) -> &NVIC_IPR12

0x430 - Interrupt Priority Register 12

source

pub fn nvic_ipr13(&self) -> &NVIC_IPR13

0x434 - Interrupt Priority Register 13

source

pub fn nvic_ipr14(&self) -> &NVIC_IPR14

0x438 - Interrupt Priority Register 14

source

pub fn nvic_ipr15(&self) -> &NVIC_IPR15

0x43c - Interrupt Priority Register 15

source

pub fn nvic_ipr16(&self) -> &NVIC_IPR16

0x440 - Interrupt Priority Register 16

source

pub fn nvic_ipr17(&self) -> &NVIC_IPR17

0x444 - Interrupt Priority Register 17

source

pub fn nvic_ipr18(&self) -> &NVIC_IPR18

0x448 - Interrupt Priority Register 18

source

pub fn nvic_ipr19(&self) -> &NVIC_IPR19

0x44c - Interrupt Priority Register 19

source

pub fn nvic_ipr20(&self) -> &NVIC_IPR20

0x450 - Interrupt Priority Register 20

source

pub fn nvic_ipr21(&self) -> &NVIC_IPR21

0x454 - Interrupt Priority Register 21

source

pub fn nvic_ipr22(&self) -> &NVIC_IPR22

0x458 - Interrupt Priority Register 22

source

pub fn nvic_ipr23(&self) -> &NVIC_IPR23

0x45c - Interrupt Priority Register 23

source

pub fn nvic_ipr24(&self) -> &NVIC_IPR24

0x460 - Interrupt Priority Register 24

source

pub fn nvic_ipr25(&self) -> &NVIC_IPR25

0x464 - Interrupt Priority Register 25

source

pub fn nvic_ipr26(&self) -> &NVIC_IPR26

0x468 - Interrupt Priority Register 26

source

pub fn nvic_ipr27(&self) -> &NVIC_IPR27

0x46c - Interrupt Priority Register 27

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 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 cpacr(&self) -> &CPACR

0xd88 - Coprocessor Access Control Register

source

pub fn mpu_type(&self) -> &MPU_TYPE

0xd90 - MPU Type Register

source

pub fn mpu_ctrl(&self) -> &MPU_CTRL

0xd94 - MPU Control Register

source

pub fn mpu_rnr(&self) -> &MPU_RNR

0xd98 - MPU Region Number Register

source

pub fn mpu_rbar(&self) -> &MPU_RBAR

0xd9c - MPU Region Base Address Register

source

pub fn mpu_rasr(&self) -> &MPU_RASR

0xda0 - MPU Region Attribute and Size Register

source

pub fn mpu_rbar_a1(&self) -> &MPU_RBAR_A1

0xda4 - MPU Region Base Address Register A1

source

pub fn mpu_rasr_a1(&self) -> &MPU_RASR_A1

0xda8 - MPU Region Attribute and Size Register A1

source

pub fn mpu_rbar_a2(&self) -> &MPU_RBAR_A2

0xdac - MPU Region Base Address Register A2

source

pub fn mpu_rasr_a2(&self) -> &MPU_RASR_A2

0xdb0 - MPU Region Attribute and Size Register A2

source

pub fn mpu_rbar_a3(&self) -> &MPU_RBAR_A3

0xdb4 - MPU Region Base Address Register A3

source

pub fn mpu_rasr_a3(&self) -> &MPU_RASR_A3

0xdb8 - MPU Region Attribute and Size Register A3

source

pub fn stir(&self) -> &STIR

0xf00 - Software Trigger Interrupt Register

source

pub fn fpccr(&self) -> &FPCCR

0xf34 - Floating-point Context Control Register

source

pub fn fpcar(&self) -> &FPCAR

0xf38 - Floating-point Context Address Register

source

pub fn fpdscr(&self) -> &FPDSCR

0xf3c - Floating-point Default Status Control Register

Trait Implementations§

source§

impl Debug for PPB

source§

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

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

impl Deref for PPB

§

type Target = RegisterBlock

The resulting type after dereferencing.
source§

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

Dereferences the value.
source§

impl Send for PPB

Auto Trait Implementations§

§

impl Freeze for PPB

§

impl RefUnwindSafe for PPB

§

impl !Sync for PPB

§

impl Unpin for PPB

§

impl UnwindSafe for PPB

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.