FLASH

Struct FLASH 

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

FLASH address block description

Implementations§

Source§

impl FLASH

Source

pub const PTR: *const RegisterBlock = {0x40022000 as *const stm32h573::flash::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 acr(&self) -> &ACR

0x00 - FLASH access control register

Source

pub fn nskeyr(&self) -> &NSKEYR

0x04 - FLASH non-secure key register

Source

pub fn seckeyr(&self) -> &SECKEYR

0x08 - FLASH secure key register

Source

pub fn optkeyr(&self) -> &OPTKEYR

0x0c - FLASH option key register

Source

pub fn nsobkkeyr(&self) -> &NSOBKKEYR

0x10 - FLASH non-secure OBK key register

Source

pub fn secobkkeyr(&self) -> &SECOBKKEYR

0x14 - FLASH secure OBK key register

Source

pub fn opsr(&self) -> &OPSR

0x18 - FLASH operation status register

Source

pub fn optcr(&self) -> &OPTCR

0x1c - FLASH option control register

Source

pub fn nssr(&self) -> &NSSR

0x20 - FLASH non-secure status register

Source

pub fn secsr(&self) -> &SECSR

0x24 - FLASH secure status register

Source

pub fn nscr(&self) -> &NSCR

0x28 - FLASH non-secure control register

Source

pub fn seccr(&self) -> &SECCR

0x2c - FLASH secure control register

Source

pub fn nsccr(&self) -> &NSCCR

0x30 - FLASH non-secure clear control register

Source

pub fn secccr(&self) -> &SECCCR

0x34 - FLASH secure clear control register

Source

pub fn privcfgr(&self) -> &PRIVCFGR

0x3c - FLASH privilege configuration register

Source

pub fn nsobkcfgr(&self) -> &NSOBKCFGR

0x40 - FLASH non-secure OBK configuration register

Source

pub fn secobkcfgr(&self) -> &SECOBKCFGR

0x44 - FLASH secure OBK configuration register

Source

pub fn hdpextr(&self) -> &HDPEXTR

0x48 - FLASH HDP extension register

Source

pub fn optsr_cur(&self) -> &OPTSR_CUR

0x50 - FLASH option status register

Source

pub fn optsr_prg(&self) -> &OPTSR_PRG

0x54 - FLASH option status register

Source

pub fn nsepochr_cur(&self) -> &NSEPOCHR_CUR

0x60 - FLASH non-secure EPOCH register

Source

pub fn secepochr_cur(&self) -> &SECEPOCHR_CUR

0x68 - FLASH secure EPOCH register

Source

pub fn optsr2_cur(&self) -> &OPTSR2_CUR

0x70 - FLASH option status register 2

Source

pub fn optsr2_prg(&self) -> &OPTSR2_PRG

0x74 - FLASH option status register 2

Source

pub fn nsbootr_cur(&self) -> &NSBOOTR_CUR

0x80 - FLASH non-secure boot register

Source

pub fn nsbootr_prg(&self) -> &NSBOOTR_PRG

0x84 - FLASH non-secure boot register

Source

pub fn secbootr_cur(&self) -> &SECBOOTR_CUR

0x88 - FLASH secure boot register

Source

pub fn bootr_prg(&self) -> &BOOTR_PRG

0x8c - FLASH secure boot register

Source

pub fn otpblr_cur(&self) -> &OTPBLR_CUR

0x90 - FLASH non-secure OTP block lock

Source

pub fn otpblr_prg(&self) -> &OTPBLR_PRG

0x94 - FLASH non-secure OTP block lock

Source

pub fn secbb1r1(&self) -> &SECBB1R1

0xa0 - FLASH secure block based register for Bank 1

Source

pub fn secbb1r2(&self) -> &SECBB1R2

0xa4 - FLASH secure block based register for Bank 1

Source

pub fn secbb1r3(&self) -> &SECBB1R3

0xa8 - FLASH secure block based register for Bank 1

Source

pub fn secbb1r4(&self) -> &SECBB1R4

0xac - FLASH secure block based register for Bank 1

Source

pub fn privbb1r1(&self) -> &PRIVBB1R1

0xc0 - FLASH privilege block based register for Bank 1

Source

pub fn privbb1r2(&self) -> &PRIVBB1R2

0xc4 - FLASH privilege block based register for Bank 1

Source

pub fn privbb1r3(&self) -> &PRIVBB1R3

0xc8 - FLASH privilege block based register for Bank 1

Source

pub fn privbb1r4(&self) -> &PRIVBB1R4

0xcc - FLASH privilege block based register for Bank 1

Source

pub fn secwm1r_cur(&self) -> &SECWM1R_CUR

0xe0 - FLASH security watermark for Bank 1

Source

pub fn secwm1r_prg(&self) -> &SECWM1R_PRG

0xe4 - FLASH security watermark for Bank 1

Source

pub fn wrp1r_cur(&self) -> &WRP1R_CUR

0xe8 - FLASH write sector group protection for Bank 1

Source

pub fn wrp1r_prg(&self) -> &WRP1R_PRG

0xec - FLASH write sector group protection for Bank 1

Source

pub fn edata1r_cur(&self) -> &EDATA1R_CUR

0xf0 - FLASH data sector configuration Bank 1

Source

pub fn edata1r_prg(&self) -> &EDATA1R_PRG

0xf4 - FLASH data sector configuration Bank 1

Source

pub fn hdp1r_cur(&self) -> &HDP1R_CUR

0xf8 - FLASH HDP Bank 1 configuration

Source

pub fn hdp1r_prg(&self) -> &HDP1R_PRG

0xfc - FLASH HDP Bank 1 configuration

Source

pub fn ecccorr(&self) -> &ECCCORR

0x100 - FLASH ECC correction register

Source

pub fn eccdetr(&self) -> &ECCDETR

0x104 - FLASH ECC detection register

Source

pub fn eccdr(&self) -> &ECCDR

0x108 - FLASH ECC data

Source

pub fn secbb2r1(&self) -> &SECBB2R1

0x1a0 - FLASH secure block-based register for Bank 2

Source

pub fn secbb2r2(&self) -> &SECBB2R2

0x1a4 - FLASH secure block-based register for Bank 2

Source

pub fn secbb2r3(&self) -> &SECBB2R3

0x1a8 - FLASH secure block-based register for Bank 2

Source

pub fn secbb2r4(&self) -> &SECBB2R4

0x1ac - FLASH secure block-based register for Bank 2

Source

pub fn privbb2r1(&self) -> &PRIVBB2R1

0x1c0 - FLASH privilege block-based register for Bank 2

Source

pub fn privbb2r2(&self) -> &PRIVBB2R2

0x1c4 - FLASH privilege block-based register for Bank 2

Source

pub fn privbb2r3(&self) -> &PRIVBB2R3

0x1c8 - FLASH privilege block-based register for Bank 2

Source

pub fn privbb2r4(&self) -> &PRIVBB2R4

0x1cc - FLASH privilege block-based register for Bank 2

Source

pub fn secwm2r_cur(&self) -> &SECWM2R_CUR

0x1e0 - FLASH security watermark for Bank 2

Source

pub fn secwm2r_prg(&self) -> &SECWM2R_PRG

0x1e4 - FLASH security watermark for Bank 2

Source

pub fn wrp2r_cur(&self) -> &WRP2R_CUR

0x1e8 - FLASH write sector group protection for Bank 2

Source

pub fn wrp2r_prg(&self) -> &WRP2R_PRG

0x1ec - FLASH write sector group protection for Bank 2

Source

pub fn edata2r_cur(&self) -> &EDATA2R_CUR

0x1f0 - FLASH data sectors configuration Bank 2

Source

pub fn edata2r_prg(&self) -> &EDATA2R_PRG

0x1f4 - FLASH data sector configuration Bank 2

Source

pub fn hdp2r_cur(&self) -> &HDP2R_CUR

0x1f8 - FLASH HDP Bank 2 configuration

Source

pub fn hdp2r_prg(&self) -> &HDP2R_PRG

0x1fc - FLASH HDP Bank 2 configuration

Trait Implementations§

Source§

impl Debug for FLASH

Source§

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

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

impl Deref for FLASH

Source§

type Target = RegisterBlock

The resulting type after dereferencing.
Source§

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

Dereferences the value.
Source§

impl Send for FLASH

Auto Trait Implementations§

§

impl Freeze for FLASH

§

impl RefUnwindSafe for FLASH

§

impl !Sync for FLASH

§

impl Unpin for FLASH

§

impl UnwindSafe for FLASH

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.