Struct FLASH

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

FLASH

See peripheral structure

Implementations§

Source§

impl FLASH

Source

pub const PTR: *const RegisterBlock = {0x40023c00 as *const stm32f4_staging::stm32f429::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() -> FLASH

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) -> &Reg<ACRrs>

0x00 - Flash access control register

Source

pub fn keyr(&self) -> &Reg<KEYRrs>

0x04 - Flash key register

Source

pub fn optkeyr(&self) -> &Reg<OPTKEYRrs>

0x08 - Flash option key register

Source

pub fn sr(&self) -> &Reg<SRrs>

0x0c - Status register

Source

pub fn cr(&self) -> &Reg<CRrs>

0x10 - Control register

Source

pub fn optcr(&self) -> &Reg<OPTCRrs>

0x14 - Flash option control register

Source

pub fn optcr1(&self) -> &Reg<OPTCR1rs>

0x18 - Flash option control register 1

Trait Implementations§

Source§

impl Debug for FLASH

Source§

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

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) -> &<FLASH as Deref>::Target

Dereferences the value.
Source§

impl FlashExt for FLASH

Source§

fn address(&self) -> usize

Memory-mapped address
Source§

fn len(&self) -> usize

Size in bytes
Source§

fn unlocked(&mut self) -> UnlockedFlash<'_>

Unlock flash for erasing/programming until this method’s result is dropped
Source§

fn dual_bank(&self) -> bool

Source§

fn sector(&self, offset: usize) -> Option<FlashSector>

Returns flash memory sector of a given offset. Returns none if offset is out of range.
Source§

fn read(&self) -> &[u8]

Returns a read-only view of flash memory
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.