avrd/gen/atmega32c1.rs
1//! The AVR ATmega32C1 microcontroller
2//!
3//! # Variants
4//! | | Pinout | Mcu age | Operating temperature | Operating voltage | Max speed |
5//! |--------|--------|---------|-----------------------|-------------------|-----------|
6//! | ATmega32C1-AU | TQFPQFN32 | TQFP32 | -40°C - 85°C | 2.7V - 5.5V | 16 MHz |
7//! | ATmega32C1-MU | TQFPQFN32 | QFN32 | -40°C - 85°C | 2.7V - 5.5V | 16 MHz |
8//!
9
10#![allow(non_upper_case_globals)]
11
12/// `LOCKBIT` register
13///
14/// Bitfields:
15///
16/// | Name | Mask (binary) |
17/// | ---- | ------------- |
18/// | BLB0 | 1100 |
19/// | BLB1 | 110000 |
20/// | LB | 11 |
21pub const LOCKBIT: *mut u8 = 0x0 as *mut u8;
22
23/// `LOW` register
24///
25/// Bitfields:
26///
27/// | Name | Mask (binary) |
28/// | ---- | ------------- |
29/// | SUT_CKSEL | 111111 |
30/// | CKOUT | 1000000 |
31/// | CKDIV8 | 10000000 |
32pub const LOW: *mut u8 = 0x0 as *mut u8;
33
34/// `HIGH` register
35///
36/// Bitfields:
37///
38/// | Name | Mask (binary) |
39/// | ---- | ------------- |
40/// | DWEN | 1000000 |
41/// | SPIEN | 100000 |
42/// | BOOTSZ | 110 |
43/// | BOOTRST | 1 |
44/// | RSTDISBL | 10000000 |
45/// | EESAVE | 1000 |
46/// | WDTON | 10000 |
47pub const HIGH: *mut u8 = 0x1 as *mut u8;
48
49/// `EXTENDED` register
50///
51/// Bitfields:
52///
53/// | Name | Mask (binary) |
54/// | ---- | ------------- |
55/// | PSCRVA | 10000 |
56/// | PSCRVB | 1000 |
57/// | BODLEVEL | 111 |
58/// | PSCRB | 100000 |
59pub const EXTENDED: *mut u8 = 0x2 as *mut u8;
60
61/// Port B Input Pins.
62pub const PINB: *mut u8 = 0x23 as *mut u8;
63
64/// Port B Data Direction Register.
65pub const DDRB: *mut u8 = 0x24 as *mut u8;
66
67/// Port B Data Register.
68pub const PORTB: *mut u8 = 0x25 as *mut u8;
69
70/// Port C Input Pins.
71pub const PINC: *mut u8 = 0x26 as *mut u8;
72
73/// Port C Data Direction Register.
74pub const DDRC: *mut u8 = 0x27 as *mut u8;
75
76/// Port C Data Register.
77pub const PORTC: *mut u8 = 0x28 as *mut u8;
78
79/// Port D Input Pins.
80pub const PIND: *mut u8 = 0x29 as *mut u8;
81
82/// Port D Data Direction Register.
83pub const DDRD: *mut u8 = 0x2A as *mut u8;
84
85/// Port D Data Register.
86pub const PORTD: *mut u8 = 0x2B as *mut u8;
87
88/// Port E Input Pins.
89pub const PINE: *mut u8 = 0x2C as *mut u8;
90
91/// Port E Data Direction Register.
92pub const DDRE: *mut u8 = 0x2D as *mut u8;
93
94/// Port E Data Register.
95pub const PORTE: *mut u8 = 0x2E as *mut u8;
96
97/// Timer/Counter0 Interrupt Flag register.
98///
99/// Bitfields:
100///
101/// | Name | Mask (binary) |
102/// | ---- | ------------- |
103/// | TOV0 | 1 |
104/// | OCF0B | 100 |
105/// | OCF0A | 10 |
106pub const TIFR0: *mut u8 = 0x35 as *mut u8;
107
108/// Timer/Counter Interrupt Flag register.
109///
110/// Bitfields:
111///
112/// | Name | Mask (binary) |
113/// | ---- | ------------- |
114/// | OCF1B | 100 |
115/// | ICF1 | 100000 |
116/// | TOV1 | 1 |
117/// | OCF1A | 10 |
118pub const TIFR1: *mut u8 = 0x36 as *mut u8;
119
120/// General Purpose IO Register 1.
121pub const GPIOR1: *mut u8 = 0x39 as *mut u8;
122
123/// General Purpose IO Register 2.
124pub const GPIOR2: *mut u8 = 0x3A as *mut u8;
125
126/// Pin Change Interrupt Flag Register.
127///
128/// Bitfields:
129///
130/// | Name | Mask (binary) |
131/// | ---- | ------------- |
132/// | PCIF | 1111 |
133pub const PCIFR: *mut u8 = 0x3B as *mut u8;
134
135/// External Interrupt Flag Register.
136///
137/// Bitfields:
138///
139/// | Name | Mask (binary) |
140/// | ---- | ------------- |
141/// | INTF | 1111 |
142pub const EIFR: *mut u8 = 0x3C as *mut u8;
143
144/// External Interrupt Mask Register.
145///
146/// Bitfields:
147///
148/// | Name | Mask (binary) |
149/// | ---- | ------------- |
150/// | INT | 1111 |
151pub const EIMSK: *mut u8 = 0x3D as *mut u8;
152
153/// General Purpose IO Register 0.
154///
155/// Bitfields:
156///
157/// | Name | Mask (binary) |
158/// | ---- | ------------- |
159/// | GPIOR06 | 1000000 |
160/// | GPIOR00 | 1 |
161/// | GPIOR05 | 100000 |
162/// | GPIOR03 | 1000 |
163/// | GPIOR07 | 10000000 |
164/// | GPIOR02 | 100 |
165/// | GPIOR04 | 10000 |
166/// | GPIOR01 | 10 |
167pub const GPIOR0: *mut u8 = 0x3E as *mut u8;
168
169/// EEPROM Control Register.
170///
171/// Bitfields:
172///
173/// | Name | Mask (binary) |
174/// | ---- | ------------- |
175/// | EERIE | 1000 |
176/// | EEMWE | 100 |
177/// | EERE | 1 |
178/// | EEPM | 110000 |
179/// | EEWE | 10 |
180pub const EECR: *mut u8 = 0x3F as *mut u8;
181
182/// EEPROM Data Register.
183pub const EEDR: *mut u8 = 0x40 as *mut u8;
184
185/// EEPROM Read/Write Access.
186pub const EEAR: *mut u16 = 0x41 as *mut u16;
187
188/// EEPROM Read/Write Access low byte.
189pub const EEARL: *mut u8 = 0x41 as *mut u8;
190
191/// EEPROM Read/Write Access high byte.
192pub const EEARH: *mut u8 = 0x42 as *mut u8;
193
194/// General Timer/Counter Control Register.
195///
196/// Bitfields:
197///
198/// | Name | Mask (binary) |
199/// | ---- | ------------- |
200/// | PSRSYNC | 1 |
201/// | TSM | 10000000 |
202pub const GTCCR: *mut u8 = 0x43 as *mut u8;
203
204/// Timer/Counter Control Register A.
205///
206/// Bitfields:
207///
208/// | Name | Mask (binary) |
209/// | ---- | ------------- |
210/// | COM0B | 110000 |
211/// | COM0A | 11000000 |
212/// | WGM0 | 11 |
213pub const TCCR0A: *mut u8 = 0x44 as *mut u8;
214
215/// Timer/Counter Control Register B.
216///
217/// Bitfields:
218///
219/// | Name | Mask (binary) |
220/// | ---- | ------------- |
221/// | FOC0B | 1000000 |
222/// | CS0 | 111 |
223/// | FOC0A | 10000000 |
224/// | WGM02 | 1000 |
225pub const TCCR0B: *mut u8 = 0x45 as *mut u8;
226
227/// Timer/Counter0.
228pub const TCNT0: *mut u8 = 0x46 as *mut u8;
229
230/// Timer/Counter0 Output Compare Register.
231pub const OCR0A: *mut u8 = 0x47 as *mut u8;
232
233/// Timer/Counter0 Output Compare Register.
234pub const OCR0B: *mut u8 = 0x48 as *mut u8;
235
236/// PLL Control And Status Register.
237///
238/// Bitfields:
239///
240/// | Name | Mask (binary) |
241/// | ---- | ------------- |
242/// | PLLE | 10 |
243/// | PLOCK | 1 |
244/// | PLLF | 100 |
245pub const PLLCSR: *mut u8 = 0x49 as *mut u8;
246
247/// SPI Control Register.
248///
249/// Bitfields:
250///
251/// | Name | Mask (binary) |
252/// | ---- | ------------- |
253/// | CPOL | 1000 |
254/// | SPE | 1000000 |
255/// | SPR | 11 |
256/// | DORD | 100000 |
257/// | MSTR | 10000 |
258/// | CPHA | 100 |
259/// | SPIE | 10000000 |
260pub const SPCR: *mut u8 = 0x4C as *mut u8;
261
262/// SPI Status Register.
263///
264/// Bitfields:
265///
266/// | Name | Mask (binary) |
267/// | ---- | ------------- |
268/// | WCOL | 1000000 |
269/// | SPIF | 10000000 |
270/// | SPI2X | 1 |
271pub const SPSR: *mut u8 = 0x4D as *mut u8;
272
273/// SPI Data Register.
274pub const SPDR: *mut u8 = 0x4E as *mut u8;
275
276/// Analog Comparator Status Register.
277///
278/// Bitfields:
279///
280/// | Name | Mask (binary) |
281/// | ---- | ------------- |
282/// | AC2IF | 1000000 |
283/// | AC0IF | 10000 |
284/// | AC3IF | 10000000 |
285/// | AC1IF | 100000 |
286/// | AC1O | 10 |
287/// | AC3O | 1000 |
288/// | AC2O | 100 |
289/// | AC0O | 1 |
290pub const ACSR: *mut u8 = 0x50 as *mut u8;
291
292/// Sleep Mode Control Register.
293///
294/// Bitfields:
295///
296/// | Name | Mask (binary) |
297/// | ---- | ------------- |
298/// | SM | 1110 |
299/// | SE | 1 |
300pub const SMCR: *mut u8 = 0x53 as *mut u8;
301
302/// MCU Status Register.
303///
304/// Bitfields:
305///
306/// | Name | Mask (binary) |
307/// | ---- | ------------- |
308/// | PORF | 1 |
309/// | WDRF | 1000 |
310/// | EXTRF | 10 |
311/// | BORF | 100 |
312pub const MCUSR: *mut u8 = 0x54 as *mut u8;
313
314/// MCU Control Register.
315///
316/// Bitfields:
317///
318/// | Name | Mask (binary) |
319/// | ---- | ------------- |
320/// | IVSEL | 10 |
321/// | IVCE | 1 |
322/// | SPIPS | 10000000 |
323/// | PUD | 10000 |
324pub const MCUCR: *mut u8 = 0x55 as *mut u8;
325
326/// Store Program Memory Control Register.
327///
328/// Bitfields:
329///
330/// | Name | Mask (binary) |
331/// | ---- | ------------- |
332/// | PGWRT | 100 |
333/// | PGERS | 10 |
334/// | SIGRD | 100000 |
335/// | BLBSET | 1000 |
336/// | RWWSRE | 10000 |
337/// | SPMEN | 1 |
338/// | RWWSB | 1000000 |
339/// | SPMIE | 10000000 |
340pub const SPMCSR: *mut u8 = 0x57 as *mut u8;
341
342/// Stack Pointer low byte.
343pub const SPL: *mut u8 = 0x5D as *mut u8;
344
345/// Stack Pointer.
346pub const SP: *mut u16 = 0x5D as *mut u16;
347
348/// Stack Pointer high byte.
349pub const SPH: *mut u8 = 0x5E as *mut u8;
350
351/// Status Register.
352///
353/// Bitfields:
354///
355/// | Name | Mask (binary) |
356/// | ---- | ------------- |
357/// | N | 100 |
358/// | Z | 10 |
359/// | V | 1000 |
360/// | C | 1 |
361/// | I | 10000000 |
362/// | T | 1000000 |
363/// | S | 10000 |
364/// | H | 100000 |
365pub const SREG: *mut u8 = 0x5F as *mut u8;
366
367/// Watchdog Timer Control Register.
368///
369/// Bitfields:
370///
371/// | Name | Mask (binary) |
372/// | ---- | ------------- |
373/// | WDIF | 10000000 |
374/// | WDCE | 10000 |
375/// | WDE | 1000 |
376/// | WDP | 100111 |
377/// | WDIE | 1000000 |
378pub const WDTCSR: *mut u8 = 0x60 as *mut u8;
379
380/// `CLKPR` register
381///
382/// Bitfields:
383///
384/// | Name | Mask (binary) |
385/// | ---- | ------------- |
386/// | CLKPCE | 10000000 |
387/// | CLKPS | 1111 |
388pub const CLKPR: *mut u8 = 0x61 as *mut u8;
389
390/// Power Reduction Register.
391///
392/// Bitfields:
393///
394/// | Name | Mask (binary) |
395/// | ---- | ------------- |
396/// | PRCAN | 1000000 |
397/// | PRTIM1 | 10000 |
398/// | PRPSC | 100000 |
399/// | PRLIN | 10 |
400/// | PRSPI | 100 |
401/// | PRADC | 1 |
402/// | PRTIM0 | 1000 |
403pub const PRR: *mut u8 = 0x64 as *mut u8;
404
405/// Oscillator Calibration Value.
406pub const OSCCAL: *mut u8 = 0x66 as *mut u8;
407
408/// Pin Change Interrupt Control Register.
409///
410/// Bitfields:
411///
412/// | Name | Mask (binary) |
413/// | ---- | ------------- |
414/// | PCIE | 1111 |
415pub const PCICR: *mut u8 = 0x68 as *mut u8;
416
417/// External Interrupt Control Register.
418///
419/// Bitfields:
420///
421/// | Name | Mask (binary) |
422/// | ---- | ------------- |
423/// | ISC3 | 11000000 |
424/// | ISC1 | 1100 |
425/// | ISC2 | 110000 |
426/// | ISC0 | 11 |
427pub const EICRA: *mut u8 = 0x69 as *mut u8;
428
429/// Pin Change Mask Register 0.
430pub const PCMSK0: *mut u8 = 0x6A as *mut u8;
431
432/// Pin Change Mask Register 1.
433pub const PCMSK1: *mut u8 = 0x6B as *mut u8;
434
435/// Pin Change Mask Register 2.
436pub const PCMSK2: *mut u8 = 0x6C as *mut u8;
437
438/// Pin Change Mask Register 3.
439pub const PCMSK3: *mut u8 = 0x6D as *mut u8;
440
441/// Timer/Counter0 Interrupt Mask Register.
442///
443/// Bitfields:
444///
445/// | Name | Mask (binary) |
446/// | ---- | ------------- |
447/// | OCIE0A | 10 |
448/// | OCIE0B | 100 |
449/// | TOIE0 | 1 |
450pub const TIMSK0: *mut u8 = 0x6E as *mut u8;
451
452/// Timer/Counter Interrupt Mask Register.
453///
454/// Bitfields:
455///
456/// | Name | Mask (binary) |
457/// | ---- | ------------- |
458/// | OCIE1B | 100 |
459/// | ICIE1 | 100000 |
460/// | OCIE1A | 10 |
461/// | TOIE1 | 1 |
462pub const TIMSK1: *mut u8 = 0x6F as *mut u8;
463
464/// `AMP0CSR` register
465///
466/// Bitfields:
467///
468/// | Name | Mask (binary) |
469/// | ---- | ------------- |
470/// | AMP0TS | 111 |
471/// | AMP0G | 110000 |
472/// | AMP0IS | 1000000 |
473/// | AMPCMP0 | 1000 |
474/// | AMP0EN | 10000000 |
475pub const AMP0CSR: *mut u8 = 0x75 as *mut u8;
476
477/// `AMP1CSR` register
478///
479/// Bitfields:
480///
481/// | Name | Mask (binary) |
482/// | ---- | ------------- |
483/// | AMP1IS | 1000000 |
484/// | AMP1EN | 10000000 |
485/// | AMPCMP1 | 1000 |
486/// | AMP1TS | 111 |
487/// | AMP1G | 110000 |
488pub const AMP1CSR: *mut u8 = 0x76 as *mut u8;
489
490/// `AMP2CSR` register
491///
492/// Bitfields:
493///
494/// | Name | Mask (binary) |
495/// | ---- | ------------- |
496/// | AMP2EN | 10000000 |
497/// | AMPCMP2 | 1000 |
498/// | AMP2IS | 1000000 |
499/// | AMP2G | 110000 |
500/// | AMP2TS | 111 |
501pub const AMP2CSR: *mut u8 = 0x77 as *mut u8;
502
503/// ADC Data Register Bytes.
504pub const ADC: *mut u16 = 0x78 as *mut u16;
505
506/// ADC Data Register Bytes low byte.
507pub const ADCL: *mut u8 = 0x78 as *mut u8;
508
509/// ADC Data Register Bytes high byte.
510pub const ADCH: *mut u8 = 0x79 as *mut u8;
511
512/// The ADC Control and Status register.
513///
514/// Bitfields:
515///
516/// | Name | Mask (binary) |
517/// | ---- | ------------- |
518/// | ADIE | 1000 |
519/// | ADATE | 100000 |
520/// | ADSC | 1000000 |
521/// | ADEN | 10000000 |
522/// | ADIF | 10000 |
523/// | ADPS | 111 |
524pub const ADCSRA: *mut u8 = 0x7A as *mut u8;
525
526/// ADC Control and Status Register B.
527///
528/// Bitfields:
529///
530/// | Name | Mask (binary) |
531/// | ---- | ------------- |
532/// | ADHSM | 10000000 |
533/// | AREFEN | 100000 |
534/// | ADTS | 1111 |
535/// | ISRCEN | 1000000 |
536pub const ADCSRB: *mut u8 = 0x7B as *mut u8;
537
538/// The ADC multiplexer Selection Register.
539///
540/// Bitfields:
541///
542/// | Name | Mask (binary) |
543/// | ---- | ------------- |
544/// | ADLAR | 100000 |
545/// | REFS | 11000000 |
546/// | MUX | 11111 |
547pub const ADMUX: *mut u8 = 0x7C as *mut u8;
548
549/// Digital Input Disable Register 0.
550///
551/// Bitfields:
552///
553/// | Name | Mask (binary) |
554/// | ---- | ------------- |
555/// | ADC6D | 1000000 |
556/// | ADC7D | 10000000 |
557/// | ADC3D | 1000 |
558/// | ADC4D | 10000 |
559/// | ADC1D | 10 |
560/// | ADC0D | 1 |
561/// | ADC2D | 100 |
562/// | ADC5D | 100000 |
563pub const DIDR0: *mut u8 = 0x7E as *mut u8;
564
565/// Digital Input Disable Register 0.
566///
567/// Bitfields:
568///
569/// | Name | Mask (binary) |
570/// | ---- | ------------- |
571/// | ADC8D | 1 |
572/// | AMP0PD | 10000 |
573/// | AMP2PD | 1000000 |
574/// | ACMP0D | 100000 |
575/// | ADC10D | 100 |
576/// | ADC9D | 10 |
577/// | AMP0ND | 1000 |
578pub const DIDR1: *mut u8 = 0x7F as *mut u8;
579
580/// Timer/Counter1 Control Register A.
581///
582/// Bitfields:
583///
584/// | Name | Mask (binary) |
585/// | ---- | ------------- |
586/// | COM1B | 110000 |
587/// | COM1A | 11000000 |
588pub const TCCR1A: *mut u8 = 0x80 as *mut u8;
589
590/// Timer/Counter1 Control Register B.
591///
592/// Bitfields:
593///
594/// | Name | Mask (binary) |
595/// | ---- | ------------- |
596/// | ICNC1 | 10000000 |
597/// | CS1 | 111 |
598/// | ICES1 | 1000000 |
599pub const TCCR1B: *mut u8 = 0x81 as *mut u8;
600
601/// Timer/Counter1 Control Register C.
602///
603/// Bitfields:
604///
605/// | Name | Mask (binary) |
606/// | ---- | ------------- |
607/// | FOC1B | 1000000 |
608/// | FOC1A | 10000000 |
609pub const TCCR1C: *mut u8 = 0x82 as *mut u8;
610
611/// Timer/Counter1 Bytes.
612pub const TCNT1: *mut u16 = 0x84 as *mut u16;
613
614/// Timer/Counter1 Bytes low byte.
615pub const TCNT1L: *mut u8 = 0x84 as *mut u8;
616
617/// Timer/Counter1 Bytes high byte.
618pub const TCNT1H: *mut u8 = 0x85 as *mut u8;
619
620/// Timer/Counter1 Input Capture Register Bytes low byte.
621pub const ICR1L: *mut u8 = 0x86 as *mut u8;
622
623/// Timer/Counter1 Input Capture Register Bytes.
624pub const ICR1: *mut u16 = 0x86 as *mut u16;
625
626/// Timer/Counter1 Input Capture Register Bytes high byte.
627pub const ICR1H: *mut u8 = 0x87 as *mut u8;
628
629/// Timer/Counter1 Output Compare Register Bytes.
630pub const OCR1A: *mut u16 = 0x88 as *mut u16;
631
632/// Timer/Counter1 Output Compare Register Bytes low byte.
633pub const OCR1AL: *mut u8 = 0x88 as *mut u8;
634
635/// Timer/Counter1 Output Compare Register Bytes high byte.
636pub const OCR1AH: *mut u8 = 0x89 as *mut u8;
637
638/// Timer/Counter1 Output Compare Register Bytes low byte.
639pub const OCR1BL: *mut u8 = 0x8A as *mut u8;
640
641/// Timer/Counter1 Output Compare Register Bytes.
642pub const OCR1B: *mut u16 = 0x8A as *mut u16;
643
644/// Timer/Counter1 Output Compare Register Bytes high byte.
645pub const OCR1BH: *mut u8 = 0x8B as *mut u8;
646
647/// DAC Control Register.
648///
649/// Bitfields:
650///
651/// | Name | Mask (binary) |
652/// | ---- | ------------- |
653/// | DALA | 100 |
654/// | DAEN | 1 |
655/// | DAATE | 10000000 |
656/// | DAOE | 10 |
657/// | DATS | 1110000 |
658pub const DACON: *mut u8 = 0x90 as *mut u8;
659
660/// DAC Data Register low byte.
661pub const DACL: *mut u8 = 0x91 as *mut u8;
662
663/// DAC Data Register.
664pub const DAC: *mut u16 = 0x91 as *mut u16;
665
666/// DAC Data Register high byte.
667pub const DACH: *mut u8 = 0x92 as *mut u8;
668
669/// Analog Comparator 0 Control Register.
670///
671/// Bitfields:
672///
673/// | Name | Mask (binary) |
674/// | ---- | ------------- |
675/// | ACCKSEL | 1000 |
676/// | AC0EN | 10000000 |
677/// | AC0IE | 1000000 |
678/// | AC0M | 111 |
679/// | AC0IS | 110000 |
680pub const AC0CON: *mut u8 = 0x94 as *mut u8;
681
682/// Analog Comparator 1 Control Register.
683///
684/// Bitfields:
685///
686/// | Name | Mask (binary) |
687/// | ---- | ------------- |
688/// | AC1M | 111 |
689/// | AC1ICE | 1000 |
690/// | AC1IS | 110000 |
691/// | AC1IE | 1000000 |
692/// | AC1EN | 10000000 |
693pub const AC1CON: *mut u8 = 0x95 as *mut u8;
694
695/// Analog Comparator 2 Control Register.
696///
697/// Bitfields:
698///
699/// | Name | Mask (binary) |
700/// | ---- | ------------- |
701/// | AC2IS | 110000 |
702/// | AC2IE | 1000000 |
703/// | AC2EN | 10000000 |
704/// | AC2M | 111 |
705pub const AC2CON: *mut u8 = 0x96 as *mut u8;
706
707/// Analog Comparator 3 Control Register.
708///
709/// Bitfields:
710///
711/// | Name | Mask (binary) |
712/// | ---- | ------------- |
713/// | AC3M | 111 |
714/// | AC3IS | 110000 |
715/// | AC3EN | 10000000 |
716/// | AC3IE | 1000000 |
717pub const AC3CON: *mut u8 = 0x97 as *mut u8;
718
719/// LIN Control Register.
720///
721/// Bitfields:
722///
723/// | Name | Mask (binary) |
724/// | ---- | ------------- |
725/// | LCONF | 110000 |
726/// | LSWRES | 10000000 |
727/// | LENA | 1000 |
728/// | LIN13 | 1000000 |
729/// | LCMD | 111 |
730pub const LINCR: *mut u8 = 0xC8 as *mut u8;
731
732/// LIN Status and Interrupt Register.
733///
734/// Bitfields:
735///
736/// | Name | Mask (binary) |
737/// | ---- | ------------- |
738/// | LBUSY | 10000 |
739/// | LIDST | 11100000 |
740/// | LIDOK | 100 |
741/// | LERR | 1000 |
742/// | LRXOK | 1 |
743/// | LTXOK | 10 |
744pub const LINSIR: *mut u8 = 0xC9 as *mut u8;
745
746/// LIN Enable Interrupt Register.
747///
748/// Bitfields:
749///
750/// | Name | Mask (binary) |
751/// | ---- | ------------- |
752/// | LENTXOK | 10 |
753/// | LENRXOK | 1 |
754/// | LENIDOK | 100 |
755/// | LENERR | 1000 |
756pub const LINENIR: *mut u8 = 0xCA as *mut u8;
757
758/// LIN Error Register.
759///
760/// Bitfields:
761///
762/// | Name | Mask (binary) |
763/// | ---- | ------------- |
764/// | LFERR | 10000 |
765/// | LCERR | 10 |
766/// | LTOERR | 1000000 |
767/// | LBERR | 1 |
768/// | LSERR | 1000 |
769/// | LABORT | 10000000 |
770/// | LOVERR | 100000 |
771/// | LPERR | 100 |
772pub const LINERR: *mut u8 = 0xCB as *mut u8;
773
774/// LIN Bit Timing Register.
775///
776/// Bitfields:
777///
778/// | Name | Mask (binary) |
779/// | ---- | ------------- |
780/// | LBT | 111111 |
781/// | LDISR | 10000000 |
782pub const LINBTR: *mut u8 = 0xCC as *mut u8;
783
784/// LIN Baud Rate Register.
785///
786/// Bitfields:
787///
788/// | Name | Mask (binary) |
789/// | ---- | ------------- |
790/// | LDIV | 111111111111 |
791pub const LINBRR: *mut u16 = 0xCD as *mut u16;
792
793/// LIN Baud Rate Register low byte.
794pub const LINBRRL: *mut u8 = 0xCD as *mut u8;
795
796/// LIN Baud Rate Register high byte.
797pub const LINBRRH: *mut u8 = 0xCE as *mut u8;
798
799/// LIN Data Length Register.
800///
801/// Bitfields:
802///
803/// | Name | Mask (binary) |
804/// | ---- | ------------- |
805/// | LTXDL | 11110000 |
806/// | LRXDL | 1111 |
807pub const LINDLR: *mut u8 = 0xCF as *mut u8;
808
809/// LIN Identifier Register.
810///
811/// Bitfields:
812///
813/// | Name | Mask (binary) |
814/// | ---- | ------------- |
815/// | LP | 11000000 |
816/// | LID | 111111 |
817pub const LINIDR: *mut u8 = 0xD0 as *mut u8;
818
819/// LIN Data Buffer Selection Register.
820///
821/// Bitfields:
822///
823/// | Name | Mask (binary) |
824/// | ---- | ------------- |
825/// | LAINC | 1000 |
826/// | LINDX | 111 |
827pub const LINSEL: *mut u8 = 0xD1 as *mut u8;
828
829/// LIN Data Register.
830pub const LINDAT: *mut u8 = 0xD2 as *mut u8;
831
832/// CAN General Control Register.
833///
834/// Bitfields:
835///
836/// | Name | Mask (binary) |
837/// | ---- | ------------- |
838/// | ABRQ | 10000000 |
839/// | TEST | 100 |
840/// | ENASTB | 10 |
841/// | SYNTTC | 10000 |
842/// | OVRQ | 1000000 |
843/// | SWRES | 1 |
844/// | LISTEN | 1000 |
845/// | TTC | 100000 |
846pub const CANGCON: *mut u8 = 0xD8 as *mut u8;
847
848/// CAN General Status Register.
849///
850/// Bitfields:
851///
852/// | Name | Mask (binary) |
853/// | ---- | ------------- |
854/// | OVFG | 1000000 |
855/// | TXBSY | 10000 |
856/// | ENFG | 100 |
857/// | ERRP | 1 |
858/// | RXBSY | 1000 |
859/// | BOFF | 10 |
860pub const CANGSTA: *mut u8 = 0xD9 as *mut u8;
861
862/// CAN General Interrupt Register Flags.
863///
864/// Bitfields:
865///
866/// | Name | Mask (binary) |
867/// | ---- | ------------- |
868/// | CERG | 100 |
869/// | FERG | 10 |
870/// | BOFFIT | 1000000 |
871/// | BXOK | 10000 |
872/// | AERG | 1 |
873/// | SERG | 1000 |
874/// | CANIT | 10000000 |
875/// | OVRTIM | 100000 |
876pub const CANGIT: *mut u8 = 0xDA as *mut u8;
877
878/// CAN General Interrupt Enable Register.
879///
880/// Bitfields:
881///
882/// | Name | Mask (binary) |
883/// | ---- | ------------- |
884/// | ENTX | 10000 |
885/// | ENRX | 100000 |
886/// | ENERR | 1000 |
887/// | ENBX | 100 |
888/// | ENERG | 10 |
889/// | ENBOFF | 1000000 |
890/// | ENIT | 10000000 |
891/// | ENOVRT | 1 |
892pub const CANGIE: *mut u8 = 0xDB as *mut u8;
893
894/// Enable MOb Register 2.
895///
896/// Bitfields:
897///
898/// | Name | Mask (binary) |
899/// | ---- | ------------- |
900/// | ENMOB | 111111 |
901pub const CANEN2: *mut u8 = 0xDC as *mut u8;
902
903/// Enable MOb Register 1(empty).
904pub const CANEN1: *mut u8 = 0xDD as *mut u8;
905
906/// Enable Interrupt MOb Register 2.
907///
908/// Bitfields:
909///
910/// | Name | Mask (binary) |
911/// | ---- | ------------- |
912/// | IEMOB | 111111 |
913pub const CANIE2: *mut u8 = 0xDE as *mut u8;
914
915/// Enable Interrupt MOb Register 1 (empty).
916pub const CANIE1: *mut u8 = 0xDF as *mut u8;
917
918/// CAN Status Interrupt MOb Register 2.
919///
920/// Bitfields:
921///
922/// | Name | Mask (binary) |
923/// | ---- | ------------- |
924/// | SIT | 111111 |
925pub const CANSIT2: *mut u8 = 0xE0 as *mut u8;
926
927/// CAN Status Interrupt MOb Register 1 (empty).
928pub const CANSIT1: *mut u8 = 0xE1 as *mut u8;
929
930/// CAN Bit Timing Register 1.
931///
932/// Bitfields:
933///
934/// | Name | Mask (binary) |
935/// | ---- | ------------- |
936/// | BRP | 1111110 |
937pub const CANBT1: *mut u8 = 0xE2 as *mut u8;
938
939/// CAN Bit Timing Register 2.
940///
941/// Bitfields:
942///
943/// | Name | Mask (binary) |
944/// | ---- | ------------- |
945/// | SJW | 1100000 |
946/// | PRS | 1110 |
947pub const CANBT2: *mut u8 = 0xE3 as *mut u8;
948
949/// CAN Bit Timing Register 3.
950///
951/// Bitfields:
952///
953/// | Name | Mask (binary) |
954/// | ---- | ------------- |
955/// | PHS1 | 1110 |
956/// | SMP | 1 |
957/// | PHS2 | 1110000 |
958pub const CANBT3: *mut u8 = 0xE4 as *mut u8;
959
960/// Timer Control Register.
961pub const CANTCON: *mut u8 = 0xE5 as *mut u8;
962
963/// Timer Register low byte.
964pub const CANTIML: *mut u8 = 0xE6 as *mut u8;
965
966/// Timer Register.
967pub const CANTIM: *mut u16 = 0xE6 as *mut u16;
968
969/// Timer Register high byte.
970pub const CANTIMH: *mut u8 = 0xE7 as *mut u8;
971
972/// TTC Timer Register.
973pub const CANTTC: *mut u16 = 0xE8 as *mut u16;
974
975/// TTC Timer Register low byte.
976pub const CANTTCL: *mut u8 = 0xE8 as *mut u8;
977
978/// TTC Timer Register high byte.
979pub const CANTTCH: *mut u8 = 0xE9 as *mut u8;
980
981/// Transmit Error Counter Register.
982pub const CANTEC: *mut u8 = 0xEA as *mut u8;
983
984/// Receive Error Counter Register.
985pub const CANREC: *mut u8 = 0xEB as *mut u8;
986
987/// Highest Priority MOb Register.
988///
989/// Bitfields:
990///
991/// | Name | Mask (binary) |
992/// | ---- | ------------- |
993/// | HPMOB | 11110000 |
994/// | CGP | 1111 |
995pub const CANHPMOB: *mut u8 = 0xEC as *mut u8;
996
997/// Page MOb Register.
998///
999/// Bitfields:
1000///
1001/// | Name | Mask (binary) |
1002/// | ---- | ------------- |
1003/// | AINC | 1000 |
1004/// | MOBNB | 11110000 |
1005/// | INDX | 111 |
1006pub const CANPAGE: *mut u8 = 0xED as *mut u8;
1007
1008/// MOb Status Register.
1009///
1010/// Bitfields:
1011///
1012/// | Name | Mask (binary) |
1013/// | ---- | ------------- |
1014/// | TXOK | 1000000 |
1015/// | RXOK | 100000 |
1016/// | AERR | 1 |
1017/// | CERR | 100 |
1018/// | SERR | 1000 |
1019/// | FERR | 10 |
1020/// | DLCW | 10000000 |
1021/// | BERR | 10000 |
1022pub const CANSTMOB: *mut u8 = 0xEE as *mut u8;
1023
1024/// MOb Control and DLC Register.
1025///
1026/// Bitfields:
1027///
1028/// | Name | Mask (binary) |
1029/// | ---- | ------------- |
1030/// | DLC | 1111 |
1031/// | CONMOB | 11000000 |
1032/// | RPLV | 100000 |
1033/// | IDE | 10000 |
1034pub const CANCDMOB: *mut u8 = 0xEF as *mut u8;
1035
1036/// Identifier Tag Register 4.
1037///
1038/// Bitfields:
1039///
1040/// | Name | Mask (binary) |
1041/// | ---- | ------------- |
1042/// | RB1TAG | 10 |
1043/// | RB0TAG | 1 |
1044/// | RTRTAG | 100 |
1045pub const CANIDT4: *mut u8 = 0xF0 as *mut u8;
1046
1047/// Identifier Tag Register 3.
1048pub const CANIDT3: *mut u8 = 0xF1 as *mut u8;
1049
1050/// Identifier Tag Register 2.
1051pub const CANIDT2: *mut u8 = 0xF2 as *mut u8;
1052
1053/// Identifier Tag Register 1.
1054pub const CANIDT1: *mut u8 = 0xF3 as *mut u8;
1055
1056/// Identifier Mask Register 4.
1057///
1058/// Bitfields:
1059///
1060/// | Name | Mask (binary) |
1061/// | ---- | ------------- |
1062/// | RTRMSK | 100 |
1063/// | IDEMSK | 1 |
1064pub const CANIDM4: *mut u8 = 0xF4 as *mut u8;
1065
1066/// Identifier Mask Register 3.
1067pub const CANIDM3: *mut u8 = 0xF5 as *mut u8;
1068
1069/// Identifier Mask Register 2.
1070pub const CANIDM2: *mut u8 = 0xF6 as *mut u8;
1071
1072/// Identifier Mask Register 1.
1073pub const CANIDM1: *mut u8 = 0xF7 as *mut u8;
1074
1075/// Time Stamp Register low byte.
1076pub const CANSTML: *mut u8 = 0xF8 as *mut u8;
1077
1078/// Time Stamp Register.
1079pub const CANSTM: *mut u16 = 0xF8 as *mut u16;
1080
1081/// Time Stamp Register high byte.
1082pub const CANSTMH: *mut u8 = 0xF9 as *mut u8;
1083
1084/// Message Data Register.
1085pub const CANMSG: *mut u8 = 0xFA as *mut u8;
1086
1087/// Bitfield on register `AC0CON`
1088pub const ACCKSEL: *mut u8 = 0x8 as *mut u8;
1089
1090/// Bitfield on register `AC0CON`
1091pub const AC0EN: *mut u8 = 0x80 as *mut u8;
1092
1093/// Bitfield on register `AC0CON`
1094pub const AC0IE: *mut u8 = 0x40 as *mut u8;
1095
1096/// Bitfield on register `AC0CON`
1097pub const AC0M: *mut u8 = 0x7 as *mut u8;
1098
1099/// Bitfield on register `AC0CON`
1100pub const AC0IS: *mut u8 = 0x30 as *mut u8;
1101
1102/// Bitfield on register `AC1CON`
1103pub const AC1M: *mut u8 = 0x7 as *mut u8;
1104
1105/// Bitfield on register `AC1CON`
1106pub const AC1ICE: *mut u8 = 0x8 as *mut u8;
1107
1108/// Bitfield on register `AC1CON`
1109pub const AC1IS: *mut u8 = 0x30 as *mut u8;
1110
1111/// Bitfield on register `AC1CON`
1112pub const AC1IE: *mut u8 = 0x40 as *mut u8;
1113
1114/// Bitfield on register `AC1CON`
1115pub const AC1EN: *mut u8 = 0x80 as *mut u8;
1116
1117/// Bitfield on register `AC2CON`
1118pub const AC2IS: *mut u8 = 0x30 as *mut u8;
1119
1120/// Bitfield on register `AC2CON`
1121pub const AC2IE: *mut u8 = 0x40 as *mut u8;
1122
1123/// Bitfield on register `AC2CON`
1124pub const AC2EN: *mut u8 = 0x80 as *mut u8;
1125
1126/// Bitfield on register `AC2CON`
1127pub const AC2M: *mut u8 = 0x7 as *mut u8;
1128
1129/// Bitfield on register `AC3CON`
1130pub const AC3M: *mut u8 = 0x7 as *mut u8;
1131
1132/// Bitfield on register `AC3CON`
1133pub const AC3IS: *mut u8 = 0x30 as *mut u8;
1134
1135/// Bitfield on register `AC3CON`
1136pub const AC3EN: *mut u8 = 0x80 as *mut u8;
1137
1138/// Bitfield on register `AC3CON`
1139pub const AC3IE: *mut u8 = 0x40 as *mut u8;
1140
1141/// Bitfield on register `ACSR`
1142pub const AC2IF: *mut u8 = 0x40 as *mut u8;
1143
1144/// Bitfield on register `ACSR`
1145pub const AC0IF: *mut u8 = 0x10 as *mut u8;
1146
1147/// Bitfield on register `ACSR`
1148pub const AC3IF: *mut u8 = 0x80 as *mut u8;
1149
1150/// Bitfield on register `ACSR`
1151pub const AC1IF: *mut u8 = 0x20 as *mut u8;
1152
1153/// Bitfield on register `ACSR`
1154pub const AC1O: *mut u8 = 0x2 as *mut u8;
1155
1156/// Bitfield on register `ACSR`
1157pub const AC3O: *mut u8 = 0x8 as *mut u8;
1158
1159/// Bitfield on register `ACSR`
1160pub const AC2O: *mut u8 = 0x4 as *mut u8;
1161
1162/// Bitfield on register `ACSR`
1163pub const AC0O: *mut u8 = 0x1 as *mut u8;
1164
1165/// Bitfield on register `ADCSRA`
1166pub const ADIE: *mut u8 = 0x8 as *mut u8;
1167
1168/// Bitfield on register `ADCSRA`
1169pub const ADATE: *mut u8 = 0x20 as *mut u8;
1170
1171/// Bitfield on register `ADCSRA`
1172pub const ADSC: *mut u8 = 0x40 as *mut u8;
1173
1174/// Bitfield on register `ADCSRA`
1175pub const ADEN: *mut u8 = 0x80 as *mut u8;
1176
1177/// Bitfield on register `ADCSRA`
1178pub const ADIF: *mut u8 = 0x10 as *mut u8;
1179
1180/// Bitfield on register `ADCSRA`
1181pub const ADPS: *mut u8 = 0x7 as *mut u8;
1182
1183/// Bitfield on register `ADCSRB`
1184pub const ADHSM: *mut u8 = 0x80 as *mut u8;
1185
1186/// Bitfield on register `ADCSRB`
1187pub const AREFEN: *mut u8 = 0x20 as *mut u8;
1188
1189/// Bitfield on register `ADCSRB`
1190pub const ADTS: *mut u8 = 0xF as *mut u8;
1191
1192/// Bitfield on register `ADCSRB`
1193pub const ISRCEN: *mut u8 = 0x40 as *mut u8;
1194
1195/// Bitfield on register `ADMUX`
1196pub const ADLAR: *mut u8 = 0x20 as *mut u8;
1197
1198/// Bitfield on register `ADMUX`
1199pub const REFS: *mut u8 = 0xC0 as *mut u8;
1200
1201/// Bitfield on register `ADMUX`
1202pub const MUX: *mut u8 = 0x1F as *mut u8;
1203
1204/// Bitfield on register `AMP0CSR`
1205pub const AMP0TS: *mut u8 = 0x7 as *mut u8;
1206
1207/// Bitfield on register `AMP0CSR`
1208pub const AMP0G: *mut u8 = 0x30 as *mut u8;
1209
1210/// Bitfield on register `AMP0CSR`
1211pub const AMP0IS: *mut u8 = 0x40 as *mut u8;
1212
1213/// Bitfield on register `AMP0CSR`
1214pub const AMPCMP0: *mut u8 = 0x8 as *mut u8;
1215
1216/// Bitfield on register `AMP0CSR`
1217pub const AMP0EN: *mut u8 = 0x80 as *mut u8;
1218
1219/// Bitfield on register `AMP1CSR`
1220pub const AMP1IS: *mut u8 = 0x40 as *mut u8;
1221
1222/// Bitfield on register `AMP1CSR`
1223pub const AMP1EN: *mut u8 = 0x80 as *mut u8;
1224
1225/// Bitfield on register `AMP1CSR`
1226pub const AMPCMP1: *mut u8 = 0x8 as *mut u8;
1227
1228/// Bitfield on register `AMP1CSR`
1229pub const AMP1TS: *mut u8 = 0x7 as *mut u8;
1230
1231/// Bitfield on register `AMP1CSR`
1232pub const AMP1G: *mut u8 = 0x30 as *mut u8;
1233
1234/// Bitfield on register `AMP2CSR`
1235pub const AMP2EN: *mut u8 = 0x80 as *mut u8;
1236
1237/// Bitfield on register `AMP2CSR`
1238pub const AMPCMP2: *mut u8 = 0x8 as *mut u8;
1239
1240/// Bitfield on register `AMP2CSR`
1241pub const AMP2IS: *mut u8 = 0x40 as *mut u8;
1242
1243/// Bitfield on register `AMP2CSR`
1244pub const AMP2G: *mut u8 = 0x30 as *mut u8;
1245
1246/// Bitfield on register `AMP2CSR`
1247pub const AMP2TS: *mut u8 = 0x7 as *mut u8;
1248
1249/// Bitfield on register `CANBT1`
1250pub const BRP: *mut u8 = 0x7E as *mut u8;
1251
1252/// Bitfield on register `CANBT2`
1253pub const SJW: *mut u8 = 0x60 as *mut u8;
1254
1255/// Bitfield on register `CANBT2`
1256pub const PRS: *mut u8 = 0xE as *mut u8;
1257
1258/// Bitfield on register `CANBT3`
1259pub const PHS1: *mut u8 = 0xE as *mut u8;
1260
1261/// Bitfield on register `CANBT3`
1262pub const SMP: *mut u8 = 0x1 as *mut u8;
1263
1264/// Bitfield on register `CANBT3`
1265pub const PHS2: *mut u8 = 0x70 as *mut u8;
1266
1267/// Bitfield on register `CANCDMOB`
1268pub const DLC: *mut u8 = 0xF as *mut u8;
1269
1270/// Bitfield on register `CANCDMOB`
1271pub const CONMOB: *mut u8 = 0xC0 as *mut u8;
1272
1273/// Bitfield on register `CANCDMOB`
1274pub const RPLV: *mut u8 = 0x20 as *mut u8;
1275
1276/// Bitfield on register `CANCDMOB`
1277pub const IDE: *mut u8 = 0x10 as *mut u8;
1278
1279/// Bitfield on register `CANEN2`
1280pub const ENMOB: *mut u8 = 0x3F as *mut u8;
1281
1282/// Bitfield on register `CANGCON`
1283pub const ABRQ: *mut u8 = 0x80 as *mut u8;
1284
1285/// Bitfield on register `CANGCON`
1286pub const TEST: *mut u8 = 0x4 as *mut u8;
1287
1288/// Bitfield on register `CANGCON`
1289pub const ENASTB: *mut u8 = 0x2 as *mut u8;
1290
1291/// Bitfield on register `CANGCON`
1292pub const SYNTTC: *mut u8 = 0x10 as *mut u8;
1293
1294/// Bitfield on register `CANGCON`
1295pub const OVRQ: *mut u8 = 0x40 as *mut u8;
1296
1297/// Bitfield on register `CANGCON`
1298pub const SWRES: *mut u8 = 0x1 as *mut u8;
1299
1300/// Bitfield on register `CANGCON`
1301pub const LISTEN: *mut u8 = 0x8 as *mut u8;
1302
1303/// Bitfield on register `CANGCON`
1304pub const TTC: *mut u8 = 0x20 as *mut u8;
1305
1306/// Bitfield on register `CANGIE`
1307pub const ENTX: *mut u8 = 0x10 as *mut u8;
1308
1309/// Bitfield on register `CANGIE`
1310pub const ENRX: *mut u8 = 0x20 as *mut u8;
1311
1312/// Bitfield on register `CANGIE`
1313pub const ENERR: *mut u8 = 0x8 as *mut u8;
1314
1315/// Bitfield on register `CANGIE`
1316pub const ENBX: *mut u8 = 0x4 as *mut u8;
1317
1318/// Bitfield on register `CANGIE`
1319pub const ENERG: *mut u8 = 0x2 as *mut u8;
1320
1321/// Bitfield on register `CANGIE`
1322pub const ENBOFF: *mut u8 = 0x40 as *mut u8;
1323
1324/// Bitfield on register `CANGIE`
1325pub const ENIT: *mut u8 = 0x80 as *mut u8;
1326
1327/// Bitfield on register `CANGIE`
1328pub const ENOVRT: *mut u8 = 0x1 as *mut u8;
1329
1330/// Bitfield on register `CANGIT`
1331pub const CERG: *mut u8 = 0x4 as *mut u8;
1332
1333/// Bitfield on register `CANGIT`
1334pub const FERG: *mut u8 = 0x2 as *mut u8;
1335
1336/// Bitfield on register `CANGIT`
1337pub const BOFFIT: *mut u8 = 0x40 as *mut u8;
1338
1339/// Bitfield on register `CANGIT`
1340pub const BXOK: *mut u8 = 0x10 as *mut u8;
1341
1342/// Bitfield on register `CANGIT`
1343pub const AERG: *mut u8 = 0x1 as *mut u8;
1344
1345/// Bitfield on register `CANGIT`
1346pub const SERG: *mut u8 = 0x8 as *mut u8;
1347
1348/// Bitfield on register `CANGIT`
1349pub const CANIT: *mut u8 = 0x80 as *mut u8;
1350
1351/// Bitfield on register `CANGIT`
1352pub const OVRTIM: *mut u8 = 0x20 as *mut u8;
1353
1354/// Bitfield on register `CANGSTA`
1355pub const OVFG: *mut u8 = 0x40 as *mut u8;
1356
1357/// Bitfield on register `CANGSTA`
1358pub const TXBSY: *mut u8 = 0x10 as *mut u8;
1359
1360/// Bitfield on register `CANGSTA`
1361pub const ENFG: *mut u8 = 0x4 as *mut u8;
1362
1363/// Bitfield on register `CANGSTA`
1364pub const ERRP: *mut u8 = 0x1 as *mut u8;
1365
1366/// Bitfield on register `CANGSTA`
1367pub const RXBSY: *mut u8 = 0x8 as *mut u8;
1368
1369/// Bitfield on register `CANGSTA`
1370pub const BOFF: *mut u8 = 0x2 as *mut u8;
1371
1372/// Bitfield on register `CANHPMOB`
1373pub const HPMOB: *mut u8 = 0xF0 as *mut u8;
1374
1375/// Bitfield on register `CANHPMOB`
1376pub const CGP: *mut u8 = 0xF as *mut u8;
1377
1378/// Bitfield on register `CANIDM4`
1379pub const RTRMSK: *mut u8 = 0x4 as *mut u8;
1380
1381/// Bitfield on register `CANIDM4`
1382pub const IDEMSK: *mut u8 = 0x1 as *mut u8;
1383
1384/// Bitfield on register `CANIDT4`
1385pub const RB1TAG: *mut u8 = 0x2 as *mut u8;
1386
1387/// Bitfield on register `CANIDT4`
1388pub const RB0TAG: *mut u8 = 0x1 as *mut u8;
1389
1390/// Bitfield on register `CANIDT4`
1391pub const RTRTAG: *mut u8 = 0x4 as *mut u8;
1392
1393/// Bitfield on register `CANIE2`
1394pub const IEMOB: *mut u8 = 0x3F as *mut u8;
1395
1396/// Bitfield on register `CANPAGE`
1397pub const AINC: *mut u8 = 0x8 as *mut u8;
1398
1399/// Bitfield on register `CANPAGE`
1400pub const MOBNB: *mut u8 = 0xF0 as *mut u8;
1401
1402/// Bitfield on register `CANPAGE`
1403pub const INDX: *mut u8 = 0x7 as *mut u8;
1404
1405/// Bitfield on register `CANSIT2`
1406pub const SIT: *mut u8 = 0x3F as *mut u8;
1407
1408/// Bitfield on register `CANSTMOB`
1409pub const TXOK: *mut u8 = 0x40 as *mut u8;
1410
1411/// Bitfield on register `CANSTMOB`
1412pub const RXOK: *mut u8 = 0x20 as *mut u8;
1413
1414/// Bitfield on register `CANSTMOB`
1415pub const AERR: *mut u8 = 0x1 as *mut u8;
1416
1417/// Bitfield on register `CANSTMOB`
1418pub const CERR: *mut u8 = 0x4 as *mut u8;
1419
1420/// Bitfield on register `CANSTMOB`
1421pub const SERR: *mut u8 = 0x8 as *mut u8;
1422
1423/// Bitfield on register `CANSTMOB`
1424pub const FERR: *mut u8 = 0x2 as *mut u8;
1425
1426/// Bitfield on register `CANSTMOB`
1427pub const DLCW: *mut u8 = 0x80 as *mut u8;
1428
1429/// Bitfield on register `CANSTMOB`
1430pub const BERR: *mut u8 = 0x10 as *mut u8;
1431
1432/// Bitfield on register `CLKPR`
1433pub const CLKPCE: *mut u8 = 0x80 as *mut u8;
1434
1435/// Bitfield on register `CLKPR`
1436pub const CLKPS: *mut u8 = 0xF as *mut u8;
1437
1438/// Bitfield on register `DACON`
1439pub const DALA: *mut u8 = 0x4 as *mut u8;
1440
1441/// Bitfield on register `DACON`
1442pub const DAEN: *mut u8 = 0x1 as *mut u8;
1443
1444/// Bitfield on register `DACON`
1445pub const DAATE: *mut u8 = 0x80 as *mut u8;
1446
1447/// Bitfield on register `DACON`
1448pub const DAOE: *mut u8 = 0x2 as *mut u8;
1449
1450/// Bitfield on register `DACON`
1451pub const DATS: *mut u8 = 0x70 as *mut u8;
1452
1453/// Bitfield on register `DIDR0`
1454pub const ADC6D: *mut u8 = 0x40 as *mut u8;
1455
1456/// Bitfield on register `DIDR0`
1457pub const ADC7D: *mut u8 = 0x80 as *mut u8;
1458
1459/// Bitfield on register `DIDR0`
1460pub const ADC3D: *mut u8 = 0x8 as *mut u8;
1461
1462/// Bitfield on register `DIDR0`
1463pub const ADC4D: *mut u8 = 0x10 as *mut u8;
1464
1465/// Bitfield on register `DIDR0`
1466pub const ADC1D: *mut u8 = 0x2 as *mut u8;
1467
1468/// Bitfield on register `DIDR0`
1469pub const ADC0D: *mut u8 = 0x1 as *mut u8;
1470
1471/// Bitfield on register `DIDR0`
1472pub const ADC2D: *mut u8 = 0x4 as *mut u8;
1473
1474/// Bitfield on register `DIDR0`
1475pub const ADC5D: *mut u8 = 0x20 as *mut u8;
1476
1477/// Bitfield on register `DIDR1`
1478pub const ADC8D: *mut u8 = 0x1 as *mut u8;
1479
1480/// Bitfield on register `DIDR1`
1481pub const AMP0PD: *mut u8 = 0x10 as *mut u8;
1482
1483/// Bitfield on register `DIDR1`
1484pub const AMP2PD: *mut u8 = 0x40 as *mut u8;
1485
1486/// Bitfield on register `DIDR1`
1487pub const ACMP0D: *mut u8 = 0x20 as *mut u8;
1488
1489/// Bitfield on register `DIDR1`
1490pub const ADC10D: *mut u8 = 0x4 as *mut u8;
1491
1492/// Bitfield on register `DIDR1`
1493pub const ADC9D: *mut u8 = 0x2 as *mut u8;
1494
1495/// Bitfield on register `DIDR1`
1496pub const AMP0ND: *mut u8 = 0x8 as *mut u8;
1497
1498/// Bitfield on register `EECR`
1499pub const EERIE: *mut u8 = 0x8 as *mut u8;
1500
1501/// Bitfield on register `EECR`
1502pub const EEMWE: *mut u8 = 0x4 as *mut u8;
1503
1504/// Bitfield on register `EECR`
1505pub const EERE: *mut u8 = 0x1 as *mut u8;
1506
1507/// Bitfield on register `EECR`
1508pub const EEPM: *mut u8 = 0x30 as *mut u8;
1509
1510/// Bitfield on register `EECR`
1511pub const EEWE: *mut u8 = 0x2 as *mut u8;
1512
1513/// Bitfield on register `EICRA`
1514pub const ISC3: *mut u8 = 0xC0 as *mut u8;
1515
1516/// Bitfield on register `EICRA`
1517pub const ISC1: *mut u8 = 0xC as *mut u8;
1518
1519/// Bitfield on register `EICRA`
1520pub const ISC2: *mut u8 = 0x30 as *mut u8;
1521
1522/// Bitfield on register `EICRA`
1523pub const ISC0: *mut u8 = 0x3 as *mut u8;
1524
1525/// Bitfield on register `EIFR`
1526pub const INTF: *mut u8 = 0xF as *mut u8;
1527
1528/// Bitfield on register `EIMSK`
1529pub const INT: *mut u8 = 0xF as *mut u8;
1530
1531/// Bitfield on register `EXTENDED`
1532pub const PSCRVA: *mut u8 = 0x10 as *mut u8;
1533
1534/// Bitfield on register `EXTENDED`
1535pub const PSCRVB: *mut u8 = 0x8 as *mut u8;
1536
1537/// Bitfield on register `EXTENDED`
1538pub const BODLEVEL: *mut u8 = 0x7 as *mut u8;
1539
1540/// Bitfield on register `EXTENDED`
1541pub const PSCRB: *mut u8 = 0x20 as *mut u8;
1542
1543/// Bitfield on register `GPIOR0`
1544pub const GPIOR06: *mut u8 = 0x40 as *mut u8;
1545
1546/// Bitfield on register `GPIOR0`
1547pub const GPIOR00: *mut u8 = 0x1 as *mut u8;
1548
1549/// Bitfield on register `GPIOR0`
1550pub const GPIOR05: *mut u8 = 0x20 as *mut u8;
1551
1552/// Bitfield on register `GPIOR0`
1553pub const GPIOR03: *mut u8 = 0x8 as *mut u8;
1554
1555/// Bitfield on register `GPIOR0`
1556pub const GPIOR07: *mut u8 = 0x80 as *mut u8;
1557
1558/// Bitfield on register `GPIOR0`
1559pub const GPIOR02: *mut u8 = 0x4 as *mut u8;
1560
1561/// Bitfield on register `GPIOR0`
1562pub const GPIOR04: *mut u8 = 0x10 as *mut u8;
1563
1564/// Bitfield on register `GPIOR0`
1565pub const GPIOR01: *mut u8 = 0x2 as *mut u8;
1566
1567/// Bitfield on register `GTCCR`
1568pub const PSRSYNC: *mut u8 = 0x1 as *mut u8;
1569
1570/// Bitfield on register `GTCCR`
1571pub const TSM: *mut u8 = 0x80 as *mut u8;
1572
1573/// Bitfield on register `HIGH`
1574pub const DWEN: *mut u8 = 0x40 as *mut u8;
1575
1576/// Bitfield on register `HIGH`
1577pub const SPIEN: *mut u8 = 0x20 as *mut u8;
1578
1579/// Bitfield on register `HIGH`
1580pub const BOOTSZ: *mut u8 = 0x6 as *mut u8;
1581
1582/// Bitfield on register `HIGH`
1583pub const BOOTRST: *mut u8 = 0x1 as *mut u8;
1584
1585/// Bitfield on register `HIGH`
1586pub const RSTDISBL: *mut u8 = 0x80 as *mut u8;
1587
1588/// Bitfield on register `HIGH`
1589pub const EESAVE: *mut u8 = 0x8 as *mut u8;
1590
1591/// Bitfield on register `HIGH`
1592pub const WDTON: *mut u8 = 0x10 as *mut u8;
1593
1594/// Bitfield on register `LINBRR`
1595pub const LDIV: *mut u16 = 0xFFF as *mut u16;
1596
1597/// Bitfield on register `LINBTR`
1598pub const LBT: *mut u8 = 0x3F as *mut u8;
1599
1600/// Bitfield on register `LINBTR`
1601pub const LDISR: *mut u8 = 0x80 as *mut u8;
1602
1603/// Bitfield on register `LINCR`
1604pub const LCONF: *mut u8 = 0x30 as *mut u8;
1605
1606/// Bitfield on register `LINCR`
1607pub const LSWRES: *mut u8 = 0x80 as *mut u8;
1608
1609/// Bitfield on register `LINCR`
1610pub const LENA: *mut u8 = 0x8 as *mut u8;
1611
1612/// Bitfield on register `LINCR`
1613pub const LIN13: *mut u8 = 0x40 as *mut u8;
1614
1615/// Bitfield on register `LINCR`
1616pub const LCMD: *mut u8 = 0x7 as *mut u8;
1617
1618/// Bitfield on register `LINDLR`
1619pub const LTXDL: *mut u8 = 0xF0 as *mut u8;
1620
1621/// Bitfield on register `LINDLR`
1622pub const LRXDL: *mut u8 = 0xF as *mut u8;
1623
1624/// Bitfield on register `LINENIR`
1625pub const LENTXOK: *mut u8 = 0x2 as *mut u8;
1626
1627/// Bitfield on register `LINENIR`
1628pub const LENRXOK: *mut u8 = 0x1 as *mut u8;
1629
1630/// Bitfield on register `LINENIR`
1631pub const LENIDOK: *mut u8 = 0x4 as *mut u8;
1632
1633/// Bitfield on register `LINENIR`
1634pub const LENERR: *mut u8 = 0x8 as *mut u8;
1635
1636/// Bitfield on register `LINERR`
1637pub const LFERR: *mut u8 = 0x10 as *mut u8;
1638
1639/// Bitfield on register `LINERR`
1640pub const LCERR: *mut u8 = 0x2 as *mut u8;
1641
1642/// Bitfield on register `LINERR`
1643pub const LTOERR: *mut u8 = 0x40 as *mut u8;
1644
1645/// Bitfield on register `LINERR`
1646pub const LBERR: *mut u8 = 0x1 as *mut u8;
1647
1648/// Bitfield on register `LINERR`
1649pub const LSERR: *mut u8 = 0x8 as *mut u8;
1650
1651/// Bitfield on register `LINERR`
1652pub const LABORT: *mut u8 = 0x80 as *mut u8;
1653
1654/// Bitfield on register `LINERR`
1655pub const LOVERR: *mut u8 = 0x20 as *mut u8;
1656
1657/// Bitfield on register `LINERR`
1658pub const LPERR: *mut u8 = 0x4 as *mut u8;
1659
1660/// Bitfield on register `LINIDR`
1661pub const LP: *mut u8 = 0xC0 as *mut u8;
1662
1663/// Bitfield on register `LINIDR`
1664pub const LID: *mut u8 = 0x3F as *mut u8;
1665
1666/// Bitfield on register `LINSEL`
1667pub const LAINC: *mut u8 = 0x8 as *mut u8;
1668
1669/// Bitfield on register `LINSEL`
1670pub const LINDX: *mut u8 = 0x7 as *mut u8;
1671
1672/// Bitfield on register `LINSIR`
1673pub const LBUSY: *mut u8 = 0x10 as *mut u8;
1674
1675/// Bitfield on register `LINSIR`
1676pub const LIDST: *mut u8 = 0xE0 as *mut u8;
1677
1678/// Bitfield on register `LINSIR`
1679pub const LIDOK: *mut u8 = 0x4 as *mut u8;
1680
1681/// Bitfield on register `LINSIR`
1682pub const LERR: *mut u8 = 0x8 as *mut u8;
1683
1684/// Bitfield on register `LINSIR`
1685pub const LRXOK: *mut u8 = 0x1 as *mut u8;
1686
1687/// Bitfield on register `LINSIR`
1688pub const LTXOK: *mut u8 = 0x2 as *mut u8;
1689
1690/// Bitfield on register `LOCKBIT`
1691pub const BLB0: *mut u8 = 0xC as *mut u8;
1692
1693/// Bitfield on register `LOCKBIT`
1694pub const BLB1: *mut u8 = 0x30 as *mut u8;
1695
1696/// Bitfield on register `LOCKBIT`
1697pub const LB: *mut u8 = 0x3 as *mut u8;
1698
1699/// Bitfield on register `LOW`
1700pub const SUT_CKSEL: *mut u8 = 0x3F as *mut u8;
1701
1702/// Bitfield on register `LOW`
1703pub const CKOUT: *mut u8 = 0x40 as *mut u8;
1704
1705/// Bitfield on register `LOW`
1706pub const CKDIV8: *mut u8 = 0x80 as *mut u8;
1707
1708/// Bitfield on register `MCUCR`
1709pub const IVSEL: *mut u8 = 0x2 as *mut u8;
1710
1711/// Bitfield on register `MCUCR`
1712pub const IVCE: *mut u8 = 0x1 as *mut u8;
1713
1714/// Bitfield on register `MCUCR`
1715pub const SPIPS: *mut u8 = 0x80 as *mut u8;
1716
1717/// Bitfield on register `MCUCR`
1718pub const PUD: *mut u8 = 0x10 as *mut u8;
1719
1720/// Bitfield on register `MCUSR`
1721pub const PORF: *mut u8 = 0x1 as *mut u8;
1722
1723/// Bitfield on register `MCUSR`
1724pub const WDRF: *mut u8 = 0x8 as *mut u8;
1725
1726/// Bitfield on register `MCUSR`
1727pub const EXTRF: *mut u8 = 0x2 as *mut u8;
1728
1729/// Bitfield on register `MCUSR`
1730pub const BORF: *mut u8 = 0x4 as *mut u8;
1731
1732/// Bitfield on register `PCICR`
1733pub const PCIE: *mut u8 = 0xF as *mut u8;
1734
1735/// Bitfield on register `PCIFR`
1736pub const PCIF: *mut u8 = 0xF as *mut u8;
1737
1738/// Bitfield on register `PLLCSR`
1739pub const PLLE: *mut u8 = 0x2 as *mut u8;
1740
1741/// Bitfield on register `PLLCSR`
1742pub const PLOCK: *mut u8 = 0x1 as *mut u8;
1743
1744/// Bitfield on register `PLLCSR`
1745pub const PLLF: *mut u8 = 0x4 as *mut u8;
1746
1747/// Bitfield on register `PRR`
1748pub const PRCAN: *mut u8 = 0x40 as *mut u8;
1749
1750/// Bitfield on register `PRR`
1751pub const PRTIM1: *mut u8 = 0x10 as *mut u8;
1752
1753/// Bitfield on register `PRR`
1754pub const PRPSC: *mut u8 = 0x20 as *mut u8;
1755
1756/// Bitfield on register `PRR`
1757pub const PRLIN: *mut u8 = 0x2 as *mut u8;
1758
1759/// Bitfield on register `PRR`
1760pub const PRSPI: *mut u8 = 0x4 as *mut u8;
1761
1762/// Bitfield on register `PRR`
1763pub const PRADC: *mut u8 = 0x1 as *mut u8;
1764
1765/// Bitfield on register `PRR`
1766pub const PRTIM0: *mut u8 = 0x8 as *mut u8;
1767
1768/// Bitfield on register `SMCR`
1769pub const SM: *mut u8 = 0xE as *mut u8;
1770
1771/// Bitfield on register `SMCR`
1772pub const SE: *mut u8 = 0x1 as *mut u8;
1773
1774/// Bitfield on register `SPCR`
1775pub const CPOL: *mut u8 = 0x8 as *mut u8;
1776
1777/// Bitfield on register `SPCR`
1778pub const SPE: *mut u8 = 0x40 as *mut u8;
1779
1780/// Bitfield on register `SPCR`
1781pub const SPR: *mut u8 = 0x3 as *mut u8;
1782
1783/// Bitfield on register `SPCR`
1784pub const DORD: *mut u8 = 0x20 as *mut u8;
1785
1786/// Bitfield on register `SPCR`
1787pub const MSTR: *mut u8 = 0x10 as *mut u8;
1788
1789/// Bitfield on register `SPCR`
1790pub const CPHA: *mut u8 = 0x4 as *mut u8;
1791
1792/// Bitfield on register `SPCR`
1793pub const SPIE: *mut u8 = 0x80 as *mut u8;
1794
1795/// Bitfield on register `SPMCSR`
1796pub const PGWRT: *mut u8 = 0x4 as *mut u8;
1797
1798/// Bitfield on register `SPMCSR`
1799pub const PGERS: *mut u8 = 0x2 as *mut u8;
1800
1801/// Bitfield on register `SPMCSR`
1802pub const SIGRD: *mut u8 = 0x20 as *mut u8;
1803
1804/// Bitfield on register `SPMCSR`
1805pub const BLBSET: *mut u8 = 0x8 as *mut u8;
1806
1807/// Bitfield on register `SPMCSR`
1808pub const RWWSRE: *mut u8 = 0x10 as *mut u8;
1809
1810/// Bitfield on register `SPMCSR`
1811pub const SPMEN: *mut u8 = 0x1 as *mut u8;
1812
1813/// Bitfield on register `SPMCSR`
1814pub const RWWSB: *mut u8 = 0x40 as *mut u8;
1815
1816/// Bitfield on register `SPMCSR`
1817pub const SPMIE: *mut u8 = 0x80 as *mut u8;
1818
1819/// Bitfield on register `SPSR`
1820pub const WCOL: *mut u8 = 0x40 as *mut u8;
1821
1822/// Bitfield on register `SPSR`
1823pub const SPIF: *mut u8 = 0x80 as *mut u8;
1824
1825/// Bitfield on register `SPSR`
1826pub const SPI2X: *mut u8 = 0x1 as *mut u8;
1827
1828/// Bitfield on register `SREG`
1829pub const N: *mut u8 = 0x4 as *mut u8;
1830
1831/// Bitfield on register `SREG`
1832pub const Z: *mut u8 = 0x2 as *mut u8;
1833
1834/// Bitfield on register `SREG`
1835pub const V: *mut u8 = 0x8 as *mut u8;
1836
1837/// Bitfield on register `SREG`
1838pub const C: *mut u8 = 0x1 as *mut u8;
1839
1840/// Bitfield on register `SREG`
1841pub const I: *mut u8 = 0x80 as *mut u8;
1842
1843/// Bitfield on register `SREG`
1844pub const T: *mut u8 = 0x40 as *mut u8;
1845
1846/// Bitfield on register `SREG`
1847pub const S: *mut u8 = 0x10 as *mut u8;
1848
1849/// Bitfield on register `SREG`
1850pub const H: *mut u8 = 0x20 as *mut u8;
1851
1852/// Bitfield on register `TCCR0A`
1853pub const COM0B: *mut u8 = 0x30 as *mut u8;
1854
1855/// Bitfield on register `TCCR0A`
1856pub const COM0A: *mut u8 = 0xC0 as *mut u8;
1857
1858/// Bitfield on register `TCCR0A`
1859pub const WGM0: *mut u8 = 0x3 as *mut u8;
1860
1861/// Bitfield on register `TCCR0B`
1862pub const FOC0B: *mut u8 = 0x40 as *mut u8;
1863
1864/// Bitfield on register `TCCR0B`
1865pub const CS0: *mut u8 = 0x7 as *mut u8;
1866
1867/// Bitfield on register `TCCR0B`
1868pub const FOC0A: *mut u8 = 0x80 as *mut u8;
1869
1870/// Bitfield on register `TCCR0B`
1871pub const WGM02: *mut u8 = 0x8 as *mut u8;
1872
1873/// Bitfield on register `TCCR1A`
1874pub const COM1B: *mut u8 = 0x30 as *mut u8;
1875
1876/// Bitfield on register `TCCR1A`
1877pub const COM1A: *mut u8 = 0xC0 as *mut u8;
1878
1879/// Bitfield on register `TCCR1B`
1880pub const ICNC1: *mut u8 = 0x80 as *mut u8;
1881
1882/// Bitfield on register `TCCR1B`
1883pub const CS1: *mut u8 = 0x7 as *mut u8;
1884
1885/// Bitfield on register `TCCR1B`
1886pub const ICES1: *mut u8 = 0x40 as *mut u8;
1887
1888/// Bitfield on register `TCCR1C`
1889pub const FOC1B: *mut u8 = 0x40 as *mut u8;
1890
1891/// Bitfield on register `TCCR1C`
1892pub const FOC1A: *mut u8 = 0x80 as *mut u8;
1893
1894/// Bitfield on register `TIFR0`
1895pub const TOV0: *mut u8 = 0x1 as *mut u8;
1896
1897/// Bitfield on register `TIFR0`
1898pub const OCF0B: *mut u8 = 0x4 as *mut u8;
1899
1900/// Bitfield on register `TIFR0`
1901pub const OCF0A: *mut u8 = 0x2 as *mut u8;
1902
1903/// Bitfield on register `TIFR1`
1904pub const OCF1B: *mut u8 = 0x4 as *mut u8;
1905
1906/// Bitfield on register `TIFR1`
1907pub const ICF1: *mut u8 = 0x20 as *mut u8;
1908
1909/// Bitfield on register `TIFR1`
1910pub const TOV1: *mut u8 = 0x1 as *mut u8;
1911
1912/// Bitfield on register `TIFR1`
1913pub const OCF1A: *mut u8 = 0x2 as *mut u8;
1914
1915/// Bitfield on register `TIMSK0`
1916pub const OCIE0A: *mut u8 = 0x2 as *mut u8;
1917
1918/// Bitfield on register `TIMSK0`
1919pub const OCIE0B: *mut u8 = 0x4 as *mut u8;
1920
1921/// Bitfield on register `TIMSK0`
1922pub const TOIE0: *mut u8 = 0x1 as *mut u8;
1923
1924/// Bitfield on register `TIMSK1`
1925pub const OCIE1B: *mut u8 = 0x4 as *mut u8;
1926
1927/// Bitfield on register `TIMSK1`
1928pub const ICIE1: *mut u8 = 0x20 as *mut u8;
1929
1930/// Bitfield on register `TIMSK1`
1931pub const OCIE1A: *mut u8 = 0x2 as *mut u8;
1932
1933/// Bitfield on register `TIMSK1`
1934pub const TOIE1: *mut u8 = 0x1 as *mut u8;
1935
1936/// Bitfield on register `WDTCSR`
1937pub const WDIF: *mut u8 = 0x80 as *mut u8;
1938
1939/// Bitfield on register `WDTCSR`
1940pub const WDCE: *mut u8 = 0x10 as *mut u8;
1941
1942/// Bitfield on register `WDTCSR`
1943pub const WDE: *mut u8 = 0x8 as *mut u8;
1944
1945/// Bitfield on register `WDTCSR`
1946pub const WDP: *mut u8 = 0x27 as *mut u8;
1947
1948/// Bitfield on register `WDTCSR`
1949pub const WDIE: *mut u8 = 0x40 as *mut u8;
1950
1951/// `ANALOG_ADC_AUTO_TRIGGER_4BITS` value group
1952#[allow(non_upper_case_globals)]
1953pub mod analog_adc_auto_trigger_4bits {
1954 /// Free Running mode.
1955 pub const VAL_0x00: u32 = 0x0;
1956 /// Analog Comparator.
1957 pub const VAL_0x01: u32 = 0x1;
1958 /// External Interrupt Request 0.
1959 pub const VAL_0x02: u32 = 0x2;
1960 /// Timer/Counter0 Compare Match A.
1961 pub const VAL_0x03: u32 = 0x3;
1962 /// Timer/Counter0 Overflow.
1963 pub const VAL_0x04: u32 = 0x4;
1964 /// Timer/Counter1 Compare Match B.
1965 pub const VAL_0x05: u32 = 0x5;
1966 /// Timer/Counter1 Overflow.
1967 pub const VAL_0x06: u32 = 0x6;
1968 /// Timer/Counter1 Capture Event.
1969 pub const VAL_0x07: u32 = 0x7;
1970 /// PSC0ASY Event.
1971 pub const VAL_0x08: u32 = 0x8;
1972 /// PSC1ASY Event.
1973 pub const VAL_0x09: u32 = 0x9;
1974 /// PSC2ASY Event.
1975 pub const VAL_0x0A: u32 = 0xA;
1976 /// Analog comparator 1.
1977 pub const VAL_0x0B: u32 = 0xB;
1978 /// Analog comparator 2.
1979 pub const VAL_0x0C: u32 = 0xC;
1980}
1981
1982/// Analog Channel Selection Bits select
1983#[allow(non_upper_case_globals)]
1984pub mod analog_adc_muxpos {
1985 /// ADC input pin 0.
1986 pub const ADC0: u32 = 0x0;
1987 /// ADC input pin 1.
1988 pub const ADC1: u32 = 0x1;
1989 /// ADC input pin 2.
1990 pub const ADC2: u32 = 0x2;
1991 /// ADC input pin 3.
1992 pub const ADC3: u32 = 0x3;
1993 /// ADC input pin 4.
1994 pub const ADC4: u32 = 0x4;
1995 /// ADC input pin 5.
1996 pub const ADC5: u32 = 0x5;
1997 /// ADC input pin 6.
1998 pub const ADC6: u32 = 0x6;
1999 /// ADC input pin 7.
2000 pub const ADC7: u32 = 0x7;
2001 /// ADC input pin 8.
2002 pub const ADC8: u32 = 0x8;
2003 /// ADC input pin 9.
2004 pub const ADC9: u32 = 0x9;
2005 /// ADC input pin 10.
2006 pub const ADC10: u32 = 0xA;
2007 /// Temperature sensor.
2008 pub const TEMPSENSE: u32 = 0xB;
2009 /// Internal VCC / 4.
2010 pub const VCC4: u32 = 0xC;
2011 /// Current source.
2012 pub const ISRC: u32 = 0xD;
2013 /// Analog Differential Amplifier 0.
2014 pub const AMP0: u32 = 0xE;
2015 /// Analog Differential Amplifier 1.
2016 pub const AMP1: u32 = 0xF;
2017 /// Analog Differential Amplifier 2.
2018 pub const AMP2: u32 = 0x10;
2019 /// Bandgap.
2020 pub const BNDGAP: u32 = 0x11;
2021 /// 0V (GND).
2022 pub const GND: u32 = 0x12;
2023}
2024
2025/// `ANALOG_ADC_V_REF2` value group
2026#[allow(non_upper_case_globals)]
2027pub mod analog_adc_v_ref2 {
2028 /// AREF, Internal Vref turned off.
2029 pub const VAL_0x00: u32 = 0x0;
2030 /// AVCC reference.
2031 pub const VAL_0x01: u32 = 0x1;
2032 /// Reserved.
2033 pub const VAL_0x02: u32 = 0x2;
2034 /// Internal 2.56V Voltage Reference.
2035 pub const VAL_0x03: u32 = 0x3;
2036}
2037
2038/// `ANALOG_COMP_INTERRUPT` value group
2039#[allow(non_upper_case_globals)]
2040pub mod analog_comp_interrupt {
2041 /// Interrupt on Toggle.
2042 pub const VAL_0x00: u32 = 0x0;
2043 /// Reserved.
2044 pub const VAL_0x01: u32 = 0x1;
2045 /// Interrupt on Falling Edge.
2046 pub const VAL_0x02: u32 = 0x2;
2047 /// Interrupt on Rising Edge.
2048 pub const VAL_0x03: u32 = 0x3;
2049}
2050
2051/// `ANALOG_DAC_AUTO_TRIGGER` value group
2052#[allow(non_upper_case_globals)]
2053pub mod analog_dac_auto_trigger {
2054 /// Analog Comparator 0.
2055 pub const VAL_0x00: u32 = 0x0;
2056 /// Analog Comparator 1.
2057 pub const VAL_0x01: u32 = 0x1;
2058 /// External Interrupt Request 0.
2059 pub const VAL_0x02: u32 = 0x2;
2060 /// Timer/Counter0 Compare Match A.
2061 pub const VAL_0x03: u32 = 0x3;
2062 /// Timer/Counter0 Overflow.
2063 pub const VAL_0x04: u32 = 0x4;
2064 /// Timer/Counter1 Compare Match B.
2065 pub const VAL_0x05: u32 = 0x5;
2066 /// Timer/Counter1 Overflow.
2067 pub const VAL_0x06: u32 = 0x6;
2068 /// Timer/Counter1 Capture Event.
2069 pub const VAL_0x07: u32 = 0x7;
2070}
2071
2072/// `CLK_SEL_3BIT_EXT` value group
2073#[allow(non_upper_case_globals)]
2074pub mod clk_sel_3bit_ext {
2075 /// No Clock Source (Stopped).
2076 pub const VAL_0x00: u32 = 0x0;
2077 /// Running, No Prescaling.
2078 pub const VAL_0x01: u32 = 0x1;
2079 /// Running, CLK/8.
2080 pub const VAL_0x02: u32 = 0x2;
2081 /// Running, CLK/64.
2082 pub const VAL_0x03: u32 = 0x3;
2083 /// Running, CLK/256.
2084 pub const VAL_0x04: u32 = 0x4;
2085 /// Running, CLK/1024.
2086 pub const VAL_0x05: u32 = 0x5;
2087 /// Running, ExtClk Tx Falling Edge.
2088 pub const VAL_0x06: u32 = 0x6;
2089 /// Running, ExtClk Tx Rising Edge.
2090 pub const VAL_0x07: u32 = 0x7;
2091}
2092
2093/// `COMM_SCK_RATE_3BIT` value group
2094#[allow(non_upper_case_globals)]
2095pub mod comm_sck_rate_3bit {
2096 /// fosc/4.
2097 pub const VAL_0x00: u32 = 0x0;
2098 /// fosc/16.
2099 pub const VAL_0x01: u32 = 0x1;
2100 /// fosc/64.
2101 pub const VAL_0x02: u32 = 0x2;
2102 /// fosc/128.
2103 pub const VAL_0x03: u32 = 0x3;
2104 /// fosc/2.
2105 pub const VAL_0x04: u32 = 0x4;
2106 /// fosc/8.
2107 pub const VAL_0x05: u32 = 0x5;
2108 /// fosc/32.
2109 pub const VAL_0x06: u32 = 0x6;
2110 /// fosc/64.
2111 pub const VAL_0x07: u32 = 0x7;
2112}
2113
2114/// `CPU_CLK_PRESCALE_4_BITS_SMALL` value group
2115#[allow(non_upper_case_globals)]
2116pub mod cpu_clk_prescale_4_bits_small {
2117 /// 1.
2118 pub const VAL_0x00: u32 = 0x0;
2119 /// 2.
2120 pub const VAL_0x01: u32 = 0x1;
2121 /// 4.
2122 pub const VAL_0x02: u32 = 0x2;
2123 /// 8.
2124 pub const VAL_0x03: u32 = 0x3;
2125 /// 16.
2126 pub const VAL_0x04: u32 = 0x4;
2127 /// 32.
2128 pub const VAL_0x05: u32 = 0x5;
2129 /// 64.
2130 pub const VAL_0x06: u32 = 0x6;
2131 /// 128.
2132 pub const VAL_0x07: u32 = 0x7;
2133 /// 256.
2134 pub const VAL_0x08: u32 = 0x8;
2135}
2136
2137/// `CPU_SLEEP_MODE_3BITS4` value group
2138#[allow(non_upper_case_globals)]
2139pub mod cpu_sleep_mode_3bits4 {
2140 /// Idle.
2141 pub const IDLE: u32 = 0x0;
2142 /// ADC Noise Reduction (If Available).
2143 pub const ADC: u32 = 0x1;
2144 /// Power Down.
2145 pub const PDOWN: u32 = 0x2;
2146 /// Reserved.
2147 pub const VAL_0x03: u32 = 0x3;
2148 /// Reserved.
2149 pub const VAL_0x04: u32 = 0x4;
2150 /// Reserved.
2151 pub const VAL_0x05: u32 = 0x5;
2152 /// Standby.
2153 pub const STDBY: u32 = 0x6;
2154 /// Reserved.
2155 pub const VAL_0x07: u32 = 0x7;
2156}
2157
2158/// `EEP_MODE` value group
2159#[allow(non_upper_case_globals)]
2160pub mod eep_mode {
2161 /// Erase and Write in one operation.
2162 pub const VAL_0x00: u32 = 0x0;
2163 /// Erase Only.
2164 pub const VAL_0x01: u32 = 0x1;
2165 /// Write Only.
2166 pub const VAL_0x02: u32 = 0x2;
2167}
2168
2169/// `ENUM_BLB` value group
2170#[allow(non_upper_case_globals)]
2171pub mod enum_blb {
2172 /// LPM and SPM prohibited in Application Section.
2173 pub const LPM_SPM_DISABLE: u32 = 0x0;
2174 /// LPM prohibited in Application Section.
2175 pub const LPM_DISABLE: u32 = 0x1;
2176 /// SPM prohibited in Application Section.
2177 pub const SPM_DISABLE: u32 = 0x2;
2178 /// No lock on SPM and LPM in Application Section.
2179 pub const NO_LOCK: u32 = 0x3;
2180}
2181
2182/// `ENUM_BLB2` value group
2183#[allow(non_upper_case_globals)]
2184pub mod enum_blb2 {
2185 /// LPM and SPM prohibited in Boot Section.
2186 pub const LPM_SPM_DISABLE: u32 = 0x0;
2187 /// LPM prohibited in Boot Section.
2188 pub const LPM_DISABLE: u32 = 0x1;
2189 /// SPM prohibited in Boot Section.
2190 pub const SPM_DISABLE: u32 = 0x2;
2191 /// No lock on SPM and LPM in Boot Section.
2192 pub const NO_LOCK: u32 = 0x3;
2193}
2194
2195/// `ENUM_BODLEVEL` value group
2196#[allow(non_upper_case_globals)]
2197pub mod enum_bodlevel {
2198 /// Brown-out detection disabled.
2199 pub const DISABLED: u32 = 0x7;
2200 /// Brown-out detection at VCC=4.5 V.
2201 pub const _4V5: u32 = 0x6;
2202 /// Brown-out detection at VCC=2.7 V.
2203 pub const _2V7: u32 = 0x5;
2204 /// Brown-out detection at VCC=4.3 V.
2205 pub const _4V3: u32 = 0x4;
2206 /// Brown-out detection at VCC=4.4 V.
2207 pub const _4V4: u32 = 0x3;
2208 /// Brown-out detection at VCC=4.2 V.
2209 pub const _4V2: u32 = 0x2;
2210 /// Brown-out detection at VCC=2.8 V.
2211 pub const _2V8: u32 = 0x1;
2212 /// Brown-out detection at VCC=2.6 V.
2213 pub const _2V6: u32 = 0x0;
2214}
2215
2216/// `ENUM_BOOTSZ` value group
2217#[allow(non_upper_case_globals)]
2218pub mod enum_bootsz {
2219 /// Boot Flash size=256 words Boot address=$3F00.
2220 pub const _256W_3F00: u32 = 0x3;
2221 /// Boot Flash size=512 words Boot address=$3E00.
2222 pub const _512W_3E00: u32 = 0x2;
2223 /// Boot Flash size=1024 words Boot address=$3C00.
2224 pub const _1024W_3C00: u32 = 0x1;
2225 /// Boot Flash size=2048 words Boot address=$3800.
2226 pub const _2048W_3800: u32 = 0x0;
2227}
2228
2229/// `ENUM_LB` value group
2230#[allow(non_upper_case_globals)]
2231pub mod enum_lb {
2232 /// Further programming and verification disabled.
2233 pub const PROG_VER_DISABLED: u32 = 0x0;
2234 /// Further programming disabled.
2235 pub const PROG_DISABLED: u32 = 0x2;
2236 /// No memory lock features enabled.
2237 pub const NO_LOCK: u32 = 0x3;
2238}
2239
2240/// `ENUM_SUT_CKSEL` value group
2241#[allow(non_upper_case_globals)]
2242pub mod enum_sut_cksel {
2243 /// Ext. Clock; Start-up time PWRDWN/RESET: 6 CK/14 CK + 0 ms.
2244 pub const EXTCLK_6CK_14CK_0MS: u32 = 0x0;
2245 /// Ext. Clock; Start-up time PWRDWN/RESET: 6 CK/14 CK + 4.1 ms.
2246 pub const EXTCLK_6CK_14CK_4MS1: u32 = 0x10;
2247 /// Ext. Clock; Start-up time PWRDWN/RESET: 6 CK/14 CK + 65 ms.
2248 pub const EXTCLK_6CK_14CK_65MS: u32 = 0x20;
2249 /// Int. RC Osc. 8 MHz; Start-up time PWRDWN/RESET: 6 CK/14 CK + 0 ms.
2250 pub const INTRCOSC_8MHZ_6CK_14CK_0MS: u32 = 0x2;
2251 /// Int. RC Osc. 8 MHz; Start-up time PWRDWN/RESET: 6 CK/14 CK + 4.1 ms.
2252 pub const INTRCOSC_8MHZ_6CK_14CK_4MS1: u32 = 0x12;
2253 /// Int. RC Osc. 8 MHz; Start-up time PWRDWN/RESET: 6 CK/14 CK + 65 ms.
2254 pub const INTRCOSC_8MHZ_6CK_14CK_65MS: u32 = 0x22;
2255 /// Ext. Crystal Osc. 0.4-0.9 MHz; Start-up time PWRDWN/RESET: 258 CK/14 CK + 4.1 ms.
2256 pub const EXTXOSC_0MHZ4_0MHZ9_258CK_14CK_4MS1: u32 = 0x8;
2257 /// Ext. Crystal Osc. 0.4-0.9 MHz; Start-up time PWRDWN/RESET: 258 CK/14 CK + 65 ms.
2258 pub const EXTXOSC_0MHZ4_0MHZ9_258CK_14CK_65MS: u32 = 0x18;
2259 /// Ext. Crystal Osc. 0.4-0.9 MHz; Start-up time PWRDWN/RESET: 1K CK /14 CK + 0 ms.
2260 pub const EXTXOSC_0MHZ4_0MHZ9_1KCK_14CK_0MS: u32 = 0x28;
2261 /// Ext. Crystal Osc. 0.4-0.9 MHz; Start-up time PWRDWN/RESET: 1K CK /14 CK + 4.1 ms.
2262 pub const EXTXOSC_0MHZ4_0MHZ9_1KCK_14CK_4MS1: u32 = 0x38;
2263 /// Ext. Crystal Osc. 0.4-0.9 MHz; Start-up time PWRDWN/RESET: 1K CK /14 CK + 65 ms.
2264 pub const EXTXOSC_0MHZ4_0MHZ9_1KCK_14CK_65MS: u32 = 0x9;
2265 /// Ext. Crystal Osc. 0.4-0.9 MHz; Start-up time PWRDWN/RESET: 16K CK/14 CK + 0 ms.
2266 pub const EXTXOSC_0MHZ4_0MHZ9_16KCK_14CK_0MS: u32 = 0x19;
2267 /// Ext. Crystal Osc. 0.4-0.9 MHz; Start-up time PWRDWN/RESET: 16K CK/14 CK + 4.1 ms.
2268 pub const EXTXOSC_0MHZ4_0MHZ9_16KCK_14CK_4MS1: u32 = 0x29;
2269 /// Ext. Crystal Osc. 0.4-0.9 MHz; Start-up time PWRDWN/RESET: 16K CK/14 CK + 65 ms.
2270 pub const EXTXOSC_0MHZ4_0MHZ9_16KCK_14CK_65MS: u32 = 0x39;
2271 /// Ext. Crystal Osc. 0.9-3.0 MHz; Start-up time PWRDWN/RESET: 258 CK/14 CK + 4.1 ms.
2272 pub const EXTXOSC_0MHZ9_3MHZ_258CK_14CK_4MS1: u32 = 0xA;
2273 /// Ext. Crystal Osc. 0.9-3.0 MHz; Start-up time PWRDWN/RESET: 258 CK/14 CK + 65 ms.
2274 pub const EXTXOSC_0MHZ9_3MHZ_258CK_14CK_65MS: u32 = 0x1A;
2275 /// Ext. Crystal Osc. 0.9-3.0 MHz; Start-up time PWRDWN/RESET: 1K CK /14 CK + 0 ms.
2276 pub const EXTXOSC_0MHZ9_3MHZ_1KCK_14CK_0MS: u32 = 0x2A;
2277 /// Ext. Crystal Osc. 0.9-3.0 MHz; Start-up time PWRDWN/RESET: 1K CK /14 CK + 4.1 ms.
2278 pub const EXTXOSC_0MHZ9_3MHZ_1KCK_14CK_4MS1: u32 = 0x3A;
2279 /// Ext. Crystal Osc. 0.9-3.0 MHz; Start-up time PWRDWN/RESET: 1K CK /14 CK + 65 ms.
2280 pub const EXTXOSC_0MHZ9_3MHZ_1KCK_14CK_65MS: u32 = 0xB;
2281 /// Ext. Crystal Osc. 0.9-3.0 MHz; Start-up time PWRDWN/RESET: 16K CK/14 CK + 0 ms.
2282 pub const EXTXOSC_0MHZ9_3MHZ_16KCK_14CK_0MS: u32 = 0x1B;
2283 /// Ext. Crystal Osc. 0.9-3.0 MHz; Start-up time PWRDWN/RESET: 16K CK/14 CK + 4.1 ms.
2284 pub const EXTXOSC_0MHZ9_3MHZ_16KCK_14CK_4MS1: u32 = 0x2B;
2285 /// Ext. Crystal Osc. 0.9-3.0 MHz; Start-up time PWRDWN/RESET: 16K CK/14 CK + 65 ms.
2286 pub const EXTXOSC_0MHZ9_3MHZ_16KCK_14CK_65MS: u32 = 0x3B;
2287 /// Ext. Crystal Osc. 3.0-8.0 MHz; Start-up time PWRDWN/RESET: 258 CK/14 CK + 4.1 ms.
2288 pub const EXTXOSC_3MHZ_8MHZ_258CK_14CK_4MS1: u32 = 0xC;
2289 /// Ext. Crystal Osc. 3.0-8.0 MHz; Start-up time PWRDWN/RESET: 258 CK/14 CK + 65 ms.
2290 pub const EXTXOSC_3MHZ_8MHZ_258CK_14CK_65MS: u32 = 0x1C;
2291 /// Ext. Crystal Osc. 3.0-8.0 MHz; Start-up time PWRDWN/RESET: 1K CK /14 CK + 0 ms.
2292 pub const EXTXOSC_3MHZ_8MHZ_1KCK_14CK_0MS: u32 = 0x2C;
2293 /// Ext. Crystal Osc. 3.0-8.0 MHz; Start-up time PWRDWN/RESET: 1K CK /14 CK + 4.1 ms.
2294 pub const EXTXOSC_3MHZ_8MHZ_1KCK_14CK_4MS1: u32 = 0x3C;
2295 /// Ext. Crystal Osc. 3.0-8.0 MHz; Start-up time PWRDWN/RESET: 1K CK /14 CK + 65 ms.
2296 pub const EXTXOSC_3MHZ_8MHZ_1KCK_14CK_65MS: u32 = 0xD;
2297 /// Ext. Crystal Osc. 3.0-8.0 MHz; Start-up time PWRDWN/RESET: 16K CK/14 CK + 0 ms.
2298 pub const EXTXOSC_3MHZ_8MHZ_16KCK_14CK_0MS: u32 = 0x1D;
2299 /// Ext. Crystal Osc. 3.0-8.0 MHz; Start-up time PWRDWN/RESET: 16K CK/14 CK + 4.1 ms.
2300 pub const EXTXOSC_3MHZ_8MHZ_16KCK_14CK_4MS1: u32 = 0x2D;
2301 /// Ext. Crystal Osc. 3.0-8.0 MHz; Start-up time PWRDWN/RESET: 16K CK/14 CK + 65 ms.
2302 pub const EXTXOSC_3MHZ_8MHZ_16KCK_14CK_65MS: u32 = 0x3D;
2303 /// Ext. Crystal Osc. 8.0- MHz; Start-up time PWRDWN/RESET: 258 CK/14 CK + 4.1 ms.
2304 pub const EXTXOSC_8MHZ_XX_258CK_14CK_4MS1: u32 = 0xE;
2305 /// Ext. Crystal Osc. 8.0- MHz; Start-up time PWRDWN/RESET: 258 CK/14 CK + 65 ms.
2306 pub const EXTXOSC_8MHZ_XX_258CK_14CK_65MS: u32 = 0x1E;
2307 /// Ext. Crystal Osc. 8.0- MHz; Start-up time PWRDWN/RESET: 1K CK /14 CK + 0 ms.
2308 pub const EXTXOSC_8MHZ_XX_1KCK_14CK_0MS: u32 = 0x2E;
2309 /// Ext. Crystal Osc. 8.0- MHz; Start-up time PWRDWN/RESET: 1K CK /14 CK + 4.1 ms.
2310 pub const EXTXOSC_8MHZ_XX_1KCK_14CK_4MS1: u32 = 0x3E;
2311 /// Ext. Crystal Osc. 8.0- MHz; Start-up time PWRDWN/RESET: 1K CK /14 CK + 65 ms.
2312 pub const EXTXOSC_8MHZ_XX_1KCK_14CK_65MS: u32 = 0xF;
2313 /// Ext. Crystal Osc. 8.0- MHz; Start-up time PWRDWN/RESET: 16K CK/14 CK + 0 ms.
2314 pub const EXTXOSC_8MHZ_XX_16KCK_14CK_0MS: u32 = 0x1F;
2315 /// Ext. Crystal Osc. 8.0- MHz; Start-up time PWRDWN/RESET: 16K CK/14 CK + 4.1 ms.
2316 pub const EXTXOSC_8MHZ_XX_16KCK_14CK_4MS1: u32 = 0x2F;
2317 /// Ext. Crystal Osc. 8.0- MHz; Start-up time PWRDWN/RESET: 16K CK/14 CK + 65 ms.
2318 pub const EXTXOSC_8MHZ_XX_16KCK_14CK_65MS: u32 = 0x3F;
2319 /// PLL clock 16 MHz; Start-up time PWRDWN/RESET: 1K CK/14 CK + 0 ms.
2320 pub const PLLCLK_16MHZ_1KCK_14CK_0MS: u32 = 0x3;
2321 /// PLL clock 16 MHz; Start-up time PWRDWN/RESET: 1K CK/14 CK + 4.1 ms.
2322 pub const PLLCLK_16MHZ_1KCK_14CK_4MS1: u32 = 0x13;
2323 /// PLL clock 16 MHz; Start-up time PWRDWN/RESET: 1K CK/14 CK + 65 ms.
2324 pub const PLLCLK_16MHZ_1KCK_14CK_65MS: u32 = 0x23;
2325 /// PLL clock 16 MHz; Start-up time PWRDWN/RESET: 16K CK/14 CK + 0 ms.
2326 pub const PLLCLK_16MHZ_16KCK_14CK_0MS: u32 = 0x33;
2327 /// PLL clock /4; PLL input: Ext. Clock; Start-up time PWRDWN/RESET: 6K CK/14 CK + 0 ms.
2328 pub const PLLCLK_PLLIN_EXTCLK_6KCK_14CK_0MS: u32 = 0x1;
2329 /// PLL clock /4; PLL input: Ext. Clock; Start-up time PWRDWN/RESET: 6K CK/14 CK + 4 ms.
2330 pub const PLLCLK_PLLIN_EXTCLK_6KCK_14CK_4MS: u32 = 0x11;
2331 /// PLL clock /4; PLL input: Ext. Clock; Start-up time PWRDWN/RESET: 6K CK/14 CK + 64 ms.
2332 pub const PLLCLK_PLLIN_EXTCLK_6KCK_14CK_64MS: u32 = 0x21;
2333 /// PLL clock /4; PLL input: Ext. Crystal Osc.; Start-up time PWRDWN/RESET: 1K CK/14 CK + 0 ms.
2334 pub const PLLCLK_PLLIN_EXTXOSC_1KCK_14CK_0MS: u32 = 0x5;
2335 /// PLL clock /4; PLL input: Ext. Crystal Osc.; Start-up time PWRDWN/RESET: 1K CK/14 CK + 4 ms.
2336 pub const PLLCLK_PLLIN_EXTXOSC_1KCK_14CK_4MS: u32 = 0x15;
2337 /// PLL clock /4; PLL input: Ext. Crystal Osc.; Start-up time PWRDWN/RESET: 16K CK/14 CK + 4 ms.
2338 pub const PLLCLK_PLLIN_EXTXOSC_16KCK_14CK_4MS: u32 = 0x25;
2339 /// PLL clock /4; PLL input: Ext. Crystal Osc.; Start-up time PWRDWN/RESET: 16K CK/14 CK + 64 ms.
2340 pub const PLLCLK_PLLIN_EXTXOSC_16KCK_14CK_64MS: u32 = 0x35;
2341 /// Ext. Crystal Osc.; PLL input: Ext. Crystal Osc.; Start-up time PWRDWN/RESET: 1K CK/14 CK + 0 ms.
2342 pub const EXTXOSC_PLLIN_EXTXOSC_1KCK_14CK_0MS: u32 = 0x4;
2343 /// Ext. Crystal Osc.; PLL input: Ext. Crystal Osc.; Start-up time PWRDWN/RESET: 1K CK/14 CK + 4 ms.
2344 pub const EXTXOSC_PLLIN_EXTXOSC_1KCK_14CK_4MS: u32 = 0x14;
2345 /// Ext. Crystal Osc.; PLL input: Ext. Crystal Osc.; Start-up time PWRDWN/RESET: 16K CK/14 CK + 4 ms.
2346 pub const EXTXOSC_PLLIN_EXTXOSC_16KCK_14CK_4MS: u32 = 0x24;
2347 /// Ext. Crystal Osc.; PLL input: Ext. Crystal Osc.; Start-up time PWRDWN/RESET: 16K CK/14 CK + 64 ms.
2348 pub const EXTXOSC_PLLIN_EXTXOSC_16KCK_14CK_64MS: u32 = 0x34;
2349}
2350
2351/// Interrupt Sense Control
2352#[allow(non_upper_case_globals)]
2353pub mod interrupt_sense_control {
2354 /// Low Level of INTX.
2355 pub const VAL_0x00: u32 = 0x0;
2356 /// Any Logical Change of INTX.
2357 pub const VAL_0x01: u32 = 0x1;
2358 /// Falling Edge of INTX.
2359 pub const VAL_0x02: u32 = 0x2;
2360 /// Rising Edge of INTX.
2361 pub const VAL_0x03: u32 = 0x3;
2362}
2363
2364/// Oscillator Calibration Values
2365#[allow(non_upper_case_globals)]
2366pub mod osccal_value_addresses {
2367 /// 8.0 MHz.
2368 pub const _8_0_MHz: u32 = 0x0;
2369}
2370
2371/// `WDOG_TIMER_PRESCALE_4BITS` value group
2372#[allow(non_upper_case_globals)]
2373pub mod wdog_timer_prescale_4bits {
2374 /// Oscillator Cycles 2K.
2375 pub const VAL_0x00: u32 = 0x0;
2376 /// Oscillator Cycles 4K.
2377 pub const VAL_0x01: u32 = 0x1;
2378 /// Oscillator Cycles 8K.
2379 pub const VAL_0x02: u32 = 0x2;
2380 /// Oscillator Cycles 16K.
2381 pub const VAL_0x03: u32 = 0x3;
2382 /// Oscillator Cycles 32K.
2383 pub const VAL_0x04: u32 = 0x4;
2384 /// Oscillator Cycles 64K.
2385 pub const VAL_0x05: u32 = 0x5;
2386 /// Oscillator Cycles 128K.
2387 pub const VAL_0x06: u32 = 0x6;
2388 /// Oscillator Cycles 256K.
2389 pub const VAL_0x07: u32 = 0x7;
2390 /// Oscillator Cycles 512K.
2391 pub const VAL_0x08: u32 = 0x8;
2392 /// Oscillator Cycles 1024K.
2393 pub const VAL_0x09: u32 = 0x9;
2394}
2395