nrf52833_pac/
power.rs

1#[doc = r"Register block"]
2#[repr(C)]
3pub struct RegisterBlock {
4    _reserved0: [u8; 0x78],
5    #[doc = "0x78 - Enable Constant Latency mode"]
6    pub tasks_constlat: TASKS_CONSTLAT,
7    #[doc = "0x7c - Enable Low-power mode (variable latency)"]
8    pub tasks_lowpwr: TASKS_LOWPWR,
9    _reserved2: [u8; 0x88],
10    #[doc = "0x108 - Power failure warning"]
11    pub events_pofwarn: EVENTS_POFWARN,
12    _reserved3: [u8; 0x08],
13    #[doc = "0x114 - CPU entered WFI/WFE sleep"]
14    pub events_sleepenter: EVENTS_SLEEPENTER,
15    #[doc = "0x118 - CPU exited WFI/WFE sleep"]
16    pub events_sleepexit: EVENTS_SLEEPEXIT,
17    #[doc = "0x11c - Voltage supply detected on VBUS"]
18    pub events_usbdetected: EVENTS_USBDETECTED,
19    #[doc = "0x120 - Voltage supply removed from VBUS"]
20    pub events_usbremoved: EVENTS_USBREMOVED,
21    #[doc = "0x124 - USB 3.3 V supply ready"]
22    pub events_usbpwrrdy: EVENTS_USBPWRRDY,
23    _reserved8: [u8; 0x01dc],
24    #[doc = "0x304 - Enable interrupt"]
25    pub intenset: INTENSET,
26    #[doc = "0x308 - Disable interrupt"]
27    pub intenclr: INTENCLR,
28    _reserved10: [u8; 0xf4],
29    #[doc = "0x400 - Reset reason"]
30    pub resetreas: RESETREAS,
31    _reserved11: [u8; 0x24],
32    #[doc = "0x428 - Deprecated register - RAM status register"]
33    pub ramstatus: RAMSTATUS,
34    _reserved12: [u8; 0x0c],
35    #[doc = "0x438 - USB supply status"]
36    pub usbregstatus: USBREGSTATUS,
37    _reserved13: [u8; 0xc4],
38    #[doc = "0x500 - System OFF register"]
39    pub systemoff: SYSTEMOFF,
40    _reserved14: [u8; 0x0c],
41    #[doc = "0x510 - Power-fail comparator configuration"]
42    pub pofcon: POFCON,
43    _reserved15: [u8; 0x08],
44    #[doc = "0x51c - General purpose retention register"]
45    pub gpregret: GPREGRET,
46    #[doc = "0x520 - General purpose retention register"]
47    pub gpregret2: GPREGRET2,
48    _reserved17: [u8; 0x54],
49    #[doc = "0x578 - Enable DC/DC converter for REG1 stage"]
50    pub dcdcen: DCDCEN,
51    _reserved18: [u8; 0xc4],
52    #[doc = "0x640 - Main supply status"]
53    pub mainregstatus: MAINREGSTATUS,
54    _reserved19: [u8; 0x02bc],
55    #[doc = "0x900..0x90c - Unspecified"]
56    pub ram0: RAM,
57    _reserved20: [u8; 0x04],
58    #[doc = "0x910..0x91c - Unspecified"]
59    pub ram1: RAM,
60    _reserved21: [u8; 0x04],
61    #[doc = "0x920..0x92c - Unspecified"]
62    pub ram2: RAM,
63    _reserved22: [u8; 0x04],
64    #[doc = "0x930..0x93c - Unspecified"]
65    pub ram3: RAM,
66    _reserved23: [u8; 0x04],
67    #[doc = "0x940..0x94c - Unspecified"]
68    pub ram4: RAM,
69    _reserved24: [u8; 0x04],
70    #[doc = "0x950..0x95c - Unspecified"]
71    pub ram5: RAM,
72    _reserved25: [u8; 0x04],
73    #[doc = "0x960..0x96c - Unspecified"]
74    pub ram6: RAM,
75    _reserved26: [u8; 0x04],
76    #[doc = "0x970..0x97c - Unspecified"]
77    pub ram7: RAM,
78    _reserved27: [u8; 0x04],
79    #[doc = "0x980..0x98c - Unspecified"]
80    pub ram8: RAM,
81}
82#[doc = "TASKS_CONSTLAT (w) register accessor: an alias for `Reg<TASKS_CONSTLAT_SPEC>`"]
83pub type TASKS_CONSTLAT = crate::Reg<tasks_constlat::TASKS_CONSTLAT_SPEC>;
84#[doc = "Enable Constant Latency mode"]
85pub mod tasks_constlat;
86#[doc = "TASKS_LOWPWR (w) register accessor: an alias for `Reg<TASKS_LOWPWR_SPEC>`"]
87pub type TASKS_LOWPWR = crate::Reg<tasks_lowpwr::TASKS_LOWPWR_SPEC>;
88#[doc = "Enable Low-power mode (variable latency)"]
89pub mod tasks_lowpwr;
90#[doc = "EVENTS_POFWARN (rw) register accessor: an alias for `Reg<EVENTS_POFWARN_SPEC>`"]
91pub type EVENTS_POFWARN = crate::Reg<events_pofwarn::EVENTS_POFWARN_SPEC>;
92#[doc = "Power failure warning"]
93pub mod events_pofwarn;
94#[doc = "EVENTS_SLEEPENTER (rw) register accessor: an alias for `Reg<EVENTS_SLEEPENTER_SPEC>`"]
95pub type EVENTS_SLEEPENTER = crate::Reg<events_sleepenter::EVENTS_SLEEPENTER_SPEC>;
96#[doc = "CPU entered WFI/WFE sleep"]
97pub mod events_sleepenter;
98#[doc = "EVENTS_SLEEPEXIT (rw) register accessor: an alias for `Reg<EVENTS_SLEEPEXIT_SPEC>`"]
99pub type EVENTS_SLEEPEXIT = crate::Reg<events_sleepexit::EVENTS_SLEEPEXIT_SPEC>;
100#[doc = "CPU exited WFI/WFE sleep"]
101pub mod events_sleepexit;
102#[doc = "EVENTS_USBDETECTED (rw) register accessor: an alias for `Reg<EVENTS_USBDETECTED_SPEC>`"]
103pub type EVENTS_USBDETECTED = crate::Reg<events_usbdetected::EVENTS_USBDETECTED_SPEC>;
104#[doc = "Voltage supply detected on VBUS"]
105pub mod events_usbdetected;
106#[doc = "EVENTS_USBREMOVED (rw) register accessor: an alias for `Reg<EVENTS_USBREMOVED_SPEC>`"]
107pub type EVENTS_USBREMOVED = crate::Reg<events_usbremoved::EVENTS_USBREMOVED_SPEC>;
108#[doc = "Voltage supply removed from VBUS"]
109pub mod events_usbremoved;
110#[doc = "EVENTS_USBPWRRDY (rw) register accessor: an alias for `Reg<EVENTS_USBPWRRDY_SPEC>`"]
111pub type EVENTS_USBPWRRDY = crate::Reg<events_usbpwrrdy::EVENTS_USBPWRRDY_SPEC>;
112#[doc = "USB 3.3 V supply ready"]
113pub mod events_usbpwrrdy;
114#[doc = "INTENSET (rw) register accessor: an alias for `Reg<INTENSET_SPEC>`"]
115pub type INTENSET = crate::Reg<intenset::INTENSET_SPEC>;
116#[doc = "Enable interrupt"]
117pub mod intenset;
118#[doc = "INTENCLR (rw) register accessor: an alias for `Reg<INTENCLR_SPEC>`"]
119pub type INTENCLR = crate::Reg<intenclr::INTENCLR_SPEC>;
120#[doc = "Disable interrupt"]
121pub mod intenclr;
122#[doc = "RESETREAS (rw) register accessor: an alias for `Reg<RESETREAS_SPEC>`"]
123pub type RESETREAS = crate::Reg<resetreas::RESETREAS_SPEC>;
124#[doc = "Reset reason"]
125pub mod resetreas;
126#[doc = "RAMSTATUS (r) register accessor: an alias for `Reg<RAMSTATUS_SPEC>`"]
127pub type RAMSTATUS = crate::Reg<ramstatus::RAMSTATUS_SPEC>;
128#[doc = "Deprecated register - RAM status register"]
129pub mod ramstatus;
130#[doc = "USBREGSTATUS (r) register accessor: an alias for `Reg<USBREGSTATUS_SPEC>`"]
131pub type USBREGSTATUS = crate::Reg<usbregstatus::USBREGSTATUS_SPEC>;
132#[doc = "USB supply status"]
133pub mod usbregstatus;
134#[doc = "SYSTEMOFF (w) register accessor: an alias for `Reg<SYSTEMOFF_SPEC>`"]
135pub type SYSTEMOFF = crate::Reg<systemoff::SYSTEMOFF_SPEC>;
136#[doc = "System OFF register"]
137pub mod systemoff;
138#[doc = "POFCON (rw) register accessor: an alias for `Reg<POFCON_SPEC>`"]
139pub type POFCON = crate::Reg<pofcon::POFCON_SPEC>;
140#[doc = "Power-fail comparator configuration"]
141pub mod pofcon;
142#[doc = "GPREGRET (rw) register accessor: an alias for `Reg<GPREGRET_SPEC>`"]
143pub type GPREGRET = crate::Reg<gpregret::GPREGRET_SPEC>;
144#[doc = "General purpose retention register"]
145pub mod gpregret;
146#[doc = "GPREGRET2 (rw) register accessor: an alias for `Reg<GPREGRET2_SPEC>`"]
147pub type GPREGRET2 = crate::Reg<gpregret2::GPREGRET2_SPEC>;
148#[doc = "General purpose retention register"]
149pub mod gpregret2;
150#[doc = "DCDCEN (rw) register accessor: an alias for `Reg<DCDCEN_SPEC>`"]
151pub type DCDCEN = crate::Reg<dcdcen::DCDCEN_SPEC>;
152#[doc = "Enable DC/DC converter for REG1 stage"]
153pub mod dcdcen;
154#[doc = "MAINREGSTATUS (r) register accessor: an alias for `Reg<MAINREGSTATUS_SPEC>`"]
155pub type MAINREGSTATUS = crate::Reg<mainregstatus::MAINREGSTATUS_SPEC>;
156#[doc = "Main supply status"]
157pub mod mainregstatus;
158#[doc = "Unspecified"]
159pub use ram::RAM;
160#[doc = r"Cluster"]
161#[doc = "Unspecified"]
162pub mod ram;