1<?xml version="1.0" encoding="utf-8" standalone="no"?>
2<device xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" schemaVersion="1.1" xs:noNamespaceSchemaLocation="svd_schema.xsd">
3  <peripheral>
4    <name>ADC</name>
5    <description>10-bit Analog to Digital Converter</description>
6    <!-- <groupName>ADC</groupName> -->
7    <baseAddress>0x40034000</baseAddress>
8    <size>32</size>
9    <access>read-write</access>
10    <addressBlock>
11      <offset>0</offset>
12      <size>0x1000</size>
13      <usage>registers</usage>
14    </addressBlock>
15    <interrupt>
16      <name>ADC</name>
17      <description>ADC IRQ</description>
18      <value>20</value>
19    </interrupt>
20    <registers>
21      <!-- CTRL: ADC Control -->
22      <register>
23        <name>CTRL</name>
24        <description>ADC Control</description>
25        <addressOffset>0x0000</addressOffset>
26        <access>read-write</access>
27        <fields>
28          <field>
29            <name>start</name>
30            <description>Start ADC Conversion</description>
31            <bitRange>[0:0]</bitRange>
32            <access>read-write</access>
33            <enumeratedValues>
34              <enumeratedValue>
35                <name>inactive</name>
36                <value>0</value>
37              </enumeratedValue>
38              <enumeratedValue>
39                <name>start</name>
40                <value>1</value>
41              </enumeratedValue>
42            </enumeratedValues>
43          </field>
44          <field>
45            <name>pwr</name>
46            <description>ADC Power Up</description>
47            <bitRange>[1:1]</bitRange>
48            <access>read-write</access>
49            <enumeratedValues>
50              <enumeratedValue>
51                <name>adc_off</name>
52                <value>0</value>
53              </enumeratedValue>
54              <enumeratedValue>
55                <name>adc_on</name>
56                <value>1</value>
57              </enumeratedValue>
58            </enumeratedValues>
59          </field>
60          <field>
61            <name>refbuf_pwr</name>
62            <description>ADC Reference Buffer Power Up</description>
63            <bitRange>[3:3]</bitRange>
64            <access>read-write</access>
65            <enumeratedValues>
66              <enumeratedValue>
67                <name>refbuf_off</name>
68                <value>0</value>
69              </enumeratedValue>
70              <enumeratedValue>
71                <name>refbuf_on</name>
72                <value>1</value>
73              </enumeratedValue>
74            </enumeratedValues>
75          </field>
76          <field>
77            <name>ref_sel</name>
78            <description>ADC Reference Select</description>
79            <bitRange>[4:4]</bitRange>
80            <access>read-write</access>
81            <enumeratedValues>
82              <enumeratedValue>
83                <name>bandgap</name>
84                <value>0</value>
85              </enumeratedValue>
86              <enumeratedValue>
87                <name>vdd_div2</name>
88                <value>1</value>
89              </enumeratedValue>
90            </enumeratedValues>
91          </field>
92          <field>
93            <name>ref_scale</name>
94            <description>ADC Reference Scale</description>
95            <bitRange>[8:8]</bitRange>
96            <access>read-write</access>
97            <enumeratedValues>
98              <enumeratedValue>
99                <name>div1</name>
100                <value>0</value>
101              </enumeratedValue>
102              <enumeratedValue>
103                <name>div2</name>
104                <value>1</value>
105              </enumeratedValue>
106            </enumeratedValues>
107          </field>
108          <field>
109            <name>input_scale</name>
110            <description>ADC Scale</description>
111            <bitRange>[9:9]</bitRange>
112            <access>read-write</access>
113            <enumeratedValues>
114              <enumeratedValue>
115                <name>div1</name>
116                <value>0</value>
117              </enumeratedValue>
118              <enumeratedValue>
119                <name>div2</name>
120                <value>1</value>
121              </enumeratedValue>
122            </enumeratedValues>
123          </field>
124          <field>
125            <name>clk_en</name>
126            <description>ADC Clock Enable</description>
127            <bitRange>[11:11]</bitRange>
128            <access>read-write</access>
129            <enumeratedValues>
130              <enumeratedValue>
131                <name>dis</name>
132                <value>0</value>
133              </enumeratedValue>
134              <enumeratedValue>
135                <name>en</name>
136                <value>1</value>
137              </enumeratedValue>
138            </enumeratedValues>
139          </field>
140          <field>
141            <name>ch_sel</name>
142            <description>ADC Channel Select</description>
143            <bitRange>[15:12]</bitRange>
144            <access>read-write</access>
145            <enumeratedValues>
146              <enumeratedValue>
147                <name>ain0</name>
148                <value>0</value>
149              </enumeratedValue>
150              <enumeratedValue>
151                <name>ain1</name>
152                <value>1</value>
153              </enumeratedValue>
154              <enumeratedValue>
155                <name>ain2</name>
156                <value>2</value>
157              </enumeratedValue>
158              <enumeratedValue>
159                <name>ain3</name>
160                <value>3</value>
161              </enumeratedValue>
162              <enumeratedValue>
163                <name>ain0_div5</name>
164                <value>4</value>
165              </enumeratedValue>
166              <enumeratedValue>
167                <name>ain1_div5</name>
168                <value>5</value>
169              </enumeratedValue>
170              <enumeratedValue>
171                <name>vddb_div4</name>
172                <value>6</value>
173              </enumeratedValue>
174              <enumeratedValue>
175                <name>vdda</name>
176                <value>7</value>
177              </enumeratedValue>
178              <enumeratedValue>
179                <name>vcore</name>
180                <value>8</value>
181              </enumeratedValue>
182              <enumeratedValue>
183                <name>vrtc_div2</name>
184                <value>9</value>
185              </enumeratedValue>
186              <enumeratedValue>
187                <name>rsv_0xa</name>
188                <value>10</value>
189              </enumeratedValue>
190              <enumeratedValue>
191                <name>vddio_div4</name>
192                <value>11</value>
193              </enumeratedValue>
194              <enumeratedValue>
195                <name>vddioh_div4</name>
196                <value>12</value>
197              </enumeratedValue>
198            </enumeratedValues>
199          </field>
200          <field>
201            <name>data_align</name>
202            <description>ADC Data Alignment Select</description>
203            <bitRange>[17:17]</bitRange>
204            <access>read-write</access>
205            <enumeratedValues>
206              <enumeratedValue>
207                <name>lsb_justified</name>
208                <value>0</value>
209              </enumeratedValue>
210              <enumeratedValue>
211                <name>msb_justified</name>
212                <value>1</value>
213              </enumeratedValue>
214            </enumeratedValues>
215          </field>
216        </fields>
217      </register>
218      <!-- STATUS: ADC Status -->
219      <register>
220        <name>STATUS</name>
221        <description>ADC Status</description>
222        <addressOffset>0x0004</addressOffset>
223        <access>read-write</access>
224        <fields>
225          <field>
226            <name>active</name>
227            <description>ADC Conversion In Progress</description>
228            <bitRange>[0:0]</bitRange>
229            <access>read-only</access>
230            <enumeratedValues>
231              <enumeratedValue>
232                <name>idle</name>
233                <value>0</value>
234              </enumeratedValue>
235              <enumeratedValue>
236                <name>active</name>
237                <value>1</value>
238              </enumeratedValue>
239            </enumeratedValues>
240          </field>
241          <field>
242            <name>pwr_up_active</name>
243            <description>AFE Power Up Delay Active</description>
244            <bitRange>[2:2]</bitRange>
245            <access>read-only</access>
246            <enumeratedValues>
247              <enumeratedValue>
248                <name>no_delay</name>
249                <value>0</value>
250              </enumeratedValue>
251              <enumeratedValue>
252                <name>delay_active</name>
253                <value>1</value>
254              </enumeratedValue>
255            </enumeratedValues>
256          </field>
257          <field>
258            <name>overflow</name>
259            <description>ADC Overflow</description>
260            <bitRange>[3:3]</bitRange>
261            <access>read-only</access>
262            <enumeratedValues>
263              <enumeratedValue>
264                <name>underflow</name>
265                <value>0</value>
266              </enumeratedValue>
267              <enumeratedValue>
268                <name>overflow</name>
269                <value>1</value>
270              </enumeratedValue>
271            </enumeratedValues>
272          </field>
273        </fields>
274      </register>
275      <!-- DATA: ADC Output Data -->
276      <register>
277        <name>DATA</name>
278        <description>ADC Output Data</description>
279        <addressOffset>0x0008</addressOffset>
280        <access>read-write</access>
281        <fields>
282          <field>
283            <name>data</name>
284            <description>ADC Converted Sample Data Output</description>
285            <bitRange>[15:0]</bitRange>
286            <access>read-only</access>
287          </field>
288        </fields>
289      </register>
290      <!-- INTR: ADC Interrupt Control Register -->
291      <register>
292        <name>INTR</name>
293        <description>ADC Interrupt Control Register</description>
294        <addressOffset>0x000C</addressOffset>
295        <access>read-write</access>
296        <fields>
297          <field>
298            <name>done_ie</name>
299            <description>ADC Done Interrupt Enable</description>
300            <bitRange>[0:0]</bitRange>
301            <access>read-write</access>
302            <enumeratedValues>
303              <enumeratedValue>
304                <name>dis</name>
305                <value>0</value>
306              </enumeratedValue>
307              <enumeratedValue>
308                <name>en</name>
309                <value>1</value>
310              </enumeratedValue>
311            </enumeratedValues>
312          </field>
313          <field>
314            <name>ref_ready_ie</name>
315            <description>ADC Reference Ready Interrupt Enable</description>
316            <bitRange>[1:1]</bitRange>
317            <access>read-write</access>
318            <enumeratedValues>
319              <enumeratedValue>
320                <name>dis</name>
321                <value>0</value>
322              </enumeratedValue>
323              <enumeratedValue>
324                <name>en</name>
325                <value>1</value>
326              </enumeratedValue>
327            </enumeratedValues>
328          </field>
329          <field>
330            <name>hi_limit_ie</name>
331            <description>ADC Hi Limit Monitor Interrupt Enable</description>
332            <bitRange>[2:2]</bitRange>
333            <access>read-write</access>
334            <enumeratedValues>
335              <enumeratedValue>
336                <name>dis</name>
337                <value>0</value>
338              </enumeratedValue>
339              <enumeratedValue>
340                <name>en</name>
341                <value>1</value>
342              </enumeratedValue>
343            </enumeratedValues>
344          </field>
345          <field>
346            <name>lo_limit_ie</name>
347            <description>ADC Lo Limit Monitor Interrupt Enable</description>
348            <bitRange>[3:3]</bitRange>
349            <access>read-write</access>
350            <enumeratedValues>
351              <enumeratedValue>
352                <name>dis</name>
353                <value>0</value>
354              </enumeratedValue>
355              <enumeratedValue>
356                <name>en</name>
357                <value>1</value>
358              </enumeratedValue>
359            </enumeratedValues>
360          </field>
361          <field>
362            <name>overflow_ie</name>
363            <description>ADC Overflow Interrupt Enable</description>
364            <bitRange>[4:4]</bitRange>
365            <access>read-write</access>
366            <enumeratedValues>
367              <enumeratedValue>
368                <name>dis</name>
369                <value>0</value>
370              </enumeratedValue>
371              <enumeratedValue>
372                <name>en</name>
373                <value>1</value>
374              </enumeratedValue>
375            </enumeratedValues>
376          </field>
377          <field>
378            <name>done_if</name>
379            <description>ADC Done Interrupt Flag</description>
380            <bitRange>[16:16]</bitRange>
381            <access>read-write</access>
382            <modifiedWriteValues>oneToClear</modifiedWriteValues>
383            <enumeratedValues>
384              <enumeratedValue>
385                <name>inactive</name>
386                <value>0</value>
387              </enumeratedValue>
388              <enumeratedValue>
389                <name>active</name>
390                <value>1</value>
391              </enumeratedValue>
392            </enumeratedValues>
393          </field>
394          <field>
395            <name>ref_ready_if</name>
396            <description>ADC Reference Ready Interrupt Flag</description>
397            <bitRange>[17:17]</bitRange>
398            <access>read-write</access>
399            <modifiedWriteValues>oneToClear</modifiedWriteValues>
400            <enumeratedValues>
401              <enumeratedValue>
402                <name>inactive</name>
403                <value>0</value>
404              </enumeratedValue>
405              <enumeratedValue>
406                <name>active</name>
407                <value>1</value>
408              </enumeratedValue>
409            </enumeratedValues>
410          </field>
411          <field>
412            <name>hi_limit_if</name>
413            <description>ADC Hi Limit Monitor Interrupt Flag</description>
414            <bitRange>[18:18]</bitRange>
415            <access>read-write</access>
416            <modifiedWriteValues>oneToClear</modifiedWriteValues>
417            <enumeratedValues>
418              <enumeratedValue>
419                <name>inactive</name>
420                <value>0</value>
421              </enumeratedValue>
422              <enumeratedValue>
423                <name>active</name>
424                <value>1</value>
425              </enumeratedValue>
426            </enumeratedValues>
427          </field>
428          <field>
429            <name>lo_limit_if</name>
430            <description>ADC Lo Limit Monitor Interrupt Flag</description>
431            <bitRange>[19:19]</bitRange>
432            <access>read-write</access>
433            <modifiedWriteValues>oneToClear</modifiedWriteValues>
434            <enumeratedValues>
435              <enumeratedValue>
436                <name>inactive</name>
437                <value>0</value>
438              </enumeratedValue>
439              <enumeratedValue>
440                <name>active</name>
441                <value>1</value>
442              </enumeratedValue>
443            </enumeratedValues>
444          </field>
445          <field>
446            <name>overflow_if</name>
447            <description>ADC Overflow Interrupt Flag</description>
448            <bitRange>[20:20]</bitRange>
449            <access>read-write</access>
450            <modifiedWriteValues>oneToClear</modifiedWriteValues>
451            <enumeratedValues>
452              <enumeratedValue>
453                <name>inactive</name>
454                <value>0</value>
455              </enumeratedValue>
456              <enumeratedValue>
457                <name>active</name>
458                <value>1</value>
459              </enumeratedValue>
460            </enumeratedValues>
461          </field>
462          <field>
463            <name>pending</name>
464            <description>ADC Interrupt Pending Status</description>
465            <bitRange>[22:22]</bitRange>
466            <access>read-only</access>
467            <enumeratedValues>
468              <enumeratedValue>
469                <name>no_int</name>
470                <value>0</value>
471              </enumeratedValue>
472              <enumeratedValue>
473                <name>int_pending</name>
474                <value>1</value>
475              </enumeratedValue>
476            </enumeratedValues>
477          </field>
478        </fields>
479      </register>
480      <!-- LIMIT: ADC Limit -->
481      <register>
482        <dim>4</dim>
483        <dimIncrement>4</dimIncrement>
484        <name>LIMIT[%s]</name>
485        <description>ADC Limit</description>
486        <addressOffset>0x0010</addressOffset>
487        <access>read-write</access>
488        <fields>
489          <field>
490            <name>ch_lo_limit</name>
491            <description>Low Limit Threshold</description>
492            <bitRange>[9:0]</bitRange>
493            <access>read-write</access>
494          </field>
495          <field>
496            <name>ch_hi_limit</name>
497            <description>High Limit Threshold</description>
498            <bitRange>[21:12]</bitRange>
499            <access>read-write</access>
500          </field>
501          <field>
502            <name>ch_sel</name>
503            <description>ADC Channel Select</description>
504            <bitRange>[27:24]</bitRange>
505            <access>read-write</access>
506            <enumeratedValues>
507              <enumeratedValue>
508                <name>ain0</name>
509                <value>0</value>
510              </enumeratedValue>
511              <enumeratedValue>
512                <name>ain1</name>
513                <value>1</value>
514              </enumeratedValue>
515              <enumeratedValue>
516                <name>ain2</name>
517                <value>2</value>
518              </enumeratedValue>
519              <enumeratedValue>
520                <name>ain3</name>
521                <value>3</value>
522              </enumeratedValue>
523              <enumeratedValue>
524                <name>ain4</name>
525                <value>4</value>
526              </enumeratedValue>
527              <enumeratedValue>
528                <name>ain5</name>
529                <value>5</value>
530              </enumeratedValue>
531              <enumeratedValue>
532                <name>ain6</name>
533                <value>6</value>
534              </enumeratedValue>
535              <enumeratedValue>
536                <name>ain7</name>
537                <value>7</value>
538              </enumeratedValue>
539              <enumeratedValue>
540                <name>ain8</name>
541                <value>8</value>
542              </enumeratedValue>
543              <enumeratedValue>
544                <name>ain9</name>
545                <value>9</value>
546              </enumeratedValue>
547              <enumeratedValue>
548                <name>ain10</name>
549                <value>10</value>
550              </enumeratedValue>
551              <enumeratedValue>
552                <name>ain11</name>
553                <value>11</value>
554              </enumeratedValue>
555              <enumeratedValue>
556                <name>ain12</name>
557                <value>12</value>
558              </enumeratedValue>
559            </enumeratedValues>
560          </field>
561          <field>
562            <name>ch_lo_limit_en</name>
563            <description>Low Limit Monitoring Enable</description>
564            <bitRange>[28:28]</bitRange>
565            <access>read-write</access>
566            <enumeratedValues>
567              <enumeratedValue>
568                <name>dis</name>
569                <value>0</value>
570              </enumeratedValue>
571              <enumeratedValue>
572                <name>en</name>
573                <value>1</value>
574              </enumeratedValue>
575            </enumeratedValues>
576          </field>
577          <field>
578            <name>ch_hi_limit_en</name>
579            <description>High Limit Monitoring Enable</description>
580            <bitRange>[29:29]</bitRange>
581            <access>read-write</access>
582            <enumeratedValues>
583              <enumeratedValue>
584                <name>dis</name>
585                <value>0</value>
586              </enumeratedValue>
587              <enumeratedValue>
588                <name>en</name>
589                <value>1</value>
590              </enumeratedValue>
591            </enumeratedValues>
592          </field>
593        </fields>
594      </register>
595    </registers>
596  </peripheral>
597  <!-- ADC: Analog to Digital Converter           -->
598</device>