atsamd21j/evsys/
intenclr.rs
1#[doc = "Register `INTENCLR` reader"]
2pub type R = crate::R<IntenclrSpec>;
3#[doc = "Register `INTENCLR` writer"]
4pub type W = crate::W<IntenclrSpec>;
5#[doc = "Field `OVR0` reader - Channel 0 Overrun Interrupt Enable"]
6pub type Ovr0R = crate::BitReader;
7#[doc = "Field `OVR0` writer - Channel 0 Overrun Interrupt Enable"]
8pub type Ovr0W<'a, REG> = crate::BitWriter<'a, REG>;
9#[doc = "Field `OVR1` reader - Channel 1 Overrun Interrupt Enable"]
10pub type Ovr1R = crate::BitReader;
11#[doc = "Field `OVR1` writer - Channel 1 Overrun Interrupt Enable"]
12pub type Ovr1W<'a, REG> = crate::BitWriter<'a, REG>;
13#[doc = "Field `OVR2` reader - Channel 2 Overrun Interrupt Enable"]
14pub type Ovr2R = crate::BitReader;
15#[doc = "Field `OVR2` writer - Channel 2 Overrun Interrupt Enable"]
16pub type Ovr2W<'a, REG> = crate::BitWriter<'a, REG>;
17#[doc = "Field `OVR3` reader - Channel 3 Overrun Interrupt Enable"]
18pub type Ovr3R = crate::BitReader;
19#[doc = "Field `OVR3` writer - Channel 3 Overrun Interrupt Enable"]
20pub type Ovr3W<'a, REG> = crate::BitWriter<'a, REG>;
21#[doc = "Field `OVR4` reader - Channel 4 Overrun Interrupt Enable"]
22pub type Ovr4R = crate::BitReader;
23#[doc = "Field `OVR4` writer - Channel 4 Overrun Interrupt Enable"]
24pub type Ovr4W<'a, REG> = crate::BitWriter<'a, REG>;
25#[doc = "Field `OVR5` reader - Channel 5 Overrun Interrupt Enable"]
26pub type Ovr5R = crate::BitReader;
27#[doc = "Field `OVR5` writer - Channel 5 Overrun Interrupt Enable"]
28pub type Ovr5W<'a, REG> = crate::BitWriter<'a, REG>;
29#[doc = "Field `OVR6` reader - Channel 6 Overrun Interrupt Enable"]
30pub type Ovr6R = crate::BitReader;
31#[doc = "Field `OVR6` writer - Channel 6 Overrun Interrupt Enable"]
32pub type Ovr6W<'a, REG> = crate::BitWriter<'a, REG>;
33#[doc = "Field `OVR7` reader - Channel 7 Overrun Interrupt Enable"]
34pub type Ovr7R = crate::BitReader;
35#[doc = "Field `OVR7` writer - Channel 7 Overrun Interrupt Enable"]
36pub type Ovr7W<'a, REG> = crate::BitWriter<'a, REG>;
37#[doc = "Field `EVD0` reader - Channel 0 Event Detection Interrupt Enable"]
38pub type Evd0R = crate::BitReader;
39#[doc = "Field `EVD0` writer - Channel 0 Event Detection Interrupt Enable"]
40pub type Evd0W<'a, REG> = crate::BitWriter<'a, REG>;
41#[doc = "Field `EVD1` reader - Channel 1 Event Detection Interrupt Enable"]
42pub type Evd1R = crate::BitReader;
43#[doc = "Field `EVD1` writer - Channel 1 Event Detection Interrupt Enable"]
44pub type Evd1W<'a, REG> = crate::BitWriter<'a, REG>;
45#[doc = "Field `EVD2` reader - Channel 2 Event Detection Interrupt Enable"]
46pub type Evd2R = crate::BitReader;
47#[doc = "Field `EVD2` writer - Channel 2 Event Detection Interrupt Enable"]
48pub type Evd2W<'a, REG> = crate::BitWriter<'a, REG>;
49#[doc = "Field `EVD3` reader - Channel 3 Event Detection Interrupt Enable"]
50pub type Evd3R = crate::BitReader;
51#[doc = "Field `EVD3` writer - Channel 3 Event Detection Interrupt Enable"]
52pub type Evd3W<'a, REG> = crate::BitWriter<'a, REG>;
53#[doc = "Field `EVD4` reader - Channel 4 Event Detection Interrupt Enable"]
54pub type Evd4R = crate::BitReader;
55#[doc = "Field `EVD4` writer - Channel 4 Event Detection Interrupt Enable"]
56pub type Evd4W<'a, REG> = crate::BitWriter<'a, REG>;
57#[doc = "Field `EVD5` reader - Channel 5 Event Detection Interrupt Enable"]
58pub type Evd5R = crate::BitReader;
59#[doc = "Field `EVD5` writer - Channel 5 Event Detection Interrupt Enable"]
60pub type Evd5W<'a, REG> = crate::BitWriter<'a, REG>;
61#[doc = "Field `EVD6` reader - Channel 6 Event Detection Interrupt Enable"]
62pub type Evd6R = crate::BitReader;
63#[doc = "Field `EVD6` writer - Channel 6 Event Detection Interrupt Enable"]
64pub type Evd6W<'a, REG> = crate::BitWriter<'a, REG>;
65#[doc = "Field `EVD7` reader - Channel 7 Event Detection Interrupt Enable"]
66pub type Evd7R = crate::BitReader;
67#[doc = "Field `EVD7` writer - Channel 7 Event Detection Interrupt Enable"]
68pub type Evd7W<'a, REG> = crate::BitWriter<'a, REG>;
69#[doc = "Field `OVR8` reader - Channel 8 Overrun Interrupt Enable"]
70pub type Ovr8R = crate::BitReader;
71#[doc = "Field `OVR8` writer - Channel 8 Overrun Interrupt Enable"]
72pub type Ovr8W<'a, REG> = crate::BitWriter<'a, REG>;
73#[doc = "Field `OVR9` reader - Channel 9 Overrun Interrupt Enable"]
74pub type Ovr9R = crate::BitReader;
75#[doc = "Field `OVR9` writer - Channel 9 Overrun Interrupt Enable"]
76pub type Ovr9W<'a, REG> = crate::BitWriter<'a, REG>;
77#[doc = "Field `OVR10` reader - Channel 10 Overrun Interrupt Enable"]
78pub type Ovr10R = crate::BitReader;
79#[doc = "Field `OVR10` writer - Channel 10 Overrun Interrupt Enable"]
80pub type Ovr10W<'a, REG> = crate::BitWriter<'a, REG>;
81#[doc = "Field `OVR11` reader - Channel 11 Overrun Interrupt Enable"]
82pub type Ovr11R = crate::BitReader;
83#[doc = "Field `OVR11` writer - Channel 11 Overrun Interrupt Enable"]
84pub type Ovr11W<'a, REG> = crate::BitWriter<'a, REG>;
85#[doc = "Field `EVD8` reader - Channel 8 Event Detection Interrupt Enable"]
86pub type Evd8R = crate::BitReader;
87#[doc = "Field `EVD8` writer - Channel 8 Event Detection Interrupt Enable"]
88pub type Evd8W<'a, REG> = crate::BitWriter<'a, REG>;
89#[doc = "Field `EVD9` reader - Channel 9 Event Detection Interrupt Enable"]
90pub type Evd9R = crate::BitReader;
91#[doc = "Field `EVD9` writer - Channel 9 Event Detection Interrupt Enable"]
92pub type Evd9W<'a, REG> = crate::BitWriter<'a, REG>;
93#[doc = "Field `EVD10` reader - Channel 10 Event Detection Interrupt Enable"]
94pub type Evd10R = crate::BitReader;
95#[doc = "Field `EVD10` writer - Channel 10 Event Detection Interrupt Enable"]
96pub type Evd10W<'a, REG> = crate::BitWriter<'a, REG>;
97#[doc = "Field `EVD11` reader - Channel 11 Event Detection Interrupt Enable"]
98pub type Evd11R = crate::BitReader;
99#[doc = "Field `EVD11` writer - Channel 11 Event Detection Interrupt Enable"]
100pub type Evd11W<'a, REG> = crate::BitWriter<'a, REG>;
101impl R {
102 #[doc = "Bit 0 - Channel 0 Overrun Interrupt Enable"]
103 #[inline(always)]
104 pub fn ovr0(&self) -> Ovr0R {
105 Ovr0R::new((self.bits & 1) != 0)
106 }
107 #[doc = "Bit 1 - Channel 1 Overrun Interrupt Enable"]
108 #[inline(always)]
109 pub fn ovr1(&self) -> Ovr1R {
110 Ovr1R::new(((self.bits >> 1) & 1) != 0)
111 }
112 #[doc = "Bit 2 - Channel 2 Overrun Interrupt Enable"]
113 #[inline(always)]
114 pub fn ovr2(&self) -> Ovr2R {
115 Ovr2R::new(((self.bits >> 2) & 1) != 0)
116 }
117 #[doc = "Bit 3 - Channel 3 Overrun Interrupt Enable"]
118 #[inline(always)]
119 pub fn ovr3(&self) -> Ovr3R {
120 Ovr3R::new(((self.bits >> 3) & 1) != 0)
121 }
122 #[doc = "Bit 4 - Channel 4 Overrun Interrupt Enable"]
123 #[inline(always)]
124 pub fn ovr4(&self) -> Ovr4R {
125 Ovr4R::new(((self.bits >> 4) & 1) != 0)
126 }
127 #[doc = "Bit 5 - Channel 5 Overrun Interrupt Enable"]
128 #[inline(always)]
129 pub fn ovr5(&self) -> Ovr5R {
130 Ovr5R::new(((self.bits >> 5) & 1) != 0)
131 }
132 #[doc = "Bit 6 - Channel 6 Overrun Interrupt Enable"]
133 #[inline(always)]
134 pub fn ovr6(&self) -> Ovr6R {
135 Ovr6R::new(((self.bits >> 6) & 1) != 0)
136 }
137 #[doc = "Bit 7 - Channel 7 Overrun Interrupt Enable"]
138 #[inline(always)]
139 pub fn ovr7(&self) -> Ovr7R {
140 Ovr7R::new(((self.bits >> 7) & 1) != 0)
141 }
142 #[doc = "Bit 8 - Channel 0 Event Detection Interrupt Enable"]
143 #[inline(always)]
144 pub fn evd0(&self) -> Evd0R {
145 Evd0R::new(((self.bits >> 8) & 1) != 0)
146 }
147 #[doc = "Bit 9 - Channel 1 Event Detection Interrupt Enable"]
148 #[inline(always)]
149 pub fn evd1(&self) -> Evd1R {
150 Evd1R::new(((self.bits >> 9) & 1) != 0)
151 }
152 #[doc = "Bit 10 - Channel 2 Event Detection Interrupt Enable"]
153 #[inline(always)]
154 pub fn evd2(&self) -> Evd2R {
155 Evd2R::new(((self.bits >> 10) & 1) != 0)
156 }
157 #[doc = "Bit 11 - Channel 3 Event Detection Interrupt Enable"]
158 #[inline(always)]
159 pub fn evd3(&self) -> Evd3R {
160 Evd3R::new(((self.bits >> 11) & 1) != 0)
161 }
162 #[doc = "Bit 12 - Channel 4 Event Detection Interrupt Enable"]
163 #[inline(always)]
164 pub fn evd4(&self) -> Evd4R {
165 Evd4R::new(((self.bits >> 12) & 1) != 0)
166 }
167 #[doc = "Bit 13 - Channel 5 Event Detection Interrupt Enable"]
168 #[inline(always)]
169 pub fn evd5(&self) -> Evd5R {
170 Evd5R::new(((self.bits >> 13) & 1) != 0)
171 }
172 #[doc = "Bit 14 - Channel 6 Event Detection Interrupt Enable"]
173 #[inline(always)]
174 pub fn evd6(&self) -> Evd6R {
175 Evd6R::new(((self.bits >> 14) & 1) != 0)
176 }
177 #[doc = "Bit 15 - Channel 7 Event Detection Interrupt Enable"]
178 #[inline(always)]
179 pub fn evd7(&self) -> Evd7R {
180 Evd7R::new(((self.bits >> 15) & 1) != 0)
181 }
182 #[doc = "Bit 16 - Channel 8 Overrun Interrupt Enable"]
183 #[inline(always)]
184 pub fn ovr8(&self) -> Ovr8R {
185 Ovr8R::new(((self.bits >> 16) & 1) != 0)
186 }
187 #[doc = "Bit 17 - Channel 9 Overrun Interrupt Enable"]
188 #[inline(always)]
189 pub fn ovr9(&self) -> Ovr9R {
190 Ovr9R::new(((self.bits >> 17) & 1) != 0)
191 }
192 #[doc = "Bit 18 - Channel 10 Overrun Interrupt Enable"]
193 #[inline(always)]
194 pub fn ovr10(&self) -> Ovr10R {
195 Ovr10R::new(((self.bits >> 18) & 1) != 0)
196 }
197 #[doc = "Bit 19 - Channel 11 Overrun Interrupt Enable"]
198 #[inline(always)]
199 pub fn ovr11(&self) -> Ovr11R {
200 Ovr11R::new(((self.bits >> 19) & 1) != 0)
201 }
202 #[doc = "Bit 24 - Channel 8 Event Detection Interrupt Enable"]
203 #[inline(always)]
204 pub fn evd8(&self) -> Evd8R {
205 Evd8R::new(((self.bits >> 24) & 1) != 0)
206 }
207 #[doc = "Bit 25 - Channel 9 Event Detection Interrupt Enable"]
208 #[inline(always)]
209 pub fn evd9(&self) -> Evd9R {
210 Evd9R::new(((self.bits >> 25) & 1) != 0)
211 }
212 #[doc = "Bit 26 - Channel 10 Event Detection Interrupt Enable"]
213 #[inline(always)]
214 pub fn evd10(&self) -> Evd10R {
215 Evd10R::new(((self.bits >> 26) & 1) != 0)
216 }
217 #[doc = "Bit 27 - Channel 11 Event Detection Interrupt Enable"]
218 #[inline(always)]
219 pub fn evd11(&self) -> Evd11R {
220 Evd11R::new(((self.bits >> 27) & 1) != 0)
221 }
222}
223impl W {
224 #[doc = "Bit 0 - Channel 0 Overrun Interrupt Enable"]
225 #[inline(always)]
226 #[must_use]
227 pub fn ovr0(&mut self) -> Ovr0W<IntenclrSpec> {
228 Ovr0W::new(self, 0)
229 }
230 #[doc = "Bit 1 - Channel 1 Overrun Interrupt Enable"]
231 #[inline(always)]
232 #[must_use]
233 pub fn ovr1(&mut self) -> Ovr1W<IntenclrSpec> {
234 Ovr1W::new(self, 1)
235 }
236 #[doc = "Bit 2 - Channel 2 Overrun Interrupt Enable"]
237 #[inline(always)]
238 #[must_use]
239 pub fn ovr2(&mut self) -> Ovr2W<IntenclrSpec> {
240 Ovr2W::new(self, 2)
241 }
242 #[doc = "Bit 3 - Channel 3 Overrun Interrupt Enable"]
243 #[inline(always)]
244 #[must_use]
245 pub fn ovr3(&mut self) -> Ovr3W<IntenclrSpec> {
246 Ovr3W::new(self, 3)
247 }
248 #[doc = "Bit 4 - Channel 4 Overrun Interrupt Enable"]
249 #[inline(always)]
250 #[must_use]
251 pub fn ovr4(&mut self) -> Ovr4W<IntenclrSpec> {
252 Ovr4W::new(self, 4)
253 }
254 #[doc = "Bit 5 - Channel 5 Overrun Interrupt Enable"]
255 #[inline(always)]
256 #[must_use]
257 pub fn ovr5(&mut self) -> Ovr5W<IntenclrSpec> {
258 Ovr5W::new(self, 5)
259 }
260 #[doc = "Bit 6 - Channel 6 Overrun Interrupt Enable"]
261 #[inline(always)]
262 #[must_use]
263 pub fn ovr6(&mut self) -> Ovr6W<IntenclrSpec> {
264 Ovr6W::new(self, 6)
265 }
266 #[doc = "Bit 7 - Channel 7 Overrun Interrupt Enable"]
267 #[inline(always)]
268 #[must_use]
269 pub fn ovr7(&mut self) -> Ovr7W<IntenclrSpec> {
270 Ovr7W::new(self, 7)
271 }
272 #[doc = "Bit 8 - Channel 0 Event Detection Interrupt Enable"]
273 #[inline(always)]
274 #[must_use]
275 pub fn evd0(&mut self) -> Evd0W<IntenclrSpec> {
276 Evd0W::new(self, 8)
277 }
278 #[doc = "Bit 9 - Channel 1 Event Detection Interrupt Enable"]
279 #[inline(always)]
280 #[must_use]
281 pub fn evd1(&mut self) -> Evd1W<IntenclrSpec> {
282 Evd1W::new(self, 9)
283 }
284 #[doc = "Bit 10 - Channel 2 Event Detection Interrupt Enable"]
285 #[inline(always)]
286 #[must_use]
287 pub fn evd2(&mut self) -> Evd2W<IntenclrSpec> {
288 Evd2W::new(self, 10)
289 }
290 #[doc = "Bit 11 - Channel 3 Event Detection Interrupt Enable"]
291 #[inline(always)]
292 #[must_use]
293 pub fn evd3(&mut self) -> Evd3W<IntenclrSpec> {
294 Evd3W::new(self, 11)
295 }
296 #[doc = "Bit 12 - Channel 4 Event Detection Interrupt Enable"]
297 #[inline(always)]
298 #[must_use]
299 pub fn evd4(&mut self) -> Evd4W<IntenclrSpec> {
300 Evd4W::new(self, 12)
301 }
302 #[doc = "Bit 13 - Channel 5 Event Detection Interrupt Enable"]
303 #[inline(always)]
304 #[must_use]
305 pub fn evd5(&mut self) -> Evd5W<IntenclrSpec> {
306 Evd5W::new(self, 13)
307 }
308 #[doc = "Bit 14 - Channel 6 Event Detection Interrupt Enable"]
309 #[inline(always)]
310 #[must_use]
311 pub fn evd6(&mut self) -> Evd6W<IntenclrSpec> {
312 Evd6W::new(self, 14)
313 }
314 #[doc = "Bit 15 - Channel 7 Event Detection Interrupt Enable"]
315 #[inline(always)]
316 #[must_use]
317 pub fn evd7(&mut self) -> Evd7W<IntenclrSpec> {
318 Evd7W::new(self, 15)
319 }
320 #[doc = "Bit 16 - Channel 8 Overrun Interrupt Enable"]
321 #[inline(always)]
322 #[must_use]
323 pub fn ovr8(&mut self) -> Ovr8W<IntenclrSpec> {
324 Ovr8W::new(self, 16)
325 }
326 #[doc = "Bit 17 - Channel 9 Overrun Interrupt Enable"]
327 #[inline(always)]
328 #[must_use]
329 pub fn ovr9(&mut self) -> Ovr9W<IntenclrSpec> {
330 Ovr9W::new(self, 17)
331 }
332 #[doc = "Bit 18 - Channel 10 Overrun Interrupt Enable"]
333 #[inline(always)]
334 #[must_use]
335 pub fn ovr10(&mut self) -> Ovr10W<IntenclrSpec> {
336 Ovr10W::new(self, 18)
337 }
338 #[doc = "Bit 19 - Channel 11 Overrun Interrupt Enable"]
339 #[inline(always)]
340 #[must_use]
341 pub fn ovr11(&mut self) -> Ovr11W<IntenclrSpec> {
342 Ovr11W::new(self, 19)
343 }
344 #[doc = "Bit 24 - Channel 8 Event Detection Interrupt Enable"]
345 #[inline(always)]
346 #[must_use]
347 pub fn evd8(&mut self) -> Evd8W<IntenclrSpec> {
348 Evd8W::new(self, 24)
349 }
350 #[doc = "Bit 25 - Channel 9 Event Detection Interrupt Enable"]
351 #[inline(always)]
352 #[must_use]
353 pub fn evd9(&mut self) -> Evd9W<IntenclrSpec> {
354 Evd9W::new(self, 25)
355 }
356 #[doc = "Bit 26 - Channel 10 Event Detection Interrupt Enable"]
357 #[inline(always)]
358 #[must_use]
359 pub fn evd10(&mut self) -> Evd10W<IntenclrSpec> {
360 Evd10W::new(self, 26)
361 }
362 #[doc = "Bit 27 - Channel 11 Event Detection Interrupt Enable"]
363 #[inline(always)]
364 #[must_use]
365 pub fn evd11(&mut self) -> Evd11W<IntenclrSpec> {
366 Evd11W::new(self, 27)
367 }
368}
369#[doc = "Interrupt Enable Clear\n\nYou can [`read`](crate::Reg::read) this register and get [`intenclr::R`](R). You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`intenclr::W`](W). You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api)."]
370pub struct IntenclrSpec;
371impl crate::RegisterSpec for IntenclrSpec {
372 type Ux = u32;
373}
374#[doc = "`read()` method returns [`intenclr::R`](R) reader structure"]
375impl crate::Readable for IntenclrSpec {}
376#[doc = "`write(|w| ..)` method takes [`intenclr::W`](W) writer structure"]
377impl crate::Writable for IntenclrSpec {
378 type Safety = crate::Unsafe;
379 const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
380 const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
381}
382#[doc = "`reset()` method sets INTENCLR to value 0"]
383impl crate::Resettable for IntenclrSpec {
384 const RESET_VALUE: u32 = 0;
385}