Struct stm32_metapac::xspi::regs::Cr
#[repr(transparent)]pub struct Cr(pub u32);
Expand description
XSPI control register
Tuple Fields§
§0: u32
Implementations§
§impl Cr
impl Cr
pub const fn en(&self) -> bool
pub const fn en(&self) -> bool
Enable This bit enables the XSPI. The DMA request can be aborted without having received the ACK in case this EN bit is cleared during the operation. Note: In case this bit is set to 0 during a DMA transfer, the REQ signal to DMA returns to inactive state without waiting for the ACK signal from DMA to be active.
pub fn set_en(&mut self, val: bool)
pub fn set_en(&mut self, val: bool)
Enable This bit enables the XSPI. The DMA request can be aborted without having received the ACK in case this EN bit is cleared during the operation. Note: In case this bit is set to 0 during a DMA transfer, the REQ signal to DMA returns to inactive state without waiting for the ACK signal from DMA to be active.
pub const fn abort(&self) -> bool
pub const fn abort(&self) -> bool
Abort request This bit aborts the on-going command sequence. It is automatically reset once the abort is completed. This bit stops the current transfer. Note: This bit is always read as 0.
pub fn set_abort(&mut self, val: bool)
pub fn set_abort(&mut self, val: bool)
Abort request This bit aborts the on-going command sequence. It is automatically reset once the abort is completed. This bit stops the current transfer. Note: This bit is always read as 0.
pub const fn dmaen(&self) -> bool
pub const fn dmaen(&self) -> bool
DMA enable In indirect mode, the DMA can be used to input or output data via XSPI_DR. DMA transfers are initiated when FTF is set. Note: Resetting the DMAEN bit while a DMA transfer is ongoing, breaks the handshake with the DMA. Do not write this bit during DMA operation.
pub fn set_dmaen(&mut self, val: bool)
pub fn set_dmaen(&mut self, val: bool)
DMA enable In indirect mode, the DMA can be used to input or output data via XSPI_DR. DMA transfers are initiated when FTF is set. Note: Resetting the DMAEN bit while a DMA transfer is ongoing, breaks the handshake with the DMA. Do not write this bit during DMA operation.
pub const fn tcen(&self) -> bool
pub const fn tcen(&self) -> bool
Timeout counter enable This bit is valid only when the memory-mapped mode (FMODE[1:0] = 11) is selected. This bit enables the timeout counter. Note: This bit can be modified only when BUSY = 0.
pub fn set_tcen(&mut self, val: bool)
pub fn set_tcen(&mut self, val: bool)
Timeout counter enable This bit is valid only when the memory-mapped mode (FMODE[1:0] = 11) is selected. This bit enables the timeout counter. Note: This bit can be modified only when BUSY = 0.
pub const fn dmm(&self) -> bool
pub const fn dmm(&self) -> bool
Dual-memory configuration This bit activates the dual-memory configuration, where two external devices are used simultaneously to double the throughput and the capacity Note: This bit can be modified only when BUSY = 0.
pub fn set_dmm(&mut self, val: bool)
pub fn set_dmm(&mut self, val: bool)
Dual-memory configuration This bit activates the dual-memory configuration, where two external devices are used simultaneously to double the throughput and the capacity Note: This bit can be modified only when BUSY = 0.
pub const fn fthres(&self) -> Fthres
pub const fn fthres(&self) -> Fthres
FIFO threshold level This field defines, in indirect mode, the threshold number of bytes in the FIFO that causes the FIFO threshold flag FTF in XSPI_SR, to be set. … Note: If DMAEN = 1, the DMA controller for the corresponding channel must be disabled before changing the FTHRES[5:0] value.
pub fn set_fthres(&mut self, val: Fthres)
pub fn set_fthres(&mut self, val: Fthres)
FIFO threshold level This field defines, in indirect mode, the threshold number of bytes in the FIFO that causes the FIFO threshold flag FTF in XSPI_SR, to be set. … Note: If DMAEN = 1, the DMA controller for the corresponding channel must be disabled before changing the FTHRES[5:0] value.
pub const fn teie(&self) -> bool
pub const fn teie(&self) -> bool
Transfer error interrupt enable This bit enables the transfer error interrupt.
pub fn set_teie(&mut self, val: bool)
pub fn set_teie(&mut self, val: bool)
Transfer error interrupt enable This bit enables the transfer error interrupt.
pub const fn tcie(&self) -> bool
pub const fn tcie(&self) -> bool
Transfer complete interrupt enable This bit enables the transfer complete interrupt.
pub fn set_tcie(&mut self, val: bool)
pub fn set_tcie(&mut self, val: bool)
Transfer complete interrupt enable This bit enables the transfer complete interrupt.
pub const fn ftie(&self) -> bool
pub const fn ftie(&self) -> bool
FIFO threshold interrupt enable This bit enables the FIFO threshold interrupt.
pub fn set_ftie(&mut self, val: bool)
pub fn set_ftie(&mut self, val: bool)
FIFO threshold interrupt enable This bit enables the FIFO threshold interrupt.
pub const fn smie(&self) -> bool
pub const fn smie(&self) -> bool
Status match interrupt enable This bit enables the status match interrupt.
pub fn set_smie(&mut self, val: bool)
pub fn set_smie(&mut self, val: bool)
Status match interrupt enable This bit enables the status match interrupt.
pub fn set_toie(&mut self, val: bool)
pub fn set_toie(&mut self, val: bool)
Timeout interrupt enable This bit enables the timeout interrupt.
pub const fn apms(&self) -> Apms
pub const fn apms(&self) -> Apms
Automatic status-polling mode stop This bit determines if the automatic status-polling is stopped after a match. Note: This bit can be modified only when BUSY = 0.
pub fn set_apms(&mut self, val: Apms)
pub fn set_apms(&mut self, val: Apms)
Automatic status-polling mode stop This bit determines if the automatic status-polling is stopped after a match. Note: This bit can be modified only when BUSY = 0.
pub const fn pmm(&self) -> Pmm
pub const fn pmm(&self) -> Pmm
Polling match mode This bit indicates which method must be used to determine a match during the automatic status-polling mode. Note: This bit can be modified only when BUSY = 0.
pub fn set_pmm(&mut self, val: Pmm)
pub fn set_pmm(&mut self, val: Pmm)
Polling match mode This bit indicates which method must be used to determine a match during the automatic status-polling mode. Note: This bit can be modified only when BUSY = 0.
pub const fn cssel(&self) -> Cssel
pub const fn cssel(&self) -> Cssel
chip select selection This bit indicates if the XSPI must activate NCS1 or NCS2. Note: This bit can be modified only when BUSY = 0.
pub fn set_cssel(&mut self, val: Cssel)
pub fn set_cssel(&mut self, val: Cssel)
chip select selection This bit indicates if the XSPI must activate NCS1 or NCS2. Note: This bit can be modified only when BUSY = 0.
pub const fn fmode(&self) -> Fmode
pub const fn fmode(&self) -> Fmode
Functional mode This field defines the XSPI functional mode of operation. If DMAEN = 1 already, then the DMA controller for the corresponding channel must be disabled before changing the FMODE[1:0] value. If FMODE[1:0] and FTHRES[4:0] are wrongly updated while DMAEN = 1, the DMA request signal automatically goes to inactive state. Note: This bitfield can be modified only when BUSY = 0.
pub fn set_fmode(&mut self, val: Fmode)
pub fn set_fmode(&mut self, val: Fmode)
Functional mode This field defines the XSPI functional mode of operation. If DMAEN = 1 already, then the DMA controller for the corresponding channel must be disabled before changing the FMODE[1:0] value. If FMODE[1:0] and FTHRES[4:0] are wrongly updated while DMAEN = 1, the DMA request signal automatically goes to inactive state. Note: This bitfield can be modified only when BUSY = 0.
Trait Implementations§
impl Copy for Cr
impl Eq for Cr
impl StructuralPartialEq for Cr
Auto Trait Implementations§
impl Freeze for Cr
impl RefUnwindSafe for Cr
impl Send for Cr
impl Sync for Cr
impl Unpin for Cr
impl UnwindSafe for Cr
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
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)