1#[doc = r"Register block"]
2#[repr(C)]
3pub struct RegisterBlock {
4 #[doc = "0x00 - Interrupt Enable Clear"]
5 pub intenclr: INTENCLR,
6 #[doc = "0x04 - Interrupt Enable Set"]
7 pub intenset: INTENSET,
8 #[doc = "0x08 - Interrupt Flag Status and Clear"]
9 pub intflag: INTFLAG,
10 #[doc = "0x0c - Power and Clocks Status"]
11 pub pclksr: PCLKSR,
12 #[doc = "0x10 - External Multipurpose Crystal Oscillator (XOSC) Control"]
13 pub xosc: XOSC,
14 _reserved5: [u8; 2usize],
15 #[doc = "0x14 - 32kHz External Crystal Oscillator (XOSC32K) Control"]
16 pub xosc32k: XOSC32K,
17 _reserved6: [u8; 2usize],
18 #[doc = "0x18 - 32kHz Internal Oscillator (OSC32K) Control"]
19 pub osc32k: OSC32K,
20 #[doc = "0x1c - 32kHz Ultra Low Power Internal Oscillator (OSCULP32K) Control"]
21 pub osculp32k: OSCULP32K,
22 _reserved8: [u8; 3usize],
23 #[doc = "0x20 - 8MHz Internal Oscillator (OSC8M) Control"]
24 pub osc8m: OSC8M,
25 #[doc = "0x24 - DFLL48M Control"]
26 pub dfllctrl: DFLLCTRL,
27 _reserved10: [u8; 2usize],
28 #[doc = "0x28 - DFLL48M Value"]
29 pub dfllval: DFLLVAL,
30 #[doc = "0x2c - DFLL48M Multiplier"]
31 pub dfllmul: DFLLMUL,
32 #[doc = "0x30 - DFLL48M Synchronization"]
33 pub dfllsync: DFLLSYNC,
34 _reserved13: [u8; 3usize],
35 #[doc = "0x34 - 3.3V Brown-Out Detector (BOD33) Control"]
36 pub bod33: BOD33,
37 _reserved14: [u8; 4usize],
38 #[doc = "0x3c - Voltage Regulator System (VREG) Control"]
39 pub vreg: VREG,
40 _reserved15: [u8; 2usize],
41 #[doc = "0x40 - Voltage References System (VREF) Control"]
42 pub vref: VREF,
43 #[doc = "0x44 - DPLL Control A"]
44 pub dpllctrla: DPLLCTRLA,
45 _reserved17: [u8; 3usize],
46 #[doc = "0x48 - DPLL Ratio Control"]
47 pub dpllratio: DPLLRATIO,
48 #[doc = "0x4c - DPLL Control B"]
49 pub dpllctrlb: DPLLCTRLB,
50 #[doc = "0x50 - DPLL Status"]
51 pub dpllstatus: DPLLSTATUS,
52}
53#[doc = "Interrupt Enable Clear\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [intenclr](intenclr) module"]
54pub type INTENCLR = crate::Reg<u32, _INTENCLR>;
55#[allow(missing_docs)]
56#[doc(hidden)]
57pub struct _INTENCLR;
58#[doc = "`read()` method returns [intenclr::R](intenclr::R) reader structure"]
59impl crate::Readable for INTENCLR {}
60#[doc = "`write(|w| ..)` method takes [intenclr::W](intenclr::W) writer structure"]
61impl crate::Writable for INTENCLR {}
62#[doc = "Interrupt Enable Clear"]
63pub mod intenclr;
64#[doc = "Interrupt Enable Set\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [intenset](intenset) module"]
65pub type INTENSET = crate::Reg<u32, _INTENSET>;
66#[allow(missing_docs)]
67#[doc(hidden)]
68pub struct _INTENSET;
69#[doc = "`read()` method returns [intenset::R](intenset::R) reader structure"]
70impl crate::Readable for INTENSET {}
71#[doc = "`write(|w| ..)` method takes [intenset::W](intenset::W) writer structure"]
72impl crate::Writable for INTENSET {}
73#[doc = "Interrupt Enable Set"]
74pub mod intenset;
75#[doc = "Interrupt Flag Status and Clear\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [intflag](intflag) module"]
76pub type INTFLAG = crate::Reg<u32, _INTFLAG>;
77#[allow(missing_docs)]
78#[doc(hidden)]
79pub struct _INTFLAG;
80#[doc = "`read()` method returns [intflag::R](intflag::R) reader structure"]
81impl crate::Readable for INTFLAG {}
82#[doc = "`write(|w| ..)` method takes [intflag::W](intflag::W) writer structure"]
83impl crate::Writable for INTFLAG {}
84#[doc = "Interrupt Flag Status and Clear"]
85pub mod intflag;
86#[doc = "Power and Clocks Status\n\nThis register you can [`read`](crate::generic::Reg::read). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [pclksr](pclksr) module"]
87pub type PCLKSR = crate::Reg<u32, _PCLKSR>;
88#[allow(missing_docs)]
89#[doc(hidden)]
90pub struct _PCLKSR;
91#[doc = "`read()` method returns [pclksr::R](pclksr::R) reader structure"]
92impl crate::Readable for PCLKSR {}
93#[doc = "Power and Clocks Status"]
94pub mod pclksr;
95#[doc = "External Multipurpose Crystal Oscillator (XOSC) Control\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [xosc](xosc) module"]
96pub type XOSC = crate::Reg<u16, _XOSC>;
97#[allow(missing_docs)]
98#[doc(hidden)]
99pub struct _XOSC;
100#[doc = "`read()` method returns [xosc::R](xosc::R) reader structure"]
101impl crate::Readable for XOSC {}
102#[doc = "`write(|w| ..)` method takes [xosc::W](xosc::W) writer structure"]
103impl crate::Writable for XOSC {}
104#[doc = "External Multipurpose Crystal Oscillator (XOSC) Control"]
105pub mod xosc;
106#[doc = "32kHz External Crystal Oscillator (XOSC32K) Control\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [xosc32k](xosc32k) module"]
107pub type XOSC32K = crate::Reg<u16, _XOSC32K>;
108#[allow(missing_docs)]
109#[doc(hidden)]
110pub struct _XOSC32K;
111#[doc = "`read()` method returns [xosc32k::R](xosc32k::R) reader structure"]
112impl crate::Readable for XOSC32K {}
113#[doc = "`write(|w| ..)` method takes [xosc32k::W](xosc32k::W) writer structure"]
114impl crate::Writable for XOSC32K {}
115#[doc = "32kHz External Crystal Oscillator (XOSC32K) Control"]
116pub mod xosc32k;
117#[doc = "32kHz Internal Oscillator (OSC32K) Control\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [osc32k](osc32k) module"]
118pub type OSC32K = crate::Reg<u32, _OSC32K>;
119#[allow(missing_docs)]
120#[doc(hidden)]
121pub struct _OSC32K;
122#[doc = "`read()` method returns [osc32k::R](osc32k::R) reader structure"]
123impl crate::Readable for OSC32K {}
124#[doc = "`write(|w| ..)` method takes [osc32k::W](osc32k::W) writer structure"]
125impl crate::Writable for OSC32K {}
126#[doc = "32kHz Internal Oscillator (OSC32K) Control"]
127pub mod osc32k;
128#[doc = "32kHz Ultra Low Power Internal Oscillator (OSCULP32K) Control\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [osculp32k](osculp32k) module"]
129pub type OSCULP32K = crate::Reg<u8, _OSCULP32K>;
130#[allow(missing_docs)]
131#[doc(hidden)]
132pub struct _OSCULP32K;
133#[doc = "`read()` method returns [osculp32k::R](osculp32k::R) reader structure"]
134impl crate::Readable for OSCULP32K {}
135#[doc = "`write(|w| ..)` method takes [osculp32k::W](osculp32k::W) writer structure"]
136impl crate::Writable for OSCULP32K {}
137#[doc = "32kHz Ultra Low Power Internal Oscillator (OSCULP32K) Control"]
138pub mod osculp32k;
139#[doc = "8MHz Internal Oscillator (OSC8M) Control\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [osc8m](osc8m) module"]
140pub type OSC8M = crate::Reg<u32, _OSC8M>;
141#[allow(missing_docs)]
142#[doc(hidden)]
143pub struct _OSC8M;
144#[doc = "`read()` method returns [osc8m::R](osc8m::R) reader structure"]
145impl crate::Readable for OSC8M {}
146#[doc = "`write(|w| ..)` method takes [osc8m::W](osc8m::W) writer structure"]
147impl crate::Writable for OSC8M {}
148#[doc = "8MHz Internal Oscillator (OSC8M) Control"]
149pub mod osc8m;
150#[doc = "DFLL48M Control\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [dfllctrl](dfllctrl) module"]
151pub type DFLLCTRL = crate::Reg<u16, _DFLLCTRL>;
152#[allow(missing_docs)]
153#[doc(hidden)]
154pub struct _DFLLCTRL;
155#[doc = "`read()` method returns [dfllctrl::R](dfllctrl::R) reader structure"]
156impl crate::Readable for DFLLCTRL {}
157#[doc = "`write(|w| ..)` method takes [dfllctrl::W](dfllctrl::W) writer structure"]
158impl crate::Writable for DFLLCTRL {}
159#[doc = "DFLL48M Control"]
160pub mod dfllctrl;
161#[doc = "DFLL48M Value\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [dfllval](dfllval) module"]
162pub type DFLLVAL = crate::Reg<u32, _DFLLVAL>;
163#[allow(missing_docs)]
164#[doc(hidden)]
165pub struct _DFLLVAL;
166#[doc = "`read()` method returns [dfllval::R](dfllval::R) reader structure"]
167impl crate::Readable for DFLLVAL {}
168#[doc = "`write(|w| ..)` method takes [dfllval::W](dfllval::W) writer structure"]
169impl crate::Writable for DFLLVAL {}
170#[doc = "DFLL48M Value"]
171pub mod dfllval;
172#[doc = "DFLL48M Multiplier\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [dfllmul](dfllmul) module"]
173pub type DFLLMUL = crate::Reg<u32, _DFLLMUL>;
174#[allow(missing_docs)]
175#[doc(hidden)]
176pub struct _DFLLMUL;
177#[doc = "`read()` method returns [dfllmul::R](dfllmul::R) reader structure"]
178impl crate::Readable for DFLLMUL {}
179#[doc = "`write(|w| ..)` method takes [dfllmul::W](dfllmul::W) writer structure"]
180impl crate::Writable for DFLLMUL {}
181#[doc = "DFLL48M Multiplier"]
182pub mod dfllmul;
183#[doc = "DFLL48M Synchronization\n\nThis register you can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [dfllsync](dfllsync) module"]
184pub type DFLLSYNC = crate::Reg<u8, _DFLLSYNC>;
185#[allow(missing_docs)]
186#[doc(hidden)]
187pub struct _DFLLSYNC;
188#[doc = "`write(|w| ..)` method takes [dfllsync::W](dfllsync::W) writer structure"]
189impl crate::Writable for DFLLSYNC {}
190#[doc = "DFLL48M Synchronization"]
191pub mod dfllsync;
192#[doc = "3.3V Brown-Out Detector (BOD33) Control\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [bod33](bod33) module"]
193pub type BOD33 = crate::Reg<u32, _BOD33>;
194#[allow(missing_docs)]
195#[doc(hidden)]
196pub struct _BOD33;
197#[doc = "`read()` method returns [bod33::R](bod33::R) reader structure"]
198impl crate::Readable for BOD33 {}
199#[doc = "`write(|w| ..)` method takes [bod33::W](bod33::W) writer structure"]
200impl crate::Writable for BOD33 {}
201#[doc = "3.3V Brown-Out Detector (BOD33) Control"]
202pub mod bod33;
203#[doc = "Voltage Regulator System (VREG) Control\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [vreg](vreg) module"]
204pub type VREG = crate::Reg<u16, _VREG>;
205#[allow(missing_docs)]
206#[doc(hidden)]
207pub struct _VREG;
208#[doc = "`read()` method returns [vreg::R](vreg::R) reader structure"]
209impl crate::Readable for VREG {}
210#[doc = "`write(|w| ..)` method takes [vreg::W](vreg::W) writer structure"]
211impl crate::Writable for VREG {}
212#[doc = "Voltage Regulator System (VREG) Control"]
213pub mod vreg;
214#[doc = "Voltage References System (VREF) Control\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [vref](vref) module"]
215pub type VREF = crate::Reg<u32, _VREF>;
216#[allow(missing_docs)]
217#[doc(hidden)]
218pub struct _VREF;
219#[doc = "`read()` method returns [vref::R](vref::R) reader structure"]
220impl crate::Readable for VREF {}
221#[doc = "`write(|w| ..)` method takes [vref::W](vref::W) writer structure"]
222impl crate::Writable for VREF {}
223#[doc = "Voltage References System (VREF) Control"]
224pub mod vref;
225#[doc = "DPLL Control A\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [dpllctrla](dpllctrla) module"]
226pub type DPLLCTRLA = crate::Reg<u8, _DPLLCTRLA>;
227#[allow(missing_docs)]
228#[doc(hidden)]
229pub struct _DPLLCTRLA;
230#[doc = "`read()` method returns [dpllctrla::R](dpllctrla::R) reader structure"]
231impl crate::Readable for DPLLCTRLA {}
232#[doc = "`write(|w| ..)` method takes [dpllctrla::W](dpllctrla::W) writer structure"]
233impl crate::Writable for DPLLCTRLA {}
234#[doc = "DPLL Control A"]
235pub mod dpllctrla;
236#[doc = "DPLL Ratio Control\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [dpllratio](dpllratio) module"]
237pub type DPLLRATIO = crate::Reg<u32, _DPLLRATIO>;
238#[allow(missing_docs)]
239#[doc(hidden)]
240pub struct _DPLLRATIO;
241#[doc = "`read()` method returns [dpllratio::R](dpllratio::R) reader structure"]
242impl crate::Readable for DPLLRATIO {}
243#[doc = "`write(|w| ..)` method takes [dpllratio::W](dpllratio::W) writer structure"]
244impl crate::Writable for DPLLRATIO {}
245#[doc = "DPLL Ratio Control"]
246pub mod dpllratio;
247#[doc = "DPLL Control B\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [dpllctrlb](dpllctrlb) module"]
248pub type DPLLCTRLB = crate::Reg<u32, _DPLLCTRLB>;
249#[allow(missing_docs)]
250#[doc(hidden)]
251pub struct _DPLLCTRLB;
252#[doc = "`read()` method returns [dpllctrlb::R](dpllctrlb::R) reader structure"]
253impl crate::Readable for DPLLCTRLB {}
254#[doc = "`write(|w| ..)` method takes [dpllctrlb::W](dpllctrlb::W) writer structure"]
255impl crate::Writable for DPLLCTRLB {}
256#[doc = "DPLL Control B"]
257pub mod dpllctrlb;
258#[doc = "DPLL Status\n\nThis register you can [`read`](crate::generic::Reg::read). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [dpllstatus](dpllstatus) module"]
259pub type DPLLSTATUS = crate::Reg<u8, _DPLLSTATUS>;
260#[allow(missing_docs)]
261#[doc(hidden)]
262pub struct _DPLLSTATUS;
263#[doc = "`read()` method returns [dpllstatus::R](dpllstatus::R) reader structure"]
264impl crate::Readable for DPLLSTATUS {}
265#[doc = "DPLL Status"]
266pub mod dpllstatus;