Struct FMC

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

Flexible memory controller

See peripheral structure

Implementations§

Source§

impl FMC

Source

pub const PTR: *const RegisterBlock = {0xa0000400 as *const stm32f303::fmc::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 bcr1(&self) -> &BCR1

0x00 - SRAM/NOR-Flash chip-select control register 1

Source

pub fn btr1(&self) -> &BTR1

0x04 - SRAM/NOR-Flash chip-select timing register 1

Source

pub fn bcr2(&self) -> &BCR2

0x08 - SRAM/NOR-Flash chip-select control register 2

Source

pub fn btr2(&self) -> &BTR2

0x0c - SRAM/NOR-Flash chip-select timing register 2

Source

pub fn bcr3(&self) -> &BCR3

0x10 - SRAM/NOR-Flash chip-select control register 3

Source

pub fn btr3(&self) -> &BTR3

0x14 - SRAM/NOR-Flash chip-select timing register 3

Source

pub fn bcr4(&self) -> &BCR4

0x18 - SRAM/NOR-Flash chip-select control register 4

Source

pub fn btr4(&self) -> &BTR4

0x1c - SRAM/NOR-Flash chip-select timing register 4

Source

pub fn pcr2(&self) -> &PCR2

0x60 - PC Card/NAND Flash control register 2

Source

pub fn sr2(&self) -> &SR2

0x64 - FIFO status and interrupt register 2

Source

pub fn pmem2(&self) -> &PMEM2

0x68 - Common memory space timing register 2

Source

pub fn patt2(&self) -> &PATT2

0x6c - Attribute memory space timing register 2

Source

pub fn eccr2(&self) -> &ECCR2

0x74 - ECC result register 2

Source

pub fn pcr3(&self) -> &PCR3

0x80 - PC Card/NAND Flash control register 3

Source

pub fn sr3(&self) -> &SR3

0x84 - FIFO status and interrupt register 3

Source

pub fn pmem3(&self) -> &PMEM3

0x88 - Common memory space timing register 3

Source

pub fn patt3(&self) -> &PATT3

0x8c - Attribute memory space timing register 3

Source

pub fn eccr3(&self) -> &ECCR3

0x94 - ECC result register 3

Source

pub fn pcr4(&self) -> &PCR4

0xa0 - PC Card/NAND Flash control register 4

Source

pub fn sr4(&self) -> &SR4

0xa4 - FIFO status and interrupt register 4

Source

pub fn pmem4(&self) -> &PMEM4

0xa8 - Common memory space timing register 4

Source

pub fn patt4(&self) -> &PATT4

0xac - Attribute memory space timing register 4

Source

pub fn pio4(&self) -> &PIO4

0xb0 - I/O space timing register 4

Source

pub fn bwtr1(&self) -> &BWTR1

0x104 - SRAM/NOR-Flash write timing registers 1

Source

pub fn bwtr2(&self) -> &BWTR2

0x10c - SRAM/NOR-Flash write timing registers 2

Source

pub fn bwtr3(&self) -> &BWTR3

0x114 - SRAM/NOR-Flash write timing registers 3

Source

pub fn bwtr4(&self) -> &BWTR4

0x11c - SRAM/NOR-Flash write timing registers 4

Trait Implementations§

Source§

impl Debug for FMC

Source§

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

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

impl Deref for FMC

Source§

type Target = RegisterBlock

The resulting type after dereferencing.
Source§

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

Dereferences the value.
Source§

impl Send for FMC

Auto Trait Implementations§

§

impl Freeze for FMC

§

impl RefUnwindSafe for FMC

§

impl !Sync for FMC

§

impl Unpin for FMC

§

impl UnwindSafe for FMC

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.