rp2040_pac/
watchdog.rs

1#[doc = r"Register block"]
2#[repr(C)]
3pub struct RegisterBlock {
4    ctrl: CTRL,
5    load: LOAD,
6    reason: REASON,
7    scratch0: SCRATCH0,
8    scratch1: SCRATCH1,
9    scratch2: SCRATCH2,
10    scratch3: SCRATCH3,
11    scratch4: SCRATCH4,
12    scratch5: SCRATCH5,
13    scratch6: SCRATCH6,
14    scratch7: SCRATCH7,
15    tick: TICK,
16}
17impl RegisterBlock {
18    #[doc = "0x00 - Watchdog control  
19 The rst_wdsel register determines which subsystems are reset when the watchdog is triggered.  
20 The watchdog can be triggered in software."]
21    #[inline(always)]
22    pub const fn ctrl(&self) -> &CTRL {
23        &self.ctrl
24    }
25    #[doc = "0x04 - Load the watchdog timer. The maximum setting is 0xffffff which corresponds to 0xffffff / 2 ticks before triggering a watchdog reset (see errata RP2040-E1)."]
26    #[inline(always)]
27    pub const fn load(&self) -> &LOAD {
28        &self.load
29    }
30    #[doc = "0x08 - Logs the reason for the last reset. Both bits are zero for the case of a hardware reset."]
31    #[inline(always)]
32    pub const fn reason(&self) -> &REASON {
33        &self.reason
34    }
35    #[doc = "0x0c - Scratch register. Information persists through soft reset of the chip."]
36    #[inline(always)]
37    pub const fn scratch0(&self) -> &SCRATCH0 {
38        &self.scratch0
39    }
40    #[doc = "0x10 - Scratch register. Information persists through soft reset of the chip."]
41    #[inline(always)]
42    pub const fn scratch1(&self) -> &SCRATCH1 {
43        &self.scratch1
44    }
45    #[doc = "0x14 - Scratch register. Information persists through soft reset of the chip."]
46    #[inline(always)]
47    pub const fn scratch2(&self) -> &SCRATCH2 {
48        &self.scratch2
49    }
50    #[doc = "0x18 - Scratch register. Information persists through soft reset of the chip."]
51    #[inline(always)]
52    pub const fn scratch3(&self) -> &SCRATCH3 {
53        &self.scratch3
54    }
55    #[doc = "0x1c - Scratch register. Information persists through soft reset of the chip."]
56    #[inline(always)]
57    pub const fn scratch4(&self) -> &SCRATCH4 {
58        &self.scratch4
59    }
60    #[doc = "0x20 - Scratch register. Information persists through soft reset of the chip."]
61    #[inline(always)]
62    pub const fn scratch5(&self) -> &SCRATCH5 {
63        &self.scratch5
64    }
65    #[doc = "0x24 - Scratch register. Information persists through soft reset of the chip."]
66    #[inline(always)]
67    pub const fn scratch6(&self) -> &SCRATCH6 {
68        &self.scratch6
69    }
70    #[doc = "0x28 - Scratch register. Information persists through soft reset of the chip."]
71    #[inline(always)]
72    pub const fn scratch7(&self) -> &SCRATCH7 {
73        &self.scratch7
74    }
75    #[doc = "0x2c - Controls the tick generator"]
76    #[inline(always)]
77    pub const fn tick(&self) -> &TICK {
78        &self.tick
79    }
80}
81#[doc = "CTRL (rw) register accessor: Watchdog control  
82 The rst_wdsel register determines which subsystems are reset when the watchdog is triggered.  
83 The watchdog can be triggered in software.  
84
85You can [`read`](crate::generic::Reg::read) this register and get [`ctrl::R`].  You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`ctrl::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).  
86
87For information about available fields see [`mod@ctrl`]
88module"]
89pub type CTRL = crate::Reg<ctrl::CTRL_SPEC>;
90#[doc = "Watchdog control  
91 The rst_wdsel register determines which subsystems are reset when the watchdog is triggered.  
92 The watchdog can be triggered in software."]
93pub mod ctrl;
94#[doc = "LOAD (w) register accessor: Load the watchdog timer. The maximum setting is 0xffffff which corresponds to 0xffffff / 2 ticks before triggering a watchdog reset (see errata RP2040-E1).  
95
96You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`load::W`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).  
97
98For information about available fields see [`mod@load`]
99module"]
100pub type LOAD = crate::Reg<load::LOAD_SPEC>;
101#[doc = "Load the watchdog timer. The maximum setting is 0xffffff which corresponds to 0xffffff / 2 ticks before triggering a watchdog reset (see errata RP2040-E1)."]
102pub mod load;
103#[doc = "REASON (r) register accessor: Logs the reason for the last reset. Both bits are zero for the case of a hardware reset.  
104
105You can [`read`](crate::generic::Reg::read) this register and get [`reason::R`].  See [API](https://docs.rs/svd2rust/#read--modify--write-api).  
106
107For information about available fields see [`mod@reason`]
108module"]
109pub type REASON = crate::Reg<reason::REASON_SPEC>;
110#[doc = "Logs the reason for the last reset. Both bits are zero for the case of a hardware reset."]
111pub mod reason;
112#[doc = "SCRATCH0 (rw) register accessor: Scratch register. Information persists through soft reset of the chip.  
113
114You can [`read`](crate::generic::Reg::read) this register and get [`scratch0::R`].  You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`scratch0::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).  
115
116For information about available fields see [`mod@scratch0`]
117module"]
118pub type SCRATCH0 = crate::Reg<scratch0::SCRATCH0_SPEC>;
119#[doc = "Scratch register. Information persists through soft reset of the chip."]
120pub mod scratch0;
121#[doc = "SCRATCH1 (rw) register accessor: Scratch register. Information persists through soft reset of the chip.  
122
123You can [`read`](crate::generic::Reg::read) this register and get [`scratch1::R`].  You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`scratch1::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).  
124
125For information about available fields see [`mod@scratch1`]
126module"]
127pub type SCRATCH1 = crate::Reg<scratch1::SCRATCH1_SPEC>;
128#[doc = "Scratch register. Information persists through soft reset of the chip."]
129pub mod scratch1;
130#[doc = "SCRATCH2 (rw) register accessor: Scratch register. Information persists through soft reset of the chip.  
131
132You can [`read`](crate::generic::Reg::read) this register and get [`scratch2::R`].  You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`scratch2::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).  
133
134For information about available fields see [`mod@scratch2`]
135module"]
136pub type SCRATCH2 = crate::Reg<scratch2::SCRATCH2_SPEC>;
137#[doc = "Scratch register. Information persists through soft reset of the chip."]
138pub mod scratch2;
139#[doc = "SCRATCH3 (rw) register accessor: Scratch register. Information persists through soft reset of the chip.  
140
141You can [`read`](crate::generic::Reg::read) this register and get [`scratch3::R`].  You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`scratch3::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).  
142
143For information about available fields see [`mod@scratch3`]
144module"]
145pub type SCRATCH3 = crate::Reg<scratch3::SCRATCH3_SPEC>;
146#[doc = "Scratch register. Information persists through soft reset of the chip."]
147pub mod scratch3;
148#[doc = "SCRATCH4 (rw) register accessor: Scratch register. Information persists through soft reset of the chip.  
149
150You can [`read`](crate::generic::Reg::read) this register and get [`scratch4::R`].  You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`scratch4::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).  
151
152For information about available fields see [`mod@scratch4`]
153module"]
154pub type SCRATCH4 = crate::Reg<scratch4::SCRATCH4_SPEC>;
155#[doc = "Scratch register. Information persists through soft reset of the chip."]
156pub mod scratch4;
157#[doc = "SCRATCH5 (rw) register accessor: Scratch register. Information persists through soft reset of the chip.  
158
159You can [`read`](crate::generic::Reg::read) this register and get [`scratch5::R`].  You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`scratch5::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).  
160
161For information about available fields see [`mod@scratch5`]
162module"]
163pub type SCRATCH5 = crate::Reg<scratch5::SCRATCH5_SPEC>;
164#[doc = "Scratch register. Information persists through soft reset of the chip."]
165pub mod scratch5;
166#[doc = "SCRATCH6 (rw) register accessor: Scratch register. Information persists through soft reset of the chip.  
167
168You can [`read`](crate::generic::Reg::read) this register and get [`scratch6::R`].  You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`scratch6::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).  
169
170For information about available fields see [`mod@scratch6`]
171module"]
172pub type SCRATCH6 = crate::Reg<scratch6::SCRATCH6_SPEC>;
173#[doc = "Scratch register. Information persists through soft reset of the chip."]
174pub mod scratch6;
175#[doc = "SCRATCH7 (rw) register accessor: Scratch register. Information persists through soft reset of the chip.  
176
177You can [`read`](crate::generic::Reg::read) this register and get [`scratch7::R`].  You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`scratch7::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).  
178
179For information about available fields see [`mod@scratch7`]
180module"]
181pub type SCRATCH7 = crate::Reg<scratch7::SCRATCH7_SPEC>;
182#[doc = "Scratch register. Information persists through soft reset of the chip."]
183pub mod scratch7;
184#[doc = "TICK (rw) register accessor: Controls the tick generator  
185
186You can [`read`](crate::generic::Reg::read) this register and get [`tick::R`].  You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`tick::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).  
187
188For information about available fields see [`mod@tick`]
189module"]
190pub type TICK = crate::Reg<tick::TICK_SPEC>;
191#[doc = "Controls the tick generator"]
192pub mod tick;