pub struct WATCHDOG { /* private fields */ }Expand description
WATCHDOG
Implementations§
Source§impl WATCHDOG
impl WATCHDOG
Sourcepub const PTR: *const RegisterBlock = {0x400d8000 as *const rp235x_hal::rp235x_pac::watchdog::RegisterBlock}
pub const PTR: *const RegisterBlock = {0x400d8000 as *const rp235x_hal::rp235x_pac::watchdog::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() -> WATCHDOG
pub unsafe fn steal() -> WATCHDOG
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 ctrl(&self) -> &Reg<CTRL_SPEC>
pub fn ctrl(&self) -> &Reg<CTRL_SPEC>
0x00 - Watchdog control The rst_wdsel register determines which subsystems are reset when the watchdog is triggered. The watchdog can be triggered in software.
Sourcepub fn load(&self) -> &Reg<LOAD_SPEC>
pub fn load(&self) -> &Reg<LOAD_SPEC>
0x04 - Load the watchdog timer. The maximum setting is 0xffffff which corresponds to approximately 16 seconds.
Sourcepub fn reason(&self) -> &Reg<REASON_SPEC>
pub fn reason(&self) -> &Reg<REASON_SPEC>
0x08 - Logs the reason for the last reset. Both bits are zero for the case of a hardware reset. Additionally, as of RP2350, a debugger warm reset of either core (SYSRESETREQ or hartreset) will also clear the watchdog reason register, so that software loaded under the debugger following a watchdog timeout will not continue to see the timeout condition.
Sourcepub fn scratch0(&self) -> &Reg<SCRATCH0_SPEC>
pub fn scratch0(&self) -> &Reg<SCRATCH0_SPEC>
0x0c - Scratch register. Information persists through soft reset of the chip.
Sourcepub fn scratch1(&self) -> &Reg<SCRATCH1_SPEC>
pub fn scratch1(&self) -> &Reg<SCRATCH1_SPEC>
0x10 - Scratch register. Information persists through soft reset of the chip.
Sourcepub fn scratch2(&self) -> &Reg<SCRATCH2_SPEC>
pub fn scratch2(&self) -> &Reg<SCRATCH2_SPEC>
0x14 - Scratch register. Information persists through soft reset of the chip.
Sourcepub fn scratch3(&self) -> &Reg<SCRATCH3_SPEC>
pub fn scratch3(&self) -> &Reg<SCRATCH3_SPEC>
0x18 - Scratch register. Information persists through soft reset of the chip.
Sourcepub fn scratch4(&self) -> &Reg<SCRATCH4_SPEC>
pub fn scratch4(&self) -> &Reg<SCRATCH4_SPEC>
0x1c - Scratch register. Information persists through soft reset of the chip.
Sourcepub fn scratch5(&self) -> &Reg<SCRATCH5_SPEC>
pub fn scratch5(&self) -> &Reg<SCRATCH5_SPEC>
0x20 - Scratch register. Information persists through soft reset of the chip.
Sourcepub fn scratch6(&self) -> &Reg<SCRATCH6_SPEC>
pub fn scratch6(&self) -> &Reg<SCRATCH6_SPEC>
0x24 - Scratch register. Information persists through soft reset of the chip.
Sourcepub fn scratch7(&self) -> &Reg<SCRATCH7_SPEC>
pub fn scratch7(&self) -> &Reg<SCRATCH7_SPEC>
0x28 - Scratch register. Information persists through soft reset of the chip.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for WATCHDOG
impl RefUnwindSafe for WATCHDOG
impl !Sync for WATCHDOG
impl Unpin for WATCHDOG
impl UnwindSafe for WATCHDOG
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<Choices> CoproductSubsetter<CNil, HNil> for Choices
impl<Choices> CoproductSubsetter<CNil, HNil> for Choices
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more