Flexspi

Struct Flexspi 

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

FlexSPI

Implementations§

Source§

impl Flexspi

Source

pub const PTR: *const RegisterBlock = {0x40134000 as *const flexspi::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 mcr0(&self) -> &Mcr0

0x00 - Module Control Register 0

Source

pub fn mcr1(&self) -> &Mcr1

0x04 - Module Control Register 1

Source

pub fn mcr2(&self) -> &Mcr2

0x08 - Module Control Register 2

Source

pub fn ahbcr(&self) -> &Ahbcr

0x0c - AHB Bus Control Register

Source

pub fn inten(&self) -> &Inten

0x10 - Interrupt Enable Register

Source

pub fn intr(&self) -> &Intr

0x14 - Interrupt Register

Source

pub fn lutkey(&self) -> &Lutkey

0x18 - LUT Key Register

Source

pub fn lutcr(&self) -> &Lutcr

0x1c - LUT Control Register

Source

pub fn ahbrxbuf0cr0(&self) -> &Ahbrxbuf0cr0

0x20 - AHB RX Buffer 0 Control Register 0

Source

pub fn ahbrxbuf1cr0(&self) -> &Ahbrxbuf1cr0

0x24 - AHB RX Buffer 1 Control Register 0

Source

pub fn ahbrxbuf2cr0(&self) -> &Ahbrxbuf2cr0

0x28 - AHB RX Buffer 2 Control Register 0

Source

pub fn ahbrxbuf3cr0(&self) -> &Ahbrxbuf3cr0

0x2c - AHB RX Buffer 3 Control Register 0

Source

pub fn ahbrxbuf4cr0(&self) -> &Ahbrxbuf4cr0

0x30 - AHB RX Buffer 4 Control Register 0

Source

pub fn ahbrxbuf5cr0(&self) -> &Ahbrxbuf5cr0

0x34 - AHB RX Buffer 5 Control Register 0

Source

pub fn ahbrxbuf6cr0(&self) -> &Ahbrxbuf6cr0

0x38 - AHB RX Buffer 6 Control Register 0

Source

pub fn ahbrxbuf7cr0(&self) -> &Ahbrxbuf7cr0

0x3c - AHB RX Buffer 7 Control Register 0

Source

pub fn flsha1cr0(&self) -> &Flsha1cr0

0x60 - Flash Control Register 0

Source

pub fn flsha2cr0(&self) -> &Flsha2cr0

0x64 - Flash Control Register 0

Source

pub fn flshb1cr0(&self) -> &Flshb1cr0

0x68 - Flash Control Register 0

Source

pub fn flshb2cr0(&self) -> &Flshb2cr0

0x6c - Flash Control Register 0

Source

pub fn flshcr1(&self, n: usize) -> &Flshcr1

0x70..0x80 - Flash Control Register 1

`n` is the index of register in the array. `n == 0` corresponds to `FLSHCR1A1` register.
Source

pub fn flshcr1_iter(&self) -> impl Iterator<Item = &Flshcr1>

Iterator for array of: 0x70..0x80 - Flash Control Register 1

Source

pub fn flshcr1a1(&self) -> &Flshcr1

0x70 - Flash Control Register 1

Source

pub fn flshcr1a2(&self) -> &Flshcr1

0x74 - Flash Control Register 1

Source

pub fn flshcr1b1(&self) -> &Flshcr1

0x78 - Flash Control Register 1

Source

pub fn flshcr1b2(&self) -> &Flshcr1

0x7c - Flash Control Register 1

Source

pub fn flshcr2(&self, n: usize) -> &Flshcr2

0x80..0x90 - Flash Control Register 2

`n` is the index of register in the array. `n == 0` corresponds to `FLSHCR2A1` register.
Source

pub fn flshcr2_iter(&self) -> impl Iterator<Item = &Flshcr2>

Iterator for array of: 0x80..0x90 - Flash Control Register 2

Source

pub fn flshcr2a1(&self) -> &Flshcr2

0x80 - Flash Control Register 2

Source

pub fn flshcr2a2(&self) -> &Flshcr2

0x84 - Flash Control Register 2

Source

pub fn flshcr2b1(&self) -> &Flshcr2

0x88 - Flash Control Register 2

Source

pub fn flshcr2b2(&self) -> &Flshcr2

0x8c - Flash Control Register 2

Source

pub fn flshcr4(&self) -> &Flshcr4

0x94 - Flash Control Register 4

Source

pub fn ipcr0(&self) -> &Ipcr0

0xa0 - IP Control Register 0

Source

pub fn ipcr1(&self) -> &Ipcr1

0xa4 - IP Control Register 1

Source

pub fn ipcmd(&self) -> &Ipcmd

0xb0 - IP Command Register

Source

pub fn dlpr(&self) -> &Dlpr

0xb4 - Data Learn Pattern Register

Source

pub fn iprxfcr(&self) -> &Iprxfcr

0xb8 - IP RX FIFO Control Register

Source

pub fn iptxfcr(&self) -> &Iptxfcr

0xbc - IP TX FIFO Control Register

Source

pub fn dllcr(&self, n: usize) -> &Dllcr

0xc0..0xc8 - DLL Control Register 0

`n` is the index of register in the array. `n == 0` corresponds to `DLLCRA` register.
Source

pub fn dllcr_iter(&self) -> impl Iterator<Item = &Dllcr>

Iterator for array of: 0xc0..0xc8 - DLL Control Register 0

Source

pub fn dllcra(&self) -> &Dllcr

0xc0 - DLL Control Register 0

Source

pub fn dllcrb(&self) -> &Dllcr

0xc4 - DLL Control Register 0

Source

pub fn sts0(&self) -> &Sts0

0xe0 - Status Register 0

Source

pub fn sts1(&self) -> &Sts1

0xe4 - Status Register 1

Source

pub fn sts2(&self) -> &Sts2

0xe8 - Status Register 2

Source

pub fn ahbspndsts(&self) -> &Ahbspndsts

0xec - AHB Suspend Status Register

Source

pub fn iprxfsts(&self) -> &Iprxfsts

0xf0 - IP RX FIFO Status Register

Source

pub fn iptxfsts(&self) -> &Iptxfsts

0xf4 - IP TX FIFO Status Register

Source

pub fn rfdr(&self, n: usize) -> &Rfdr

0x100..0x180 - IP RX FIFO Data Register x

Source

pub fn rfdr_iter(&self) -> impl Iterator<Item = &Rfdr>

Iterator for array of: 0x100..0x180 - IP RX FIFO Data Register x

Source

pub fn tfdr(&self, n: usize) -> &Tfdr

0x180..0x200 - IP TX FIFO Data Register x

Source

pub fn tfdr_iter(&self) -> impl Iterator<Item = &Tfdr>

Iterator for array of: 0x180..0x200 - IP TX FIFO Data Register x

Source

pub fn lut(&self, n: usize) -> &Lut

0x200..0x400 - LUT x

Source

pub fn lut_iter(&self) -> impl Iterator<Item = &Lut>

Iterator for array of: 0x200..0x400 - LUT x

Trait Implementations§

Source§

impl Debug for Flexspi

Source§

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

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

impl Deref for Flexspi

Source§

type Target = RegisterBlock

The resulting type after dereferencing.
Source§

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

Dereferences the value.
Source§

impl Send for Flexspi

Auto Trait Implementations§

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.