Struct esp32s2_hal::peripherals::SHA
source · pub struct SHA { /* private fields */ }
Implementations§
source§impl SHA
impl SHA
sourcepub unsafe fn steal() -> SHA
pub unsafe fn steal() -> SHA
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.
Methods from Deref<Target = RegisterBlock>§
pub fn mode(&self) -> &Reg<MODE_SPEC>
pub fn mode(&self) -> &Reg<MODE_SPEC>
0x00 - Defines the algorithm of SHA accelerator
pub fn t_string(&self) -> &Reg<T_STRING_SPEC>
pub fn t_string(&self) -> &Reg<T_STRING_SPEC>
0x04 - String content register for calculating initial Hash Value (only effective for SHA-512/t)
pub fn t_length(&self) -> &Reg<T_LENGTH_SPEC>
pub fn t_length(&self) -> &Reg<T_LENGTH_SPEC>
0x08 - String length register for calculating initial Hash Value (only effective for SHA-512/t)
pub fn dma_block_num(&self) -> &Reg<DMA_BLOCK_NUM_SPEC>
pub fn dma_block_num(&self) -> &Reg<DMA_BLOCK_NUM_SPEC>
0x0c - Block number register (only effective for DMA-SHA)
pub fn start(&self) -> &Reg<START_SPEC>
pub fn start(&self) -> &Reg<START_SPEC>
0x10 - Starts the SHA accelerator for Typical SHA operation
pub fn continue_(&self) -> &Reg<CONTINUE_SPEC>
pub fn continue_(&self) -> &Reg<CONTINUE_SPEC>
0x14 - Continues SHA operation (only effective in Typical SHA mode)
pub fn busy(&self) -> &Reg<BUSY_SPEC>
pub fn busy(&self) -> &Reg<BUSY_SPEC>
0x18 - Indicates if SHA Accelerator is busy or not
pub fn dma_start(&self) -> &Reg<DMA_START_SPEC>
pub fn dma_start(&self) -> &Reg<DMA_START_SPEC>
0x1c - Starts the SHA accelerator for DMA-SHA operation
pub fn dma_continue(&self) -> &Reg<DMA_CONTINUE_SPEC>
pub fn dma_continue(&self) -> &Reg<DMA_CONTINUE_SPEC>
0x20 - Continues SHA operation (only effective in DMA-SHA mode)
pub fn int_clear(&self) -> &Reg<INT_CLEAR_SPEC>
pub fn int_clear(&self) -> &Reg<INT_CLEAR_SPEC>
0x24 - DMA-SHA interrupt clear register
pub fn int_ena(&self) -> &Reg<INT_ENA_SPEC>
pub fn int_ena(&self) -> &Reg<INT_ENA_SPEC>
0x28 - DMA-SHA interrupt enable register
pub fn date(&self) -> &Reg<DATE_SPEC>
pub fn date(&self) -> &Reg<DATE_SPEC>
0x2c - Version control register
pub fn h_mem_iter(&self) -> impl Iterator<Item = &Reg<H_MEM_SPEC>>
pub fn h_mem_iter(&self) -> impl Iterator<Item = &Reg<H_MEM_SPEC>>
Iterator for array of: 0x40..0x80 - Hash value
pub fn m_mem_iter(&self) -> impl Iterator<Item = &Reg<M_MEM_SPEC>>
pub fn m_mem_iter(&self) -> impl Iterator<Item = &Reg<M_MEM_SPEC>>
Iterator for array of: 0x80..0x100 - Message