Struct esp32s3_hal::pac::spi0::spi_smem_ddr::W
pub struct W(_);
Expand description
Register SPI_SMEM_DDR
writer
Implementations§
§impl W
impl W
pub fn en(&mut self) -> BitWriterRaw<'_, u32, SPI_SMEM_DDR_SPEC, bool, BitM, 0>
pub fn en(&mut self) -> BitWriterRaw<'_, u32, SPI_SMEM_DDR_SPEC, bool, BitM, 0>
Bit 0 - 1: in ddr mode, 0 in sdr mode
pub fn spi_smem_var_dummy(
&mut self
) -> BitWriterRaw<'_, u32, SPI_SMEM_DDR_SPEC, bool, BitM, 1>
pub fn spi_smem_var_dummy(
&mut self
) -> BitWriterRaw<'_, u32, SPI_SMEM_DDR_SPEC, bool, BitM, 1>
Bit 1 - Set the bit to enable variable dummy cycle in spi ddr mode.
pub fn rdat_swp(
&mut self
) -> BitWriterRaw<'_, u32, SPI_SMEM_DDR_SPEC, bool, BitM, 2>
pub fn rdat_swp(
&mut self
) -> BitWriterRaw<'_, u32, SPI_SMEM_DDR_SPEC, bool, BitM, 2>
Bit 2 - Set the bit to reorder rx data of the word in spi ddr mode.
pub fn wdat_swp(
&mut self
) -> BitWriterRaw<'_, u32, SPI_SMEM_DDR_SPEC, bool, BitM, 3>
pub fn wdat_swp(
&mut self
) -> BitWriterRaw<'_, u32, SPI_SMEM_DDR_SPEC, bool, BitM, 3>
Bit 3 - Set the bit to reorder tx data of the word in spi ddr mode.
pub fn cmd_dis(
&mut self
) -> BitWriterRaw<'_, u32, SPI_SMEM_DDR_SPEC, bool, BitM, 4>
pub fn cmd_dis(
&mut self
) -> BitWriterRaw<'_, u32, SPI_SMEM_DDR_SPEC, bool, BitM, 4>
Bit 4 - the bit is used to disable dual edge in CMD phase when ddr mode.
pub fn spi_smem_outminbytelen(
&mut self
) -> FieldWriterRaw<'_, u32, SPI_SMEM_DDR_SPEC, u8, u8, Unsafe, 7, 5>
pub fn spi_smem_outminbytelen(
&mut self
) -> FieldWriterRaw<'_, u32, SPI_SMEM_DDR_SPEC, u8, u8, Unsafe, 7, 5>
Bits 5:11 - It is the minimum output data length in the ddr psram.
pub fn spi_smem_tx_ddr_msk_en(
&mut self
) -> BitWriterRaw<'_, u32, SPI_SMEM_DDR_SPEC, bool, BitM, 12>
pub fn spi_smem_tx_ddr_msk_en(
&mut self
) -> BitWriterRaw<'_, u32, SPI_SMEM_DDR_SPEC, bool, BitM, 12>
Bit 12 - Set this bit to mask the first or the last byte in MSPI ECC DDR write mode, when accesses to external RAM.
pub fn spi_smem_rx_ddr_msk_en(
&mut self
) -> BitWriterRaw<'_, u32, SPI_SMEM_DDR_SPEC, bool, BitM, 13>
pub fn spi_smem_rx_ddr_msk_en(
&mut self
) -> BitWriterRaw<'_, u32, SPI_SMEM_DDR_SPEC, bool, BitM, 13>
Bit 13 - Set this bit to mask the first or the last byte in MSPI ECC DDR read mode, when accesses to external RAM.
pub fn spi_smem_usr_ddr_dqs_thd(
&mut self
) -> FieldWriterRaw<'_, u32, SPI_SMEM_DDR_SPEC, u8, u8, Unsafe, 7, 14>
pub fn spi_smem_usr_ddr_dqs_thd(
&mut self
) -> FieldWriterRaw<'_, u32, SPI_SMEM_DDR_SPEC, u8, u8, Unsafe, 7, 14>
Bits 14:20 - The delay number of data strobe which from memory based on SPI_CLK.
pub fn dqs_loop(
&mut self
) -> BitWriterRaw<'_, u32, SPI_SMEM_DDR_SPEC, bool, BitM, 21>
pub fn dqs_loop(
&mut self
) -> BitWriterRaw<'_, u32, SPI_SMEM_DDR_SPEC, bool, BitM, 21>
Bit 21 - 1: Use internal signal as data strobe, the strobe can not be delayed by input timing module. 0: Use input SPI_DQS signal from PAD as data strobe, the strobe can be delayed by input timing module
pub fn dqs_loop_mode(
&mut self
) -> BitWriterRaw<'_, u32, SPI_SMEM_DDR_SPEC, bool, BitM, 22>
pub fn dqs_loop_mode(
&mut self
) -> BitWriterRaw<'_, u32, SPI_SMEM_DDR_SPEC, bool, BitM, 22>
Bit 22 - When SPI_SMEM_DDR_DQS_LOOP and SPI_SMEM_DDR_EN are set, 1: Use internal SPI_CLK as data strobe. 0: Use internal ~SPI_CLK as data strobe. Otherwise this bit is not active.
pub fn spi_smem_clk_diff_en(
&mut self
) -> BitWriterRaw<'_, u32, SPI_SMEM_DDR_SPEC, bool, BitM, 24>
pub fn spi_smem_clk_diff_en(
&mut self
) -> BitWriterRaw<'_, u32, SPI_SMEM_DDR_SPEC, bool, BitM, 24>
Bit 24 - Set this bit to enable the differential SPI_CLK#.
pub fn spi_smem_hyperbus_mode(
&mut self
) -> BitWriterRaw<'_, u32, SPI_SMEM_DDR_SPEC, bool, BitM, 25>
pub fn spi_smem_hyperbus_mode(
&mut self
) -> BitWriterRaw<'_, u32, SPI_SMEM_DDR_SPEC, bool, BitM, 25>
Bit 25 - Set this bit to enable the SPI HyperBus mode.
pub fn spi_smem_dqs_ca_in(
&mut self
) -> BitWriterRaw<'_, u32, SPI_SMEM_DDR_SPEC, bool, BitM, 26>
pub fn spi_smem_dqs_ca_in(
&mut self
) -> BitWriterRaw<'_, u32, SPI_SMEM_DDR_SPEC, bool, BitM, 26>
Bit 26 - Set this bit to enable the input of SPI_DQS signal in SPI phases of CMD and ADDR.
pub fn spi_smem_hyperbus_dummy_2x(
&mut self
) -> BitWriterRaw<'_, u32, SPI_SMEM_DDR_SPEC, bool, BitM, 27>
pub fn spi_smem_hyperbus_dummy_2x(
&mut self
) -> BitWriterRaw<'_, u32, SPI_SMEM_DDR_SPEC, bool, BitM, 27>
Bit 27 - Set this bit to enable the vary dummy function in SPI HyperBus mode, when SPI0 accesses to flash or SPI1 accesses flash or sram.
pub fn spi_smem_clk_diff_inv(
&mut self
) -> BitWriterRaw<'_, u32, SPI_SMEM_DDR_SPEC, bool, BitM, 28>
pub fn spi_smem_clk_diff_inv(
&mut self
) -> BitWriterRaw<'_, u32, SPI_SMEM_DDR_SPEC, bool, BitM, 28>
Bit 28 - Set this bit to invert SPI_DIFF when accesses to external RAM. .
pub fn spi_smem_octa_ram_addr(
&mut self
) -> BitWriterRaw<'_, u32, SPI_SMEM_DDR_SPEC, bool, BitM, 29>
pub fn spi_smem_octa_ram_addr(
&mut self
) -> BitWriterRaw<'_, u32, SPI_SMEM_DDR_SPEC, bool, BitM, 29>
Bit 29 - Set this bit to enable octa_ram address out when accesses to external RAM, which means ADDR_OUT[31:0] = {spi_usr_addr_value[25:4], 6’d0, spi_usr_addr_value[3:1], 1’b0}.
pub fn spi_smem_hyperbus_ca(
&mut self
) -> BitWriterRaw<'_, u32, SPI_SMEM_DDR_SPEC, bool, BitM, 30>
pub fn spi_smem_hyperbus_ca(
&mut self
) -> BitWriterRaw<'_, u32, SPI_SMEM_DDR_SPEC, bool, BitM, 30>
Bit 30 - Set this bit to enable HyperRAM address out when accesses to external RAM, which means ADDR_OUT[31:0] = {spi_usr_addr_value[19:4], 13’d0, spi_usr_addr_value[3:1]}.
Methods from Deref<Target = W<SPI_SMEM_DDR_SPEC>>§
pub unsafe fn bits(&mut self, bits: <REG as RegisterSpec>::Ux) -> &mut W<REG>
pub unsafe fn bits(&mut self, bits: <REG as RegisterSpec>::Ux) -> &mut W<REG>
Writes raw bits to the register.
Safety
Read datasheet or reference manual to find what values are allowed to pass.