pub struct SYSTEM { /* private fields */ }

Implementations§

source§

impl SYSTEM

source

pub unsafe fn steal() -> SYSTEM

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.

source

pub const PTR: *const <SYSTEM as Deref>::Target = {0x3f4c0000 as *const <esp32s2::SYSTEM as core::ops::Deref>::Target}

Pointer to the register block

source

pub const fn ptr() -> *const <SYSTEM as Deref>::Target

Return the pointer to the register block

Methods from Deref<Target = RegisterBlock>§

source

pub fn rom_ctrl_0(&self) -> &Reg<ROM_CTRL_0_SPEC>

0x00 - System ROM configuration register 0

source

pub fn rom_ctrl_1(&self) -> &Reg<ROM_CTRL_1_SPEC>

0x04 - System ROM configuration register 1

source

pub fn sram_ctrl_0(&self) -> &Reg<SRAM_CTRL_0_SPEC>

0x08 - System SRAM configuration register 0

source

pub fn sram_ctrl_1(&self) -> &Reg<SRAM_CTRL_1_SPEC>

0x0c - System SRAM configuration register 1

source

pub fn cpu_peri_clk_en(&self) -> &Reg<CPU_PERI_CLK_EN_SPEC>

0x10 - CPU peripheral clock enable register

source

pub fn cpu_peri_rst_en(&self) -> &Reg<CPU_PERI_RST_EN_SPEC>

0x14 - CPU peripheral reset register

source

pub fn cpu_per_conf(&self) -> &Reg<CPU_PER_CONF_SPEC>

0x18 - CPU peripheral clock configuration register

source

pub fn jtag_ctrl_0(&self) -> &Reg<JTAG_CTRL_0_SPEC>

0x1c - JTAG configuration register 0

source

pub fn jtag_ctrl_1(&self) -> &Reg<JTAG_CTRL_1_SPEC>

0x20 - JTAG configuration register 1

source

pub fn jtag_ctrl_2(&self) -> &Reg<JTAG_CTRL_2_SPEC>

0x24 - JTAG configuration register 2

source

pub fn jtag_ctrl_3(&self) -> &Reg<JTAG_CTRL_3_SPEC>

0x28 - JTAG configuration register 3

source

pub fn jtag_ctrl_4(&self) -> &Reg<JTAG_CTRL_4_SPEC>

0x2c - JTAG configuration register 4

source

pub fn jtag_ctrl_5(&self) -> &Reg<JTAG_CTRL_5_SPEC>

0x30 - JTAG configuration register 5

source

pub fn jtag_ctrl_6(&self) -> &Reg<JTAG_CTRL_6_SPEC>

0x34 - JTAG configuration register 6

source

pub fn jtag_ctrl_7(&self) -> &Reg<JTAG_CTRL_7_SPEC>

0x38 - JTAG configuration register 7

source

pub fn mem_pd_mask(&self) -> &Reg<MEM_PD_MASK_SPEC>

0x3c - Memory power-related controlling register (under low-sleep)

source

pub fn perip_clk_en0(&self) -> &Reg<PERIP_CLK_EN0_SPEC>

0x40 - System peripheral clock (for hardware accelerators) enable register

source

pub fn perip_clk_en1(&self) -> &Reg<PERIP_CLK_EN1_SPEC>

0x44 - System peripheral clock (for hardware accelerators) enable register 1

source

pub fn perip_rst_en0(&self) -> &Reg<PERIP_RST_EN0_SPEC>

0x48 - System peripheral (hardware accelerators) reset register 0

source

pub fn perip_rst_en1(&self) -> &Reg<PERIP_RST_EN1_SPEC>

0x4c - System peripheral (hardware accelerators) reset register 1

source

pub fn lpck_div_int(&self) -> &Reg<LPCK_DIV_INT_SPEC>

0x50 - Low power clock divider integer register

source

pub fn bt_lpck_div_frac(&self) -> &Reg<BT_LPCK_DIV_FRAC_SPEC>

0x54 - Divider fraction configuration register for low-power clock

source

pub fn cpu_intr_from_cpu_0(&self) -> &Reg<CPU_INTR_FROM_CPU_0_SPEC>

0x58 - CPU interrupt controlling register 0

source

pub fn cpu_intr_from_cpu_1(&self) -> &Reg<CPU_INTR_FROM_CPU_1_SPEC>

0x5c - CPU interrupt controlling register 1

source

pub fn cpu_intr_from_cpu_2(&self) -> &Reg<CPU_INTR_FROM_CPU_2_SPEC>

0x60 - CPU interrupt controlling register 2

source

pub fn cpu_intr_from_cpu_3(&self) -> &Reg<CPU_INTR_FROM_CPU_3_SPEC>

0x64 - CPU interrupt controlling register 3

source

pub fn rsa_pd_ctrl(&self) -> &Reg<RSA_PD_CTRL_SPEC>

0x68 - RSA memory remapping register

source

pub fn bustoextmem_ena(&self) -> &Reg<BUSTOEXTMEM_ENA_SPEC>

0x6c - EDMA enable register

source

pub fn cache_control(&self) -> &Reg<CACHE_CONTROL_SPEC>

0x70 - Cache control register

source

pub fn external_device_encrypt_decrypt_control( &self ) -> &Reg<EXTERNAL_DEVICE_ENCRYPT_DECRYPT_CONTROL_SPEC>

0x74 - External memory encrypt and decrypt controlling register

source

pub fn rtc_fastmem_config(&self) -> &Reg<RTC_FASTMEM_CONFIG_SPEC>

0x78 - RTC fast memory configuration register

source

pub fn rtc_fastmem_crc(&self) -> &Reg<RTC_FASTMEM_CRC_SPEC>

0x7c - RTC fast memory CRC controlling register

source

pub fn redundant_eco_ctrl(&self) -> &Reg<REDUNDANT_ECO_CTRL_SPEC>

0x80 - Redundant ECO control register

source

pub fn clock_gate(&self) -> &Reg<CLOCK_GATE_SPEC>

0x84 - Clock gate control register

source

pub fn sram_ctrl_2(&self) -> &Reg<SRAM_CTRL_2_SPEC>

0x88 - System SRAM configuration register 2

source

pub fn sysclk_conf(&self) -> &Reg<SYSCLK_CONF_SPEC>

0x8c - SoC clock configuration register

source

pub fn date(&self) -> &Reg<DATE_SPEC>

0xffc - Version control register

Trait Implementations§

source§

impl Debug for SYSTEM

source§

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

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

impl Deref for SYSTEM

§

type Target = <SYSTEM as Deref>::Target

The resulting type after dereferencing.
source§

fn deref(&self) -> &<SYSTEM as Deref>::Target

Dereferences the value.
source§

impl DerefMut for SYSTEM

source§

fn deref_mut(&mut self) -> &mut <SYSTEM as Deref>::Target

Mutably dereferences the value.
source§

impl Peripheral for SYSTEM

§

type P = SYSTEM

Peripheral singleton type
source§

unsafe fn clone_unchecked(&mut self) -> <SYSTEM as Peripheral>::P

Unsafely clone (duplicate) a peripheral singleton. Read more
source§

fn into_ref<'a>(self) -> PeripheralRef<'a, Self::P>
where Self: 'a,

Convert a value into a PeripheralRef. Read more

Auto Trait Implementations§

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.
source§

impl<'d, T> SystemExt<'d> for T
where T: Peripheral<P = SYSTEM> + 'd,

§

type Parts = SystemParts<'d>

source§

fn split(self) -> <T as SystemExt<'d>>::Parts

Splits the SYSTEM/DPORT peripheral into it’s parts.