Struct SPI0

Source
pub struct SPI0 { /* private fields */ }

Implementations§

Source§

impl SPI0

Source

pub const PTR: *const <SPI0 as Deref>::Target = {0x60002000 as *const <esp32c6::SPI0 as core::ops::Deref>::Target}

Pointer to the register block

Source

pub unsafe fn steal() -> SPI0

Unsafely create an instance of this peripheral out of thin air.

§Safety

You must ensure that you’re only using one instance of this type at a time.

Source

pub const fn ptr() -> *const <SPI0 as Deref>::Target

Return the pointer to the register block

Methods from Deref<Target = RegisterBlock>§

Source

pub fn spi_mem_cmd(&self) -> &Reg<SPI_MEM_CMD_SPEC>

0x00 - SPI0 FSM status register

Source

pub fn spi_mem_ctrl(&self) -> &Reg<SPI_MEM_CTRL_SPEC>

0x08 - SPI0 control register.

Source

pub fn spi_mem_ctrl1(&self) -> &Reg<SPI_MEM_CTRL1_SPEC>

0x0c - SPI0 control1 register.

Source

pub fn spi_mem_ctrl2(&self) -> &Reg<SPI_MEM_CTRL2_SPEC>

0x10 - SPI0 control2 register.

Source

pub fn spi_mem_clock(&self) -> &Reg<SPI_MEM_CLOCK_SPEC>

0x14 - SPI clock division control register.

Source

pub fn spi_mem_user(&self) -> &Reg<SPI_MEM_USER_SPEC>

0x18 - SPI0 user register.

Source

pub fn spi_mem_user1(&self) -> &Reg<SPI_MEM_USER1_SPEC>

0x1c - SPI0 user1 register.

Source

pub fn spi_mem_user2(&self) -> &Reg<SPI_MEM_USER2_SPEC>

0x20 - SPI0 user2 register.

Source

pub fn spi_mem_rd_status(&self) -> &Reg<SPI_MEM_RD_STATUS_SPEC>

0x2c - SPI0 read control register.

Source

pub fn spi_mem_misc(&self) -> &Reg<SPI_MEM_MISC_SPEC>

0x34 - SPI0 misc register

Source

pub fn spi_mem_cache_fctrl(&self) -> &Reg<SPI_MEM_CACHE_FCTRL_SPEC>

0x3c - SPI0 bit mode control register.

Source

pub fn spi_mem_cache_sctrl(&self) -> &Reg<SPI_MEM_CACHE_SCTRL_SPEC>

0x40 - SPI0 external RAM control register

Source

pub fn spi_mem_sram_cmd(&self) -> &Reg<SPI_MEM_SRAM_CMD_SPEC>

0x44 - SPI0 external RAM mode control register

Source

pub fn spi_mem_sram_drd_cmd(&self) -> &Reg<SPI_MEM_SRAM_DRD_CMD_SPEC>

0x48 - SPI0 external RAM DDR read command control register

Source

pub fn spi_mem_sram_dwr_cmd(&self) -> &Reg<SPI_MEM_SRAM_DWR_CMD_SPEC>

0x4c - SPI0 external RAM DDR write command control register

Source

pub fn spi_mem_sram_clk(&self) -> &Reg<SPI_MEM_SRAM_CLK_SPEC>

0x50 - SPI0 external RAM clock control register

Source

pub fn spi_mem_fsm(&self) -> &Reg<SPI_MEM_FSM_SPEC>

0x54 - SPI0 FSM status register

Source

pub fn spi_mem_int_ena(&self) -> &Reg<SPI_MEM_INT_ENA_SPEC>

0xc0 - SPI0 interrupt enable register

Source

pub fn spi_mem_int_clr(&self) -> &Reg<SPI_MEM_INT_CLR_SPEC>

0xc4 - SPI0 interrupt clear register

Source

pub fn spi_mem_int_raw(&self) -> &Reg<SPI_MEM_INT_RAW_SPEC>

0xc8 - SPI0 interrupt raw register

Source

pub fn spi_mem_int_st(&self) -> &Reg<SPI_MEM_INT_ST_SPEC>

0xcc - SPI0 interrupt status register

Source

pub fn spi_mem_ddr(&self) -> &Reg<SPI_MEM_DDR_SPEC>

0xd4 - SPI0 flash DDR mode control register

Source

pub fn spi_smem_ddr(&self) -> &Reg<SPI_SMEM_DDR_SPEC>

0xd8 - SPI0 external RAM DDR mode control register

Source

pub fn spi_fmem_pms_attr(&self, n: usize) -> &Reg<SPI_FMEM_PMS_ATTR_SPEC>

0x100..0x110 - MSPI flash ACE section %s attribute register

Source

pub fn spi_fmem_pms_attr_iter( &self, ) -> impl Iterator<Item = &Reg<SPI_FMEM_PMS_ATTR_SPEC>>

Iterator for array of: 0x100..0x110 - MSPI flash ACE section %s attribute register

Source

pub fn spi_fmem_pms0_attr(&self) -> &Reg<SPI_FMEM_PMS_ATTR_SPEC>

0x100 - MSPI flash ACE section 0 attribute register

Source

pub fn spi_fmem_pms1_attr(&self) -> &Reg<SPI_FMEM_PMS_ATTR_SPEC>

0x104 - MSPI flash ACE section 1 attribute register

Source

pub fn spi_fmem_pms2_attr(&self) -> &Reg<SPI_FMEM_PMS_ATTR_SPEC>

0x108 - MSPI flash ACE section 2 attribute register

Source

pub fn spi_fmem_pms3_attr(&self) -> &Reg<SPI_FMEM_PMS_ATTR_SPEC>

0x10c - MSPI flash ACE section 3 attribute register

Source

pub fn spi_fmem_pms_addr(&self, n: usize) -> &Reg<SPI_FMEM_PMS_ADDR_SPEC>

0x110..0x120 - SPI1 flash ACE section %s start address register

Source

pub fn spi_fmem_pms_addr_iter( &self, ) -> impl Iterator<Item = &Reg<SPI_FMEM_PMS_ADDR_SPEC>>

Iterator for array of: 0x110..0x120 - SPI1 flash ACE section %s start address register

Source

pub fn spi_fmem_pms0_addr(&self) -> &Reg<SPI_FMEM_PMS_ADDR_SPEC>

0x110 - SPI1 flash ACE section 0 start address register

Source

pub fn spi_fmem_pms1_addr(&self) -> &Reg<SPI_FMEM_PMS_ADDR_SPEC>

0x114 - SPI1 flash ACE section 1 start address register

Source

pub fn spi_fmem_pms2_addr(&self) -> &Reg<SPI_FMEM_PMS_ADDR_SPEC>

0x118 - SPI1 flash ACE section 2 start address register

Source

pub fn spi_fmem_pms3_addr(&self) -> &Reg<SPI_FMEM_PMS_ADDR_SPEC>

0x11c - SPI1 flash ACE section 3 start address register

Source

pub fn spi_fmem_pms_size(&self, n: usize) -> &Reg<SPI_FMEM_PMS_SIZE_SPEC>

0x120..0x130 - SPI1 flash ACE section %s start address register

Source

pub fn spi_fmem_pms_size_iter( &self, ) -> impl Iterator<Item = &Reg<SPI_FMEM_PMS_SIZE_SPEC>>

Iterator for array of: 0x120..0x130 - SPI1 flash ACE section %s start address register

Source

pub fn spi_fmem_pms0_size(&self) -> &Reg<SPI_FMEM_PMS_SIZE_SPEC>

0x120 - SPI1 flash ACE section 0 start address register

Source

pub fn spi_fmem_pms1_size(&self) -> &Reg<SPI_FMEM_PMS_SIZE_SPEC>

0x124 - SPI1 flash ACE section 1 start address register

Source

pub fn spi_fmem_pms2_size(&self) -> &Reg<SPI_FMEM_PMS_SIZE_SPEC>

0x128 - SPI1 flash ACE section 2 start address register

Source

pub fn spi_fmem_pms3_size(&self) -> &Reg<SPI_FMEM_PMS_SIZE_SPEC>

0x12c - SPI1 flash ACE section 3 start address register

Source

pub fn spi_smem_pms_attr(&self, n: usize) -> &Reg<SPI_SMEM_PMS_ATTR_SPEC>

0x130..0x140 - SPI1 flash ACE section %s start address register

Source

pub fn spi_smem_pms_attr_iter( &self, ) -> impl Iterator<Item = &Reg<SPI_SMEM_PMS_ATTR_SPEC>>

Iterator for array of: 0x130..0x140 - SPI1 flash ACE section %s start address register

Source

pub fn spi_smem_pms0_attr(&self) -> &Reg<SPI_SMEM_PMS_ATTR_SPEC>

0x130 - SPI1 flash ACE section 0 start address register

Source

pub fn spi_smem_pms1_attr(&self) -> &Reg<SPI_SMEM_PMS_ATTR_SPEC>

0x134 - SPI1 flash ACE section 1 start address register

Source

pub fn spi_smem_pms2_attr(&self) -> &Reg<SPI_SMEM_PMS_ATTR_SPEC>

0x138 - SPI1 flash ACE section 2 start address register

Source

pub fn spi_smem_pms3_attr(&self) -> &Reg<SPI_SMEM_PMS_ATTR_SPEC>

0x13c - SPI1 flash ACE section 3 start address register

Source

pub fn spi_smem_pms_addr(&self, n: usize) -> &Reg<SPI_SMEM_PMS_ADDR_SPEC>

0x140..0x150 - SPI1 external RAM ACE section %s start address register

Source

pub fn spi_smem_pms_addr_iter( &self, ) -> impl Iterator<Item = &Reg<SPI_SMEM_PMS_ADDR_SPEC>>

Iterator for array of: 0x140..0x150 - SPI1 external RAM ACE section %s start address register

Source

pub fn spi_smem_pms0_addr(&self) -> &Reg<SPI_SMEM_PMS_ADDR_SPEC>

0x140 - SPI1 external RAM ACE section 0 start address register

Source

pub fn spi_smem_pms1_addr(&self) -> &Reg<SPI_SMEM_PMS_ADDR_SPEC>

0x144 - SPI1 external RAM ACE section 1 start address register

Source

pub fn spi_smem_pms2_addr(&self) -> &Reg<SPI_SMEM_PMS_ADDR_SPEC>

0x148 - SPI1 external RAM ACE section 2 start address register

Source

pub fn spi_smem_pms3_addr(&self) -> &Reg<SPI_SMEM_PMS_ADDR_SPEC>

0x14c - SPI1 external RAM ACE section 3 start address register

Source

pub fn spi_smem_pms_size(&self, n: usize) -> &Reg<SPI_SMEM_PMS_SIZE_SPEC>

0x150..0x160 - SPI1 external RAM ACE section %s start address register

Source

pub fn spi_smem_pms_size_iter( &self, ) -> impl Iterator<Item = &Reg<SPI_SMEM_PMS_SIZE_SPEC>>

Iterator for array of: 0x150..0x160 - SPI1 external RAM ACE section %s start address register

Source

pub fn spi_smem_pms0_size(&self) -> &Reg<SPI_SMEM_PMS_SIZE_SPEC>

0x150 - SPI1 external RAM ACE section 0 start address register

Source

pub fn spi_smem_pms1_size(&self) -> &Reg<SPI_SMEM_PMS_SIZE_SPEC>

0x154 - SPI1 external RAM ACE section 1 start address register

Source

pub fn spi_smem_pms2_size(&self) -> &Reg<SPI_SMEM_PMS_SIZE_SPEC>

0x158 - SPI1 external RAM ACE section 2 start address register

Source

pub fn spi_smem_pms3_size(&self) -> &Reg<SPI_SMEM_PMS_SIZE_SPEC>

0x15c - SPI1 external RAM ACE section 3 start address register

Source

pub fn spi_mem_pms_reject(&self) -> &Reg<SPI_MEM_PMS_REJECT_SPEC>

0x164 - SPI1 access reject register

Source

pub fn spi_mem_ecc_ctrl(&self) -> &Reg<SPI_MEM_ECC_CTRL_SPEC>

0x168 - MSPI ECC control register

Source

pub fn spi_mem_ecc_err_addr(&self) -> &Reg<SPI_MEM_ECC_ERR_ADDR_SPEC>

0x16c - MSPI ECC error address register

Source

pub fn spi_mem_axi_err_addr(&self) -> &Reg<SPI_MEM_AXI_ERR_ADDR_SPEC>

0x170 - SPI0 AXI request error address.

Source

pub fn spi_smem_ecc_ctrl(&self) -> &Reg<SPI_SMEM_ECC_CTRL_SPEC>

0x174 - MSPI ECC control register

Source

pub fn spi_mem_timing_cali(&self) -> &Reg<SPI_MEM_TIMING_CALI_SPEC>

0x180 - SPI0 flash timing calibration register

Source

pub fn spi_mem_din_mode(&self) -> &Reg<SPI_MEM_DIN_MODE_SPEC>

0x184 - MSPI flash input timing delay mode control register

Source

pub fn spi_mem_din_num(&self) -> &Reg<SPI_MEM_DIN_NUM_SPEC>

0x188 - MSPI flash input timing delay number control register

Source

pub fn spi_mem_dout_mode(&self) -> &Reg<SPI_MEM_DOUT_MODE_SPEC>

0x18c - MSPI flash output timing adjustment control register

Source

pub fn spi_smem_timing_cali(&self) -> &Reg<SPI_SMEM_TIMING_CALI_SPEC>

0x190 - MSPI external RAM timing calibration register

Source

pub fn spi_smem_din_mode(&self) -> &Reg<SPI_SMEM_DIN_MODE_SPEC>

0x194 - MSPI external RAM input timing delay mode control register

Source

pub fn spi_smem_din_num(&self) -> &Reg<SPI_SMEM_DIN_NUM_SPEC>

0x198 - MSPI external RAM input timing delay number control register

Source

pub fn spi_smem_dout_mode(&self) -> &Reg<SPI_SMEM_DOUT_MODE_SPEC>

0x19c - MSPI external RAM output timing adjustment control register

Source

pub fn spi_smem_ac(&self) -> &Reg<SPI_SMEM_AC_SPEC>

0x1a0 - MSPI external RAM ECC and SPI CS timing control register

Source

pub fn spi_mem_clock_gate(&self) -> &Reg<SPI_MEM_CLOCK_GATE_SPEC>

0x200 - SPI0 clock gate register

Source

pub fn spi_mem_xts_plain_base(&self) -> &Reg<SPI_MEM_XTS_PLAIN_BASE_SPEC>

0x300 - The base address of the memory that stores plaintext in Manual Encryption

Source

pub fn spi_mem_xts_linesize(&self) -> &Reg<SPI_MEM_XTS_LINESIZE_SPEC>

0x340 - Manual Encryption Line-Size register

Source

pub fn spi_mem_xts_destination(&self) -> &Reg<SPI_MEM_XTS_DESTINATION_SPEC>

0x344 - Manual Encryption destination register

Source

pub fn spi_mem_xts_physical_address( &self, ) -> &Reg<SPI_MEM_XTS_PHYSICAL_ADDRESS_SPEC>

0x348 - Manual Encryption physical address register

Source

pub fn spi_mem_xts_trigger(&self) -> &Reg<SPI_MEM_XTS_TRIGGER_SPEC>

0x34c - Manual Encryption physical address register

Source

pub fn spi_mem_xts_release(&self) -> &Reg<SPI_MEM_XTS_RELEASE_SPEC>

0x350 - Manual Encryption physical address register

Source

pub fn spi_mem_xts_destroy(&self) -> &Reg<SPI_MEM_XTS_DESTROY_SPEC>

0x354 - Manual Encryption physical address register

Source

pub fn spi_mem_xts_state(&self) -> &Reg<SPI_MEM_XTS_STATE_SPEC>

0x358 - Manual Encryption physical address register

Source

pub fn spi_mem_xts_date(&self) -> &Reg<SPI_MEM_XTS_DATE_SPEC>

0x35c - Manual Encryption version register

Source

pub fn spi_mem_mmu_item_content(&self) -> &Reg<SPI_MEM_MMU_ITEM_CONTENT_SPEC>

0x37c - MSPI-MMU item content register

Source

pub fn spi_mem_mmu_item_index(&self) -> &Reg<SPI_MEM_MMU_ITEM_INDEX_SPEC>

0x380 - MSPI-MMU item index register

Source

pub fn spi_mem_mmu_power_ctrl(&self) -> &Reg<SPI_MEM_MMU_POWER_CTRL_SPEC>

0x384 - MSPI MMU power control register

Source

pub fn spi_mem_dpa_ctrl(&self) -> &Reg<SPI_MEM_DPA_CTRL_SPEC>

0x388 - SPI memory cryption DPA register

Source

pub fn spi_mem_registerrnd_eco_high( &self, ) -> &Reg<SPI_MEM_REGISTERRND_ECO_HIGH_SPEC>

0x3f0 - MSPI ECO high register

Source

pub fn spi_mem_registerrnd_eco_low( &self, ) -> &Reg<SPI_MEM_REGISTERRND_ECO_LOW_SPEC>

0x3f4 - MSPI ECO low register

Source

pub fn spi_mem_date(&self) -> &Reg<SPI_MEM_DATE_SPEC>

0x3fc - SPI0 version control register

Trait Implementations§

Source§

impl Debug for SPI0

Source§

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

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

impl Deref for SPI0

Source§

type Target = <SPI0 as Deref>::Target

The resulting type after dereferencing.
Source§

fn deref(&self) -> &<SPI0 as Deref>::Target

Dereferences the value.
Source§

impl DerefMut for SPI0

Source§

fn deref_mut(&mut self) -> &mut <SPI0 as Deref>::Target

Mutably dereferences the value.
Source§

impl Peripheral for SPI0

Source§

type P = SPI0

Peripheral singleton type
Source§

unsafe fn clone_unchecked(&mut self) -> <SPI0 as Peripheral>::P

Unsafely clone (duplicate) a peripheral singleton. Read more
Source§

fn into_ref<'a>(self) -> PeripheralRef<'a, Self::P>
where Self: 'a,

Convert a value into a PeripheralRef. Read more

Auto Trait Implementations§

§

impl Freeze for SPI0

§

impl RefUnwindSafe for SPI0

§

impl Send for SPI0

§

impl Sync for SPI0

§

impl Unpin for SPI0

§

impl UnwindSafe for SPI0

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.