Struct rp2040_pac::IO_BANK0
source · pub struct IO_BANK0 { /* private fields */ }
Expand description
IO_BANK0
Implementations§
source§impl IO_BANK0
impl IO_BANK0
sourcepub const PTR: *const RegisterBlock = {0x40014000 as *const io_bank0::RegisterBlock}
pub const PTR: *const RegisterBlock = {0x40014000 as *const io_bank0::RegisterBlock}
Pointer to the register block
sourcepub const fn ptr() -> *const RegisterBlock
pub const fn ptr() -> *const RegisterBlock
Return the pointer to the register block
sourcepub unsafe fn steal() -> Self
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>§
sourcepub fn gpio(&self, n: usize) -> &GPIO
pub fn gpio(&self, n: usize) -> &GPIO
0x00..0xf0 - Cluster GPIO%s, containing GPIO*_STATUS, GPIO*_CTRL
sourcepub fn gpio_iter(&self) -> impl Iterator<Item = &GPIO>
pub fn gpio_iter(&self) -> impl Iterator<Item = &GPIO>
Iterator for array of: 0x00..0xf0 - Cluster GPIO%s, containing GPIO*_STATUS, GPIO*_CTRL
sourcepub fn intr_iter(&self) -> impl Iterator<Item = &INTR>
pub fn intr_iter(&self) -> impl Iterator<Item = &INTR>
Iterator for array of: 0xf0..0x100 - Raw Interrupts
sourcepub fn proc0_inte(&self, n: usize) -> &PROC0_INTE
pub fn proc0_inte(&self, n: usize) -> &PROC0_INTE
0x100..0x110 - Interrupt Enable for proc0
sourcepub fn proc0_inte_iter(&self) -> impl Iterator<Item = &PROC0_INTE>
pub fn proc0_inte_iter(&self) -> impl Iterator<Item = &PROC0_INTE>
Iterator for array of: 0x100..0x110 - Interrupt Enable for proc0
sourcepub fn proc0_intf(&self, n: usize) -> &PROC0_INTF
pub fn proc0_intf(&self, n: usize) -> &PROC0_INTF
0x110..0x120 - Interrupt Force for proc0
sourcepub fn proc0_intf_iter(&self) -> impl Iterator<Item = &PROC0_INTF>
pub fn proc0_intf_iter(&self) -> impl Iterator<Item = &PROC0_INTF>
Iterator for array of: 0x110..0x120 - Interrupt Force for proc0
sourcepub fn proc0_ints(&self, n: usize) -> &PROC0_INTS
pub fn proc0_ints(&self, n: usize) -> &PROC0_INTS
0x120..0x130 - Interrupt status after masking & forcing for proc0
sourcepub fn proc0_ints_iter(&self) -> impl Iterator<Item = &PROC0_INTS>
pub fn proc0_ints_iter(&self) -> impl Iterator<Item = &PROC0_INTS>
Iterator for array of: 0x120..0x130 - Interrupt status after masking & forcing for proc0
sourcepub fn proc1_inte(&self, n: usize) -> &PROC1_INTE
pub fn proc1_inte(&self, n: usize) -> &PROC1_INTE
0x130..0x140 - Interrupt Enable for proc1
sourcepub fn proc1_inte_iter(&self) -> impl Iterator<Item = &PROC1_INTE>
pub fn proc1_inte_iter(&self) -> impl Iterator<Item = &PROC1_INTE>
Iterator for array of: 0x130..0x140 - Interrupt Enable for proc1
sourcepub fn proc1_intf(&self, n: usize) -> &PROC1_INTF
pub fn proc1_intf(&self, n: usize) -> &PROC1_INTF
0x140..0x150 - Interrupt Force for proc1
sourcepub fn proc1_intf_iter(&self) -> impl Iterator<Item = &PROC1_INTF>
pub fn proc1_intf_iter(&self) -> impl Iterator<Item = &PROC1_INTF>
Iterator for array of: 0x140..0x150 - Interrupt Force for proc1
sourcepub fn proc1_ints(&self, n: usize) -> &PROC1_INTS
pub fn proc1_ints(&self, n: usize) -> &PROC1_INTS
0x150..0x160 - Interrupt status after masking & forcing for proc1
sourcepub fn proc1_ints_iter(&self) -> impl Iterator<Item = &PROC1_INTS>
pub fn proc1_ints_iter(&self) -> impl Iterator<Item = &PROC1_INTS>
Iterator for array of: 0x150..0x160 - Interrupt status after masking & forcing for proc1
sourcepub fn dormant_wake_inte(&self, n: usize) -> &DORMANT_WAKE_INTE
pub fn dormant_wake_inte(&self, n: usize) -> &DORMANT_WAKE_INTE
0x160..0x170 - Interrupt Enable for dormant_wake
sourcepub fn dormant_wake_inte_iter(&self) -> impl Iterator<Item = &DORMANT_WAKE_INTE>
pub fn dormant_wake_inte_iter(&self) -> impl Iterator<Item = &DORMANT_WAKE_INTE>
Iterator for array of: 0x160..0x170 - Interrupt Enable for dormant_wake
sourcepub fn dormant_wake_intf(&self, n: usize) -> &DORMANT_WAKE_INTF
pub fn dormant_wake_intf(&self, n: usize) -> &DORMANT_WAKE_INTF
0x170..0x180 - Interrupt Force for dormant_wake
sourcepub fn dormant_wake_intf_iter(&self) -> impl Iterator<Item = &DORMANT_WAKE_INTF>
pub fn dormant_wake_intf_iter(&self) -> impl Iterator<Item = &DORMANT_WAKE_INTF>
Iterator for array of: 0x170..0x180 - Interrupt Force for dormant_wake
sourcepub fn dormant_wake_ints(&self, n: usize) -> &DORMANT_WAKE_INTS
pub fn dormant_wake_ints(&self, n: usize) -> &DORMANT_WAKE_INTS
0x180..0x190 - Interrupt status after masking & forcing for dormant_wake
sourcepub fn dormant_wake_ints_iter(&self) -> impl Iterator<Item = &DORMANT_WAKE_INTS>
pub fn dormant_wake_ints_iter(&self) -> impl Iterator<Item = &DORMANT_WAKE_INTS>
Iterator for array of: 0x180..0x190 - Interrupt status after masking & forcing for dormant_wake