1#[doc = r"Register block"]
2#[repr(C)]
3pub struct RegisterBlock {
4 #[doc = "0x00 - A/D Control Register"]
5 pub adcsr: ADCSR,
6 _reserved1: [u8; 0x02],
7 #[doc = "0x04 - A/D Channel Select Register A0"]
8 pub adansa0: ADANSA0,
9 #[doc = "0x06 - A/D Channel Select Register A1"]
10 pub adansa1: ADANSA1,
11 #[doc = "0x08 - A/D-Converted Value Addition/Average Channel Select Register 0"]
12 pub adads0: ADADS0,
13 #[doc = "0x0a - A/D-Converted Value Addition/Average Channel Select Register 1"]
14 pub adads1: ADADS1,
15 #[doc = "0x0c - A/D-Converted Value Addition/Average Count Select Register"]
16 pub adadc: ADADC,
17 _reserved6: [u8; 0x01],
18 #[doc = "0x0e - A/D Control Extended Register"]
19 pub adcer: ADCER,
20 #[doc = "0x10 - A/D Conversion Start Trigger Select Register"]
21 pub adstrgr: ADSTRGR,
22 #[doc = "0x12 - A/D Conversion Extended Input Control Registers"]
23 pub adexicr: ADEXICR,
24 #[doc = "0x14 - A/D Channel Select Register B0"]
25 pub adansb0: ADANSB0,
26 #[doc = "0x16 - A/D Channel Select Register B1"]
27 pub adansb1: ADANSB1,
28 #[doc = "0x18 - A/D Data Duplexing Register"]
29 pub addbldr: ADDBLDR,
30 #[doc = "0x1a - A/D Temperature Sensor Data Register"]
31 pub adtsdr: ADTSDR,
32 #[doc = "0x1c - A/D Internal Reference Voltage Data Register"]
33 pub adocdr: ADOCDR,
34 #[doc = "0x1e - A/D Self-Diagnosis Data Register"]
35 pub adrd: ADRD,
36 #[doc = "0x20..0x36 - A/D Data Registers %s"]
37 pub addr: [ADDR; 11],
38 _reserved16: [u8; 0x0a],
39 #[doc = "0x40 - A/D CTSU TSCAP Voltage Data Register"]
40 pub adctdr: ADCTDR,
41 #[doc = "0x42 - A/D Data Registers %s"]
42 pub addr17: ADDR17,
43 #[doc = "0x44 - A/D Data Registers %s"]
44 pub addr18: ADDR17,
45 #[doc = "0x46 - A/D Data Registers %s"]
46 pub addr19: ADDR17,
47 #[doc = "0x48 - A/D Data Registers %s"]
48 pub addr20: ADDR17,
49 #[doc = "0x4a - A/D Data Registers %s"]
50 pub addr21: ADDR17,
51 #[doc = "0x4c - A/D Data Registers %s"]
52 pub addr22: ADDR17,
53 _reserved23: [u8; 0x2c],
54 #[doc = "0x7a - A/D Disconnection Detection Control Register"]
55 pub addiscr: ADDISCR,
56 _reserved24: [u8; 0x03],
57 #[doc = "0x7e - A/D Conversion Operation Mode Select Register"]
58 pub adacsr: ADACSR,
59 _reserved25: [u8; 0x01],
60 #[doc = "0x80 - A/D Group Scan Priority Control Register"]
61 pub adgspcr: ADGSPCR,
62 _reserved26: [u8; 0x02],
63 #[doc = "0x84 - A/D Data Duplexing Register A"]
64 pub addbldra: ADDBLDRA,
65 #[doc = "0x86 - A/D Data Duplexing Register B"]
66 pub addbldrb: ADDBLDRB,
67 _reserved28: [u8; 0x02],
68 #[doc = "0x8a - A/D High-Potential/Low-Potential Reference Voltage Control Register"]
69 pub adhvrefcnt: ADHVREFCNT,
70 _reserved29: [u8; 0x01],
71 #[doc = "0x8c - A/D Compare Function Window A/B Status Monitor Register"]
72 pub adwinmon: ADWINMON,
73 _reserved30: [u8; 0x03],
74 #[doc = "0x90 - A/D Compare Function Control Register"]
75 pub adcmpcr: ADCMPCR,
76 #[doc = "0x92 - A/D Compare Function Window A Extended Input Select Register"]
77 pub adcmpanser: ADCMPANSER,
78 #[doc = "0x93 - A/D Compare Function Window A Extended Input Comparison Condition Setting Register"]
79 pub adcmpler: ADCMPLER,
80 #[doc = "0x94 - A/D Compare Function Window A Channel Select Register 0"]
81 pub adcmpansr0: ADCMPANSR0,
82 #[doc = "0x96 - A/D Compare Function Window A Channel Select Register 1"]
83 pub adcmpansr1: ADCMPANSR1,
84 #[doc = "0x98 - A/D Compare Function Window A Comparison Condition Setting Register 0"]
85 pub adcmplr0: ADCMPLR0,
86 #[doc = "0x9a - A/D Compare Function Window A Comparison Condition Setting Register 1"]
87 pub adcmplr1: ADCMPLR1,
88 #[doc = "0x9c - A/D Compare Function Window A Lower-Side/Upper-Side Level Setting Register"]
89 pub adcmpdr: [ADCMPDR; 2],
90 #[doc = "0xa0 - A/D Compare Function Window A Channel Status Register 0"]
91 pub adcmpsr0: ADCMPSR0,
92 #[doc = "0xa2 - A/D Compare Function Window A Channel Status Register1"]
93 pub adcmpsr1: ADCMPSR1,
94 #[doc = "0xa4 - A/D Compare Function Window A Extended Input Channel Status Register"]
95 pub adcmpser: ADCMPSER,
96 _reserved41: [u8; 0x01],
97 #[doc = "0xa6 - A/D Compare Function Window B Channel Select Register"]
98 pub adcmpbnsr: ADCMPBNSR,
99 _reserved42: [u8; 0x01],
100 #[doc = "0xa8 - A/D Compare Function Window B Lower-Side/Upper-Side Level Setting Register"]
101 pub adwinllb: ADWINLLB,
102 #[doc = "0xaa - A/D Compare Function Window B Lower-Side/Upper-Side Level Setting Register"]
103 pub adwinulb: ADWINULB,
104 #[doc = "0xac - A/D Compare Function Window B Status Register"]
105 pub adcmpbsr: ADCMPBSR,
106 _reserved45: [u8; 0x30],
107 #[doc = "0xdd - A/D Sampling State Register"]
108 pub adsstrl: ADSSTRL,
109 #[doc = "0xde - A/D Sampling State Register"]
110 pub adsstrt: ADSSTRT,
111 #[doc = "0xdf - A/D Sampling State Register"]
112 pub adsstro: ADSSTRO,
113 #[doc = "0xe0..0xeb - A/D Sampling State Register"]
114 pub adsstr: [ADSSTR; 11],
115}
116#[doc = "ADCSR (rw) register accessor: an alias for `Reg<ADCSR_SPEC>`"]
117pub type ADCSR = crate::Reg<adcsr::ADCSR_SPEC>;
118#[doc = "A/D Control Register"]
119pub mod adcsr;
120#[doc = "ADANSA0 (rw) register accessor: an alias for `Reg<ADANSA0_SPEC>`"]
121pub type ADANSA0 = crate::Reg<adansa0::ADANSA0_SPEC>;
122#[doc = "A/D Channel Select Register A0"]
123pub mod adansa0;
124#[doc = "ADANSA1 (rw) register accessor: an alias for `Reg<ADANSA1_SPEC>`"]
125pub type ADANSA1 = crate::Reg<adansa1::ADANSA1_SPEC>;
126#[doc = "A/D Channel Select Register A1"]
127pub mod adansa1;
128#[doc = "ADADS0 (rw) register accessor: an alias for `Reg<ADADS0_SPEC>`"]
129pub type ADADS0 = crate::Reg<adads0::ADADS0_SPEC>;
130#[doc = "A/D-Converted Value Addition/Average Channel Select Register 0"]
131pub mod adads0;
132#[doc = "ADADS1 (rw) register accessor: an alias for `Reg<ADADS1_SPEC>`"]
133pub type ADADS1 = crate::Reg<adads1::ADADS1_SPEC>;
134#[doc = "A/D-Converted Value Addition/Average Channel Select Register 1"]
135pub mod adads1;
136#[doc = "ADADC (rw) register accessor: an alias for `Reg<ADADC_SPEC>`"]
137pub type ADADC = crate::Reg<adadc::ADADC_SPEC>;
138#[doc = "A/D-Converted Value Addition/Average Count Select Register"]
139pub mod adadc;
140#[doc = "ADCER (rw) register accessor: an alias for `Reg<ADCER_SPEC>`"]
141pub type ADCER = crate::Reg<adcer::ADCER_SPEC>;
142#[doc = "A/D Control Extended Register"]
143pub mod adcer;
144#[doc = "ADSTRGR (rw) register accessor: an alias for `Reg<ADSTRGR_SPEC>`"]
145pub type ADSTRGR = crate::Reg<adstrgr::ADSTRGR_SPEC>;
146#[doc = "A/D Conversion Start Trigger Select Register"]
147pub mod adstrgr;
148#[doc = "ADEXICR (rw) register accessor: an alias for `Reg<ADEXICR_SPEC>`"]
149pub type ADEXICR = crate::Reg<adexicr::ADEXICR_SPEC>;
150#[doc = "A/D Conversion Extended Input Control Registers"]
151pub mod adexicr;
152#[doc = "ADANSB0 (rw) register accessor: an alias for `Reg<ADANSB0_SPEC>`"]
153pub type ADANSB0 = crate::Reg<adansb0::ADANSB0_SPEC>;
154#[doc = "A/D Channel Select Register B0"]
155pub mod adansb0;
156#[doc = "ADANSB1 (rw) register accessor: an alias for `Reg<ADANSB1_SPEC>`"]
157pub type ADANSB1 = crate::Reg<adansb1::ADANSB1_SPEC>;
158#[doc = "A/D Channel Select Register B1"]
159pub mod adansb1;
160#[doc = "ADDBLDR (r) register accessor: an alias for `Reg<ADDBLDR_SPEC>`"]
161pub type ADDBLDR = crate::Reg<addbldr::ADDBLDR_SPEC>;
162#[doc = "A/D Data Duplexing Register"]
163pub mod addbldr;
164#[doc = "ADTSDR (r) register accessor: an alias for `Reg<ADTSDR_SPEC>`"]
165pub type ADTSDR = crate::Reg<adtsdr::ADTSDR_SPEC>;
166#[doc = "A/D Temperature Sensor Data Register"]
167pub mod adtsdr;
168#[doc = "ADOCDR (r) register accessor: an alias for `Reg<ADOCDR_SPEC>`"]
169pub type ADOCDR = crate::Reg<adocdr::ADOCDR_SPEC>;
170#[doc = "A/D Internal Reference Voltage Data Register"]
171pub mod adocdr;
172#[doc = "ADRD (r) register accessor: an alias for `Reg<ADRD_SPEC>`"]
173pub type ADRD = crate::Reg<adrd::ADRD_SPEC>;
174#[doc = "A/D Self-Diagnosis Data Register"]
175pub mod adrd;
176#[doc = "ADDR (r) register accessor: an alias for `Reg<ADDR_SPEC>`"]
177pub type ADDR = crate::Reg<addr::ADDR_SPEC>;
178#[doc = "A/D Data Registers %s"]
179pub mod addr;
180#[doc = "ADCTDR (r) register accessor: an alias for `Reg<ADCTDR_SPEC>`"]
181pub type ADCTDR = crate::Reg<adctdr::ADCTDR_SPEC>;
182#[doc = "A/D CTSU TSCAP Voltage Data Register"]
183pub mod adctdr;
184pub use addr as addr17;
185pub use ADDR as ADDR17;
186#[doc = "ADDISCR (rw) register accessor: an alias for `Reg<ADDISCR_SPEC>`"]
187pub type ADDISCR = crate::Reg<addiscr::ADDISCR_SPEC>;
188#[doc = "A/D Disconnection Detection Control Register"]
189pub mod addiscr;
190#[doc = "ADACSR (rw) register accessor: an alias for `Reg<ADACSR_SPEC>`"]
191pub type ADACSR = crate::Reg<adacsr::ADACSR_SPEC>;
192#[doc = "A/D Conversion Operation Mode Select Register"]
193pub mod adacsr;
194#[doc = "ADGSPCR (rw) register accessor: an alias for `Reg<ADGSPCR_SPEC>`"]
195pub type ADGSPCR = crate::Reg<adgspcr::ADGSPCR_SPEC>;
196#[doc = "A/D Group Scan Priority Control Register"]
197pub mod adgspcr;
198#[doc = "ADDBLDRA (r) register accessor: an alias for `Reg<ADDBLDRA_SPEC>`"]
199pub type ADDBLDRA = crate::Reg<addbldra::ADDBLDRA_SPEC>;
200#[doc = "A/D Data Duplexing Register A"]
201pub mod addbldra;
202#[doc = "ADDBLDRB (r) register accessor: an alias for `Reg<ADDBLDRB_SPEC>`"]
203pub type ADDBLDRB = crate::Reg<addbldrb::ADDBLDRB_SPEC>;
204#[doc = "A/D Data Duplexing Register B"]
205pub mod addbldrb;
206#[doc = "ADHVREFCNT (rw) register accessor: an alias for `Reg<ADHVREFCNT_SPEC>`"]
207pub type ADHVREFCNT = crate::Reg<adhvrefcnt::ADHVREFCNT_SPEC>;
208#[doc = "A/D High-Potential/Low-Potential Reference Voltage Control Register"]
209pub mod adhvrefcnt;
210#[doc = "ADWINMON (r) register accessor: an alias for `Reg<ADWINMON_SPEC>`"]
211pub type ADWINMON = crate::Reg<adwinmon::ADWINMON_SPEC>;
212#[doc = "A/D Compare Function Window A/B Status Monitor Register"]
213pub mod adwinmon;
214#[doc = "ADCMPCR (rw) register accessor: an alias for `Reg<ADCMPCR_SPEC>`"]
215pub type ADCMPCR = crate::Reg<adcmpcr::ADCMPCR_SPEC>;
216#[doc = "A/D Compare Function Control Register"]
217pub mod adcmpcr;
218#[doc = "ADCMPANSER (rw) register accessor: an alias for `Reg<ADCMPANSER_SPEC>`"]
219pub type ADCMPANSER = crate::Reg<adcmpanser::ADCMPANSER_SPEC>;
220#[doc = "A/D Compare Function Window A Extended Input Select Register"]
221pub mod adcmpanser;
222#[doc = "ADCMPLER (rw) register accessor: an alias for `Reg<ADCMPLER_SPEC>`"]
223pub type ADCMPLER = crate::Reg<adcmpler::ADCMPLER_SPEC>;
224#[doc = "A/D Compare Function Window A Extended Input Comparison Condition Setting Register"]
225pub mod adcmpler;
226#[doc = "ADCMPANSR0 (rw) register accessor: an alias for `Reg<ADCMPANSR0_SPEC>`"]
227pub type ADCMPANSR0 = crate::Reg<adcmpansr0::ADCMPANSR0_SPEC>;
228#[doc = "A/D Compare Function Window A Channel Select Register 0"]
229pub mod adcmpansr0;
230#[doc = "ADCMPANSR1 (rw) register accessor: an alias for `Reg<ADCMPANSR1_SPEC>`"]
231pub type ADCMPANSR1 = crate::Reg<adcmpansr1::ADCMPANSR1_SPEC>;
232#[doc = "A/D Compare Function Window A Channel Select Register 1"]
233pub mod adcmpansr1;
234#[doc = "ADCMPLR0 (rw) register accessor: an alias for `Reg<ADCMPLR0_SPEC>`"]
235pub type ADCMPLR0 = crate::Reg<adcmplr0::ADCMPLR0_SPEC>;
236#[doc = "A/D Compare Function Window A Comparison Condition Setting Register 0"]
237pub mod adcmplr0;
238#[doc = "ADCMPLR1 (rw) register accessor: an alias for `Reg<ADCMPLR1_SPEC>`"]
239pub type ADCMPLR1 = crate::Reg<adcmplr1::ADCMPLR1_SPEC>;
240#[doc = "A/D Compare Function Window A Comparison Condition Setting Register 1"]
241pub mod adcmplr1;
242#[doc = "ADCMPDR (rw) register accessor: an alias for `Reg<ADCMPDR_SPEC>`"]
243pub type ADCMPDR = crate::Reg<adcmpdr::ADCMPDR_SPEC>;
244#[doc = "A/D Compare Function Window A Lower-Side/Upper-Side Level Setting Register"]
245pub mod adcmpdr;
246#[doc = "ADCMPSR0 (rw) register accessor: an alias for `Reg<ADCMPSR0_SPEC>`"]
247pub type ADCMPSR0 = crate::Reg<adcmpsr0::ADCMPSR0_SPEC>;
248#[doc = "A/D Compare Function Window A Channel Status Register 0"]
249pub mod adcmpsr0;
250#[doc = "ADCMPSR1 (rw) register accessor: an alias for `Reg<ADCMPSR1_SPEC>`"]
251pub type ADCMPSR1 = crate::Reg<adcmpsr1::ADCMPSR1_SPEC>;
252#[doc = "A/D Compare Function Window A Channel Status Register1"]
253pub mod adcmpsr1;
254#[doc = "ADCMPSER (rw) register accessor: an alias for `Reg<ADCMPSER_SPEC>`"]
255pub type ADCMPSER = crate::Reg<adcmpser::ADCMPSER_SPEC>;
256#[doc = "A/D Compare Function Window A Extended Input Channel Status Register"]
257pub mod adcmpser;
258#[doc = "ADCMPBNSR (rw) register accessor: an alias for `Reg<ADCMPBNSR_SPEC>`"]
259pub type ADCMPBNSR = crate::Reg<adcmpbnsr::ADCMPBNSR_SPEC>;
260#[doc = "A/D Compare Function Window B Channel Select Register"]
261pub mod adcmpbnsr;
262#[doc = "ADWINLLB (rw) register accessor: an alias for `Reg<ADWINLLB_SPEC>`"]
263pub type ADWINLLB = crate::Reg<adwinllb::ADWINLLB_SPEC>;
264#[doc = "A/D Compare Function Window B Lower-Side/Upper-Side Level Setting Register"]
265pub mod adwinllb;
266#[doc = "ADWINULB (rw) register accessor: an alias for `Reg<ADWINULB_SPEC>`"]
267pub type ADWINULB = crate::Reg<adwinulb::ADWINULB_SPEC>;
268#[doc = "A/D Compare Function Window B Lower-Side/Upper-Side Level Setting Register"]
269pub mod adwinulb;
270#[doc = "ADCMPBSR (rw) register accessor: an alias for `Reg<ADCMPBSR_SPEC>`"]
271pub type ADCMPBSR = crate::Reg<adcmpbsr::ADCMPBSR_SPEC>;
272#[doc = "A/D Compare Function Window B Status Register"]
273pub mod adcmpbsr;
274#[doc = "ADSSTRL (rw) register accessor: an alias for `Reg<ADSSTRL_SPEC>`"]
275pub type ADSSTRL = crate::Reg<adsstrl::ADSSTRL_SPEC>;
276#[doc = "A/D Sampling State Register"]
277pub mod adsstrl;
278#[doc = "ADSSTRT (rw) register accessor: an alias for `Reg<ADSSTRT_SPEC>`"]
279pub type ADSSTRT = crate::Reg<adsstrt::ADSSTRT_SPEC>;
280#[doc = "A/D Sampling State Register"]
281pub mod adsstrt;
282#[doc = "ADSSTRO (rw) register accessor: an alias for `Reg<ADSSTRO_SPEC>`"]
283pub type ADSSTRO = crate::Reg<adsstro::ADSSTRO_SPEC>;
284#[doc = "A/D Sampling State Register"]
285pub mod adsstro;
286#[doc = "ADSSTR (rw) register accessor: an alias for `Reg<ADSSTR_SPEC>`"]
287pub type ADSSTR = crate::Reg<adsstr::ADSSTR_SPEC>;
288#[doc = "A/D Sampling State Register"]
289pub mod adsstr;