msp432e4/
adc0.rs

1#[doc = r"Register block"]
2#[repr(C)]
3pub struct RegisterBlock {
4    #[doc = "0x00 - ADC Active Sample Sequencer"]
5    pub actss: ACTSS,
6    #[doc = "0x04 - ADC Raw Interrupt Status"]
7    pub ris: RIS,
8    #[doc = "0x08 - ADC Interrupt Mask"]
9    pub im: IM,
10    #[doc = "0x0c - ADC Interrupt Status and Clear"]
11    pub isc: ISC,
12    #[doc = "0x10 - ADC Overflow Status"]
13    pub ostat: OSTAT,
14    #[doc = "0x14 - ADC Event Multiplexer Select"]
15    pub emux: EMUX,
16    #[doc = "0x18 - ADC Underflow Status"]
17    pub ustat: USTAT,
18    #[doc = "0x1c - ADC Trigger Source Select"]
19    pub tssel: TSSEL,
20    #[doc = "0x20 - ADC Sample Sequencer Priority"]
21    pub sspri: SSPRI,
22    #[doc = "0x24 - ADC Sample Phase Control"]
23    pub spc: SPC,
24    #[doc = "0x28 - ADC Processor Sample Sequence Initiate"]
25    pub pssi: PSSI,
26    _reserved11: [u8; 4usize],
27    #[doc = "0x30 - ADC Sample Averaging Control"]
28    pub sac: SAC,
29    #[doc = "0x34 - ADC Digital Comparator Interrupt Status and Clear"]
30    pub dcisc: DCISC,
31    #[doc = "0x38 - ADC Control"]
32    pub ctl: CTL,
33    _reserved14: [u8; 4usize],
34    #[doc = "0x40 - ADC Sample Sequence Input Multiplexer Select 0"]
35    pub ssmux0: SSMUX0,
36    #[doc = "0x44 - ADC Sample Sequence Control 0"]
37    pub ssctl0: SSCTL0,
38    #[doc = "0x48 - ADC Sample Sequence Result FIFO 0"]
39    pub ssfifo0: SSFIFO0,
40    #[doc = "0x4c - ADC Sample Sequence FIFO 0 Status"]
41    pub ssfstat0: SSFSTAT0,
42    #[doc = "0x50 - ADC Sample Sequence 0 Operation"]
43    pub ssop0: SSOP0,
44    #[doc = "0x54 - ADC Sample Sequence 0 Digital Comparator Select"]
45    pub ssdc0: SSDC0,
46    #[doc = "0x58 - ADC Sample Sequence Extended Input Multiplexer Select 0"]
47    pub ssemux0: SSEMUX0,
48    #[doc = "0x5c - ADC Sample Sequence 0 Sample and Hold Time"]
49    pub sstsh0: SSTSH0,
50    #[doc = "0x60 - ADC Sample Sequence Input Multiplexer Select 1"]
51    pub ssmux1: SSMUX1,
52    #[doc = "0x64 - ADC Sample Sequence Control 1"]
53    pub ssctl1: SSCTL1,
54    #[doc = "0x68 - ADC Sample Sequence Result FIFO 1"]
55    pub ssfifo1: SSFIFO1,
56    #[doc = "0x6c - ADC Sample Sequence FIFO 1 Status"]
57    pub ssfstat1: SSFSTAT1,
58    #[doc = "0x70 - ADC Sample Sequence 1 Operation"]
59    pub ssop1: SSOP1,
60    #[doc = "0x74 - ADC Sample Sequence 1 Digital Comparator Select"]
61    pub ssdc1: SSDC1,
62    #[doc = "0x78 - ADC Sample Sequence Extended Input Multiplexer Select 1"]
63    pub ssemux1: SSEMUX1,
64    #[doc = "0x7c - ADC Sample Sequence 1 Sample and Hold Time"]
65    pub sstsh1: SSTSH1,
66    #[doc = "0x80 - ADC Sample Sequence Input Multiplexer Select 2"]
67    pub ssmux2: SSMUX2,
68    #[doc = "0x84 - ADC Sample Sequence Control 2"]
69    pub ssctl2: SSCTL2,
70    #[doc = "0x88 - ADC Sample Sequence Result FIFO 2"]
71    pub ssfifo2: SSFIFO2,
72    #[doc = "0x8c - ADC Sample Sequence FIFO 2 Status"]
73    pub ssfstat2: SSFSTAT2,
74    #[doc = "0x90 - ADC Sample Sequence 2 Operation"]
75    pub ssop2: SSOP2,
76    #[doc = "0x94 - ADC Sample Sequence 2 Digital Comparator Select"]
77    pub ssdc2: SSDC2,
78    #[doc = "0x98 - ADC Sample Sequence Extended Input Multiplexer Select 2"]
79    pub ssemux2: SSEMUX2,
80    #[doc = "0x9c - ADC Sample Sequence 2 Sample and Hold Time"]
81    pub sstsh2: SSTSH2,
82    #[doc = "0xa0 - ADC Sample Sequence Input Multiplexer Select 3"]
83    pub ssmux3: SSMUX3,
84    #[doc = "0xa4 - ADC Sample Sequence Control 3"]
85    pub ssctl3: SSCTL3,
86    #[doc = "0xa8 - ADC Sample Sequence Result FIFO 3"]
87    pub ssfifo3: SSFIFO3,
88    #[doc = "0xac - ADC Sample Sequence FIFO 3 Status"]
89    pub ssfstat3: SSFSTAT3,
90    #[doc = "0xb0 - ADC Sample Sequence 3 Operation"]
91    pub ssop3: SSOP3,
92    #[doc = "0xb4 - ADC Sample Sequence 3 Digital Comparator Select"]
93    pub ssdc3: SSDC3,
94    #[doc = "0xb8 - ADC Sample Sequence Extended Input Multiplexer Select 3"]
95    pub ssemux3: SSEMUX3,
96    #[doc = "0xbc - ADC Sample Sequence 3 Sample and Hold Time"]
97    pub sstsh3: SSTSH3,
98    _reserved46: [u8; 3136usize],
99    #[doc = "0xd00 - ADC Digital Comparator Reset Initial Conditions"]
100    pub dcric: DCRIC,
101    _reserved47: [u8; 252usize],
102    #[doc = "0xe00 - ADC Digital Comparator Control 0"]
103    pub dcctl0: DCCTL0,
104    #[doc = "0xe04 - ADC Digital Comparator Control 1"]
105    pub dcctl1: DCCTL1,
106    #[doc = "0xe08 - ADC Digital Comparator Control 2"]
107    pub dcctl2: DCCTL2,
108    #[doc = "0xe0c - ADC Digital Comparator Control 3"]
109    pub dcctl3: DCCTL3,
110    #[doc = "0xe10 - ADC Digital Comparator Control 4"]
111    pub dcctl4: DCCTL4,
112    #[doc = "0xe14 - ADC Digital Comparator Control 5"]
113    pub dcctl5: DCCTL5,
114    #[doc = "0xe18 - ADC Digital Comparator Control 6"]
115    pub dcctl6: DCCTL6,
116    #[doc = "0xe1c - ADC Digital Comparator Control 7"]
117    pub dcctl7: DCCTL7,
118    _reserved55: [u8; 32usize],
119    #[doc = "0xe40 - ADC Digital Comparator Range 0"]
120    pub dccmp0: DCCMP0,
121    #[doc = "0xe44 - ADC Digital Comparator Range 1"]
122    pub dccmp1: DCCMP1,
123    #[doc = "0xe48 - ADC Digital Comparator Range 2"]
124    pub dccmp2: DCCMP2,
125    #[doc = "0xe4c - ADC Digital Comparator Range 3"]
126    pub dccmp3: DCCMP3,
127    #[doc = "0xe50 - ADC Digital Comparator Range 4"]
128    pub dccmp4: DCCMP4,
129    #[doc = "0xe54 - ADC Digital Comparator Range 5"]
130    pub dccmp5: DCCMP5,
131    #[doc = "0xe58 - ADC Digital Comparator Range 6"]
132    pub dccmp6: DCCMP6,
133    #[doc = "0xe5c - ADC Digital Comparator Range 7"]
134    pub dccmp7: DCCMP7,
135    _reserved63: [u8; 352usize],
136    #[doc = "0xfc0 - ADC Peripheral Properties"]
137    pub pp: PP,
138    #[doc = "0xfc4 - ADC Peripheral Configuration"]
139    pub pc: PC,
140    #[doc = "0xfc8 - ADC Clock Configuration"]
141    pub cc: CC,
142}
143#[doc = "ADC Active Sample Sequencer"]
144pub struct ACTSS {
145    register: vcell::VolatileCell<u32>,
146}
147#[doc = "ADC Active Sample Sequencer"]
148pub mod actss;
149#[doc = "ADC Raw Interrupt Status"]
150pub struct RIS {
151    register: vcell::VolatileCell<u32>,
152}
153#[doc = "ADC Raw Interrupt Status"]
154pub mod ris;
155#[doc = "ADC Interrupt Mask"]
156pub struct IM {
157    register: vcell::VolatileCell<u32>,
158}
159#[doc = "ADC Interrupt Mask"]
160pub mod im;
161#[doc = "ADC Interrupt Status and Clear"]
162pub struct ISC {
163    register: vcell::VolatileCell<u32>,
164}
165#[doc = "ADC Interrupt Status and Clear"]
166pub mod isc;
167#[doc = "ADC Overflow Status"]
168pub struct OSTAT {
169    register: vcell::VolatileCell<u32>,
170}
171#[doc = "ADC Overflow Status"]
172pub mod ostat;
173#[doc = "ADC Event Multiplexer Select"]
174pub struct EMUX {
175    register: vcell::VolatileCell<u32>,
176}
177#[doc = "ADC Event Multiplexer Select"]
178pub mod emux;
179#[doc = "ADC Underflow Status"]
180pub struct USTAT {
181    register: vcell::VolatileCell<u32>,
182}
183#[doc = "ADC Underflow Status"]
184pub mod ustat;
185#[doc = "ADC Trigger Source Select"]
186pub struct TSSEL {
187    register: vcell::VolatileCell<u32>,
188}
189#[doc = "ADC Trigger Source Select"]
190pub mod tssel;
191#[doc = "ADC Sample Sequencer Priority"]
192pub struct SSPRI {
193    register: vcell::VolatileCell<u32>,
194}
195#[doc = "ADC Sample Sequencer Priority"]
196pub mod sspri;
197#[doc = "ADC Sample Phase Control"]
198pub struct SPC {
199    register: vcell::VolatileCell<u32>,
200}
201#[doc = "ADC Sample Phase Control"]
202pub mod spc;
203#[doc = "ADC Processor Sample Sequence Initiate"]
204pub struct PSSI {
205    register: vcell::VolatileCell<u32>,
206}
207#[doc = "ADC Processor Sample Sequence Initiate"]
208pub mod pssi;
209#[doc = "ADC Sample Averaging Control"]
210pub struct SAC {
211    register: vcell::VolatileCell<u32>,
212}
213#[doc = "ADC Sample Averaging Control"]
214pub mod sac;
215#[doc = "ADC Digital Comparator Interrupt Status and Clear"]
216pub struct DCISC {
217    register: vcell::VolatileCell<u32>,
218}
219#[doc = "ADC Digital Comparator Interrupt Status and Clear"]
220pub mod dcisc;
221#[doc = "ADC Control"]
222pub struct CTL {
223    register: vcell::VolatileCell<u32>,
224}
225#[doc = "ADC Control"]
226pub mod ctl;
227#[doc = "ADC Sample Sequence Input Multiplexer Select 0"]
228pub struct SSMUX0 {
229    register: vcell::VolatileCell<u32>,
230}
231#[doc = "ADC Sample Sequence Input Multiplexer Select 0"]
232pub mod ssmux0;
233#[doc = "ADC Sample Sequence Control 0"]
234pub struct SSCTL0 {
235    register: vcell::VolatileCell<u32>,
236}
237#[doc = "ADC Sample Sequence Control 0"]
238pub mod ssctl0;
239#[doc = "ADC Sample Sequence Result FIFO 0"]
240pub struct SSFIFO0 {
241    register: vcell::VolatileCell<u32>,
242}
243#[doc = "ADC Sample Sequence Result FIFO 0"]
244pub mod ssfifo0;
245#[doc = "ADC Sample Sequence FIFO 0 Status"]
246pub struct SSFSTAT0 {
247    register: vcell::VolatileCell<u32>,
248}
249#[doc = "ADC Sample Sequence FIFO 0 Status"]
250pub mod ssfstat0;
251#[doc = "ADC Sample Sequence 0 Operation"]
252pub struct SSOP0 {
253    register: vcell::VolatileCell<u32>,
254}
255#[doc = "ADC Sample Sequence 0 Operation"]
256pub mod ssop0;
257#[doc = "ADC Sample Sequence 0 Digital Comparator Select"]
258pub struct SSDC0 {
259    register: vcell::VolatileCell<u32>,
260}
261#[doc = "ADC Sample Sequence 0 Digital Comparator Select"]
262pub mod ssdc0;
263#[doc = "ADC Sample Sequence Extended Input Multiplexer Select 0"]
264pub struct SSEMUX0 {
265    register: vcell::VolatileCell<u32>,
266}
267#[doc = "ADC Sample Sequence Extended Input Multiplexer Select 0"]
268pub mod ssemux0;
269#[doc = "ADC Sample Sequence 0 Sample and Hold Time"]
270pub struct SSTSH0 {
271    register: vcell::VolatileCell<u32>,
272}
273#[doc = "ADC Sample Sequence 0 Sample and Hold Time"]
274pub mod sstsh0;
275#[doc = "ADC Sample Sequence Input Multiplexer Select 1"]
276pub struct SSMUX1 {
277    register: vcell::VolatileCell<u32>,
278}
279#[doc = "ADC Sample Sequence Input Multiplexer Select 1"]
280pub mod ssmux1;
281#[doc = "ADC Sample Sequence Control 1"]
282pub struct SSCTL1 {
283    register: vcell::VolatileCell<u32>,
284}
285#[doc = "ADC Sample Sequence Control 1"]
286pub mod ssctl1;
287#[doc = "ADC Sample Sequence Result FIFO 1"]
288pub struct SSFIFO1 {
289    register: vcell::VolatileCell<u32>,
290}
291#[doc = "ADC Sample Sequence Result FIFO 1"]
292pub mod ssfifo1;
293#[doc = "ADC Sample Sequence FIFO 1 Status"]
294pub struct SSFSTAT1 {
295    register: vcell::VolatileCell<u32>,
296}
297#[doc = "ADC Sample Sequence FIFO 1 Status"]
298pub mod ssfstat1;
299#[doc = "ADC Sample Sequence 1 Operation"]
300pub struct SSOP1 {
301    register: vcell::VolatileCell<u32>,
302}
303#[doc = "ADC Sample Sequence 1 Operation"]
304pub mod ssop1;
305#[doc = "ADC Sample Sequence 1 Digital Comparator Select"]
306pub struct SSDC1 {
307    register: vcell::VolatileCell<u32>,
308}
309#[doc = "ADC Sample Sequence 1 Digital Comparator Select"]
310pub mod ssdc1;
311#[doc = "ADC Sample Sequence Extended Input Multiplexer Select 1"]
312pub struct SSEMUX1 {
313    register: vcell::VolatileCell<u32>,
314}
315#[doc = "ADC Sample Sequence Extended Input Multiplexer Select 1"]
316pub mod ssemux1;
317#[doc = "ADC Sample Sequence 1 Sample and Hold Time"]
318pub struct SSTSH1 {
319    register: vcell::VolatileCell<u32>,
320}
321#[doc = "ADC Sample Sequence 1 Sample and Hold Time"]
322pub mod sstsh1;
323#[doc = "ADC Sample Sequence Input Multiplexer Select 2"]
324pub struct SSMUX2 {
325    register: vcell::VolatileCell<u32>,
326}
327#[doc = "ADC Sample Sequence Input Multiplexer Select 2"]
328pub mod ssmux2;
329#[doc = "ADC Sample Sequence Control 2"]
330pub struct SSCTL2 {
331    register: vcell::VolatileCell<u32>,
332}
333#[doc = "ADC Sample Sequence Control 2"]
334pub mod ssctl2;
335#[doc = "ADC Sample Sequence Result FIFO 2"]
336pub struct SSFIFO2 {
337    register: vcell::VolatileCell<u32>,
338}
339#[doc = "ADC Sample Sequence Result FIFO 2"]
340pub mod ssfifo2;
341#[doc = "ADC Sample Sequence FIFO 2 Status"]
342pub struct SSFSTAT2 {
343    register: vcell::VolatileCell<u32>,
344}
345#[doc = "ADC Sample Sequence FIFO 2 Status"]
346pub mod ssfstat2;
347#[doc = "ADC Sample Sequence 2 Operation"]
348pub struct SSOP2 {
349    register: vcell::VolatileCell<u32>,
350}
351#[doc = "ADC Sample Sequence 2 Operation"]
352pub mod ssop2;
353#[doc = "ADC Sample Sequence 2 Digital Comparator Select"]
354pub struct SSDC2 {
355    register: vcell::VolatileCell<u32>,
356}
357#[doc = "ADC Sample Sequence 2 Digital Comparator Select"]
358pub mod ssdc2;
359#[doc = "ADC Sample Sequence Extended Input Multiplexer Select 2"]
360pub struct SSEMUX2 {
361    register: vcell::VolatileCell<u32>,
362}
363#[doc = "ADC Sample Sequence Extended Input Multiplexer Select 2"]
364pub mod ssemux2;
365#[doc = "ADC Sample Sequence 2 Sample and Hold Time"]
366pub struct SSTSH2 {
367    register: vcell::VolatileCell<u32>,
368}
369#[doc = "ADC Sample Sequence 2 Sample and Hold Time"]
370pub mod sstsh2;
371#[doc = "ADC Sample Sequence Input Multiplexer Select 3"]
372pub struct SSMUX3 {
373    register: vcell::VolatileCell<u32>,
374}
375#[doc = "ADC Sample Sequence Input Multiplexer Select 3"]
376pub mod ssmux3;
377#[doc = "ADC Sample Sequence Control 3"]
378pub struct SSCTL3 {
379    register: vcell::VolatileCell<u32>,
380}
381#[doc = "ADC Sample Sequence Control 3"]
382pub mod ssctl3;
383#[doc = "ADC Sample Sequence Result FIFO 3"]
384pub struct SSFIFO3 {
385    register: vcell::VolatileCell<u32>,
386}
387#[doc = "ADC Sample Sequence Result FIFO 3"]
388pub mod ssfifo3;
389#[doc = "ADC Sample Sequence FIFO 3 Status"]
390pub struct SSFSTAT3 {
391    register: vcell::VolatileCell<u32>,
392}
393#[doc = "ADC Sample Sequence FIFO 3 Status"]
394pub mod ssfstat3;
395#[doc = "ADC Sample Sequence 3 Operation"]
396pub struct SSOP3 {
397    register: vcell::VolatileCell<u32>,
398}
399#[doc = "ADC Sample Sequence 3 Operation"]
400pub mod ssop3;
401#[doc = "ADC Sample Sequence 3 Digital Comparator Select"]
402pub struct SSDC3 {
403    register: vcell::VolatileCell<u32>,
404}
405#[doc = "ADC Sample Sequence 3 Digital Comparator Select"]
406pub mod ssdc3;
407#[doc = "ADC Sample Sequence Extended Input Multiplexer Select 3"]
408pub struct SSEMUX3 {
409    register: vcell::VolatileCell<u32>,
410}
411#[doc = "ADC Sample Sequence Extended Input Multiplexer Select 3"]
412pub mod ssemux3;
413#[doc = "ADC Sample Sequence 3 Sample and Hold Time"]
414pub struct SSTSH3 {
415    register: vcell::VolatileCell<u32>,
416}
417#[doc = "ADC Sample Sequence 3 Sample and Hold Time"]
418pub mod sstsh3;
419#[doc = "ADC Digital Comparator Reset Initial Conditions"]
420pub struct DCRIC {
421    register: vcell::VolatileCell<u32>,
422}
423#[doc = "ADC Digital Comparator Reset Initial Conditions"]
424pub mod dcric;
425#[doc = "ADC Digital Comparator Control 0"]
426pub struct DCCTL0 {
427    register: vcell::VolatileCell<u32>,
428}
429#[doc = "ADC Digital Comparator Control 0"]
430pub mod dcctl0;
431#[doc = "ADC Digital Comparator Control 1"]
432pub struct DCCTL1 {
433    register: vcell::VolatileCell<u32>,
434}
435#[doc = "ADC Digital Comparator Control 1"]
436pub mod dcctl1;
437#[doc = "ADC Digital Comparator Control 2"]
438pub struct DCCTL2 {
439    register: vcell::VolatileCell<u32>,
440}
441#[doc = "ADC Digital Comparator Control 2"]
442pub mod dcctl2;
443#[doc = "ADC Digital Comparator Control 3"]
444pub struct DCCTL3 {
445    register: vcell::VolatileCell<u32>,
446}
447#[doc = "ADC Digital Comparator Control 3"]
448pub mod dcctl3;
449#[doc = "ADC Digital Comparator Control 4"]
450pub struct DCCTL4 {
451    register: vcell::VolatileCell<u32>,
452}
453#[doc = "ADC Digital Comparator Control 4"]
454pub mod dcctl4;
455#[doc = "ADC Digital Comparator Control 5"]
456pub struct DCCTL5 {
457    register: vcell::VolatileCell<u32>,
458}
459#[doc = "ADC Digital Comparator Control 5"]
460pub mod dcctl5;
461#[doc = "ADC Digital Comparator Control 6"]
462pub struct DCCTL6 {
463    register: vcell::VolatileCell<u32>,
464}
465#[doc = "ADC Digital Comparator Control 6"]
466pub mod dcctl6;
467#[doc = "ADC Digital Comparator Control 7"]
468pub struct DCCTL7 {
469    register: vcell::VolatileCell<u32>,
470}
471#[doc = "ADC Digital Comparator Control 7"]
472pub mod dcctl7;
473#[doc = "ADC Digital Comparator Range 0"]
474pub struct DCCMP0 {
475    register: vcell::VolatileCell<u32>,
476}
477#[doc = "ADC Digital Comparator Range 0"]
478pub mod dccmp0;
479#[doc = "ADC Digital Comparator Range 1"]
480pub struct DCCMP1 {
481    register: vcell::VolatileCell<u32>,
482}
483#[doc = "ADC Digital Comparator Range 1"]
484pub mod dccmp1;
485#[doc = "ADC Digital Comparator Range 2"]
486pub struct DCCMP2 {
487    register: vcell::VolatileCell<u32>,
488}
489#[doc = "ADC Digital Comparator Range 2"]
490pub mod dccmp2;
491#[doc = "ADC Digital Comparator Range 3"]
492pub struct DCCMP3 {
493    register: vcell::VolatileCell<u32>,
494}
495#[doc = "ADC Digital Comparator Range 3"]
496pub mod dccmp3;
497#[doc = "ADC Digital Comparator Range 4"]
498pub struct DCCMP4 {
499    register: vcell::VolatileCell<u32>,
500}
501#[doc = "ADC Digital Comparator Range 4"]
502pub mod dccmp4;
503#[doc = "ADC Digital Comparator Range 5"]
504pub struct DCCMP5 {
505    register: vcell::VolatileCell<u32>,
506}
507#[doc = "ADC Digital Comparator Range 5"]
508pub mod dccmp5;
509#[doc = "ADC Digital Comparator Range 6"]
510pub struct DCCMP6 {
511    register: vcell::VolatileCell<u32>,
512}
513#[doc = "ADC Digital Comparator Range 6"]
514pub mod dccmp6;
515#[doc = "ADC Digital Comparator Range 7"]
516pub struct DCCMP7 {
517    register: vcell::VolatileCell<u32>,
518}
519#[doc = "ADC Digital Comparator Range 7"]
520pub mod dccmp7;
521#[doc = "ADC Peripheral Properties"]
522pub struct PP {
523    register: vcell::VolatileCell<u32>,
524}
525#[doc = "ADC Peripheral Properties"]
526pub mod pp;
527#[doc = "ADC Peripheral Configuration"]
528pub struct PC {
529    register: vcell::VolatileCell<u32>,
530}
531#[doc = "ADC Peripheral Configuration"]
532pub mod pc;
533#[doc = "ADC Clock Configuration"]
534pub struct CC {
535    register: vcell::VolatileCell<u32>,
536}
537#[doc = "ADC Clock Configuration"]
538pub mod cc;