pub struct SPI2 { /* private fields */ }
Implementations§
Source§impl SPI2
impl SPI2
Sourcepub const PTR: *const <SPI2 as Deref>::Target = {0x60081000 as *const <esp32c6::SPI2 as core::ops::Deref>::Target}
pub const PTR: *const <SPI2 as Deref>::Target = {0x60081000 as *const <esp32c6::SPI2 as core::ops::Deref>::Target}
Pointer to the register block
Methods from Deref<Target = RegisterBlock>§
Sourcepub fn clock(&self) -> &Reg<CLOCK_SPEC>
pub fn clock(&self) -> &Reg<CLOCK_SPEC>
0x0c - SPI clock control register
Sourcepub fn user1(&self) -> &Reg<USER1_SPEC>
pub fn user1(&self) -> &Reg<USER1_SPEC>
0x14 - SPI USER control register 1
Sourcepub fn user2(&self) -> &Reg<USER2_SPEC>
pub fn user2(&self) -> &Reg<USER2_SPEC>
0x18 - SPI USER control register 2
Sourcepub fn ms_dlen(&self) -> &Reg<MS_DLEN_SPEC>
pub fn ms_dlen(&self) -> &Reg<MS_DLEN_SPEC>
0x1c - SPI data bit length control register
Sourcepub fn din_mode(&self) -> &Reg<DIN_MODE_SPEC>
pub fn din_mode(&self) -> &Reg<DIN_MODE_SPEC>
0x24 - SPI input delay mode configuration
Sourcepub fn din_num(&self) -> &Reg<DIN_NUM_SPEC>
pub fn din_num(&self) -> &Reg<DIN_NUM_SPEC>
0x28 - SPI input delay number configuration
Sourcepub fn dout_mode(&self) -> &Reg<DOUT_MODE_SPEC>
pub fn dout_mode(&self) -> &Reg<DOUT_MODE_SPEC>
0x2c - SPI output delay mode configuration
Sourcepub fn dma_conf(&self) -> &Reg<DMA_CONF_SPEC>
pub fn dma_conf(&self) -> &Reg<DMA_CONF_SPEC>
0x30 - SPI DMA control register
Sourcepub fn dma_int_ena(&self) -> &Reg<DMA_INT_ENA_SPEC>
pub fn dma_int_ena(&self) -> &Reg<DMA_INT_ENA_SPEC>
0x34 - SPI interrupt enable register
Sourcepub fn dma_int_clr(&self) -> &Reg<DMA_INT_CLR_SPEC>
pub fn dma_int_clr(&self) -> &Reg<DMA_INT_CLR_SPEC>
0x38 - SPI interrupt clear register
Sourcepub fn dma_int_raw(&self) -> &Reg<DMA_INT_RAW_SPEC>
pub fn dma_int_raw(&self) -> &Reg<DMA_INT_RAW_SPEC>
0x3c - SPI interrupt raw register
Sourcepub fn dma_int_st(&self) -> &Reg<DMA_INT_ST_SPEC>
pub fn dma_int_st(&self) -> &Reg<DMA_INT_ST_SPEC>
0x40 - SPI interrupt status register
Sourcepub fn dma_int_set(&self) -> &Reg<DMA_INT_SET_SPEC>
pub fn dma_int_set(&self) -> &Reg<DMA_INT_SET_SPEC>
0x44 - SPI interrupt software set register
Sourcepub fn slave(&self) -> &Reg<SLAVE_SPEC>
pub fn slave(&self) -> &Reg<SLAVE_SPEC>
0xe0 - SPI slave control register
Sourcepub fn slave1(&self) -> &Reg<SLAVE1_SPEC>
pub fn slave1(&self) -> &Reg<SLAVE1_SPEC>
0xe4 - SPI slave control register 1
Sourcepub fn clk_gate(&self) -> &Reg<CLK_GATE_SPEC>
pub fn clk_gate(&self) -> &Reg<CLK_GATE_SPEC>
0xe8 - SPI module clock and register clock control
Trait Implementations§
Source§impl ExtendedInstance for SPI2
impl ExtendedInstance for SPI2
fn sio0_input_signal(&self) -> InputSignal
fn sio1_output_signal(&self) -> OutputSignal
fn sio2_output_signal(&self) -> OutputSignal
fn sio2_input_signal(&self) -> InputSignal
fn sio3_output_signal(&self) -> OutputSignal
fn sio3_input_signal(&self) -> InputSignal
Source§impl Instance for SPI2
impl Instance for SPI2
fn register_block(&self) -> &RegisterBlock
fn sclk_signal(&self) -> OutputSignal
fn mosi_signal(&self) -> OutputSignal
fn miso_signal(&self) -> InputSignal
fn cs_signal(&self) -> OutputSignal
fn enable_peripheral(&self)
fn spi_num(&self) -> u8
fn init_spi_data_mode( &mut self, cmd_mode: SpiDataMode, address_mode: SpiDataMode, data_mode: SpiDataMode, )
fn setup(&mut self, frequency: Rate<u32, 1, 1>, clocks: &Clocks<'_>)
fn set_data_mode(&mut self, data_mode: SpiMode) -> &mut Self
fn ch_bus_freq(&mut self, frequency: Rate<u32, 1, 1>, clocks: &Clocks<'_>)
fn read_byte(&mut self) -> Result<u8, Error<Error>>
fn write_byte(&mut self, word: u8) -> Result<(), Error<Error>>
Source§fn read_bytes(&mut self, words: &mut [u8]) -> Result<(), Error>
fn read_bytes(&mut self, words: &mut [u8]) -> Result<(), Error>
Read bytes from SPI. Read more
Source§fn read_bytes_from_fifo(&mut self, words: &mut [u8]) -> Result<(), Error>
fn read_bytes_from_fifo(&mut self, words: &mut [u8]) -> Result<(), Error>
Read received bytes from SPI FIFO. Read more
fn busy(&self) -> bool
fn flush(&mut self) -> Result<(), Error>
fn transfer<'w>(&mut self, words: &'w mut [u8]) -> Result<&'w [u8], Error>
fn start_operation(&self)
fn init_half_duplex( &mut self, is_write: bool, command_state: bool, address_state: bool, dummy_idle: bool, dummy_state: bool, no_mosi_miso: bool, )
fn write_bytes_half_duplex( &mut self, cmd: Command, address: Address, dummy: u8, buffer: &[u8], ) -> Result<(), Error>
fn read_bytes_half_duplex( &mut self, cmd: Command, address: Address, dummy: u8, buffer: &mut [u8], ) -> Result<(), Error>
fn update(&self)
fn configure_datalen(&self, len: u32)
Source§impl Instance for SPI2
impl Instance for SPI2
fn register_block(&self) -> &RegisterBlock
fn sclk_signal(&self) -> InputSignal
fn mosi_signal(&self) -> InputSignal
fn miso_signal(&self) -> OutputSignal
fn cs_signal(&self) -> InputSignal
fn enable_peripheral(&self)
fn spi_num(&self) -> u8
fn set_data_mode(&mut self, data_mode: SpiMode) -> &mut Self
fn is_bus_busy(&self) -> bool
fn flush(&mut self) -> Result<(), Error>
fn setup_for_flush(&self)
Source§impl<TX, RX> InstanceDma<TX, RX> for SPI2
impl<TX, RX> InstanceDma<TX, RX> for SPI2
fn transfer_in_place_dma<'w>( &mut self, words: &'w mut [u8], tx: &mut TX, rx: &mut RX, ) -> Result<&'w [u8], Error>
fn transfer_dma<'w>( &mut self, write_buffer: &'w [u8], read_buffer: &'w mut [u8], tx: &mut TX, rx: &mut RX, ) -> Result<&'w [u8], Error>
fn start_transfer_dma<'w>( &mut self, write_buffer_ptr: *const u8, write_buffer_len: usize, read_buffer_ptr: *mut u8, read_buffer_len: usize, tx: &mut TX, rx: &mut RX, listen: bool, ) -> Result<(), Error>
fn write_bytes_dma<'w>( &mut self, words: &'w [u8], tx: &mut TX, ) -> Result<&'w [u8], Error>
fn start_write_bytes_dma<'w>( &mut self, ptr: *const u8, len: usize, tx: &mut TX, listen: bool, ) -> Result<(), Error>
fn start_read_bytes_dma<'w>( &mut self, ptr: *mut u8, len: usize, rx: &mut RX, listen: bool, ) -> Result<(), Error>
fn dma_peripheral(&self) -> DmaPeripheral
fn enable_dma(&self)
fn clear_dma_interrupts(&self)
Source§impl<TX, RX> InstanceDma<TX, RX> for SPI2
impl<TX, RX> InstanceDma<TX, RX> for SPI2
fn start_transfer_dma( &mut self, write_buffer_ptr: *const u8, write_buffer_len: usize, read_buffer_ptr: *mut u8, read_buffer_len: usize, tx: &mut TX, rx: &mut RX, ) -> Result<(), Error>
fn start_write_bytes_dma( &mut self, ptr: *const u8, len: usize, tx: &mut TX, ) -> Result<(), Error>
fn start_read_bytes_dma( &mut self, ptr: *mut u8, len: usize, rx: &mut RX, ) -> Result<(), Error>
fn dma_peripheral(&self) -> DmaPeripheral
fn enable_dma(&self)
fn clear_dma_interrupts(&self)
Source§impl Peripheral for SPI2
impl Peripheral for SPI2
Auto Trait Implementations§
impl Freeze for SPI2
impl RefUnwindSafe for SPI2
impl Send for SPI2
impl Sync for SPI2
impl Unpin for SPI2
impl UnwindSafe for SPI2
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more