Struct esp32::AES

source ·
pub struct AES { /* private fields */ }
Expand description

AES (Advanced Encryption Standard) Accelerator

Implementations§

source§

impl AES

source

pub const PTR: *const RegisterBlock = {0x3ff01000 as *const aes::RegisterBlock}

Pointer to the register block

source

pub const fn ptr() -> *const RegisterBlock

Return the pointer to the register block

source

pub unsafe fn steal() -> Self

Steal an instance of this peripheral

§Safety

Ensure that the new instance of the peripheral cannot be used in a way that may race with any existing instances, for example by only accessing read-only or write-only registers, or by consuming the original peripheral and using critical sections to coordinate access between multiple new instances.

Additionally, other software such as HALs may rely on only one peripheral instance existing to ensure memory safety; ensure no stolen instances are passed to such software.

Methods from Deref<Target = RegisterBlock>§

source

pub fn start(&self) -> &START

0x00 -

source

pub fn idle(&self) -> &IDLE

0x04 -

source

pub fn mode(&self) -> &MODE

0x08 -

source

pub fn key(&self, n: usize) -> &KEY

0x10..0x30 -

source

pub fn key_iter(&self) -> impl Iterator<Item = &KEY>

Iterator for array of: 0x10..0x30 -

source

pub fn text(&self, n: usize) -> &TEXT

0x30..0x40 -

source

pub fn text_iter(&self) -> impl Iterator<Item = &TEXT>

Iterator for array of: 0x30..0x40 -

source

pub fn endian(&self) -> &ENDIAN

0x40 -

Trait Implementations§

source§

impl Debug for AES

source§

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

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

impl Deref for AES

§

type Target = RegisterBlock

The resulting type after dereferencing.
source§

fn deref(&self) -> &Self::Target

Dereferences the value.
source§

impl Send for AES

Auto Trait Implementations§

§

impl Freeze for AES

§

impl RefUnwindSafe for AES

§

impl !Sync for AES

§

impl Unpin for AES

§

impl UnwindSafe for AES

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<T, U> TryFrom<U> for T
where U: Into<T>,

§

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>,

§

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.