1#![allow(clippy::identity_op)]
21#![allow(clippy::module_inception)]
22#![allow(clippy::derivable_impls)]
23#[allow(unused_imports)]
24use crate::common::sealed;
25#[allow(unused_imports)]
26use crate::common::*;
27#[doc = r"Serial Communication Interface"]
28unsafe impl ::core::marker::Send for super::Sci0 {}
29unsafe impl ::core::marker::Sync for super::Sci0 {}
30impl super::Sci0 {
31 #[allow(unused)]
32 #[inline(always)]
33 pub(crate) const fn _svd2pac_as_ptr(&self) -> *mut u8 {
34 self.ptr
35 }
36
37 #[doc = "Serial Mode Register for Non-Smart Card Interface Mode (SCMR.SMIF = 0)"]
38 #[inline(always)]
39 pub const fn smr(&self) -> &'static crate::common::Reg<self::Smr_SPEC, crate::common::RW> {
40 unsafe {
41 crate::common::Reg::<self::Smr_SPEC, crate::common::RW>::from_ptr(
42 self._svd2pac_as_ptr().add(0usize),
43 )
44 }
45 }
46
47 #[doc = "Serial Mode Register for Smart Card Interface Mode (SCMR.SMIF = 1)"]
48 #[inline(always)]
49 pub const fn smr_smci(
50 &self,
51 ) -> &'static crate::common::Reg<self::SmrSmci_SPEC, crate::common::RW> {
52 unsafe {
53 crate::common::Reg::<self::SmrSmci_SPEC, crate::common::RW>::from_ptr(
54 self._svd2pac_as_ptr().add(0usize),
55 )
56 }
57 }
58
59 #[doc = "Bit Rate Register"]
60 #[inline(always)]
61 pub const fn brr(&self) -> &'static crate::common::Reg<self::Brr_SPEC, crate::common::RW> {
62 unsafe {
63 crate::common::Reg::<self::Brr_SPEC, crate::common::RW>::from_ptr(
64 self._svd2pac_as_ptr().add(1usize),
65 )
66 }
67 }
68
69 #[doc = "Serial Control Register for Non-Smart Card Interface Mode (SCMR.SMIF = 0)"]
70 #[inline(always)]
71 pub const fn scr(&self) -> &'static crate::common::Reg<self::Scr_SPEC, crate::common::RW> {
72 unsafe {
73 crate::common::Reg::<self::Scr_SPEC, crate::common::RW>::from_ptr(
74 self._svd2pac_as_ptr().add(2usize),
75 )
76 }
77 }
78
79 #[doc = "Serial Control Register for Smart Card Interface Mode (SCMR.SMIF = 1)"]
80 #[inline(always)]
81 pub const fn scr_smci(
82 &self,
83 ) -> &'static crate::common::Reg<self::ScrSmci_SPEC, crate::common::RW> {
84 unsafe {
85 crate::common::Reg::<self::ScrSmci_SPEC, crate::common::RW>::from_ptr(
86 self._svd2pac_as_ptr().add(2usize),
87 )
88 }
89 }
90
91 #[doc = "Transmit Data Register"]
92 #[inline(always)]
93 pub const fn tdr(&self) -> &'static crate::common::Reg<self::Tdr_SPEC, crate::common::RW> {
94 unsafe {
95 crate::common::Reg::<self::Tdr_SPEC, crate::common::RW>::from_ptr(
96 self._svd2pac_as_ptr().add(3usize),
97 )
98 }
99 }
100
101 #[doc = "Serial Status Register for Non-Smart Card Interface and Non-FIFO Mode (SCMR.SMIF = 0, FCR.FM = 0, and MMR.MANEN = 0)"]
102 #[inline(always)]
103 pub const fn ssr(&self) -> &'static crate::common::Reg<self::Ssr_SPEC, crate::common::RW> {
104 unsafe {
105 crate::common::Reg::<self::Ssr_SPEC, crate::common::RW>::from_ptr(
106 self._svd2pac_as_ptr().add(4usize),
107 )
108 }
109 }
110
111 #[doc = "Serial Status Register for Non-Smart Card Interface and FIFO Mode (SCMR.SMIF = 0, FCR.FM = 1, and MMR.MANEN = 0)"]
112 #[inline(always)]
113 pub const fn ssr_fifo(
114 &self,
115 ) -> &'static crate::common::Reg<self::SsrFifo_SPEC, crate::common::RW> {
116 unsafe {
117 crate::common::Reg::<self::SsrFifo_SPEC, crate::common::RW>::from_ptr(
118 self._svd2pac_as_ptr().add(4usize),
119 )
120 }
121 }
122
123 #[doc = "Serial Status Register for Smart Card Interface Mode (SCMR.SMIF = 1, and MMR.MANEN = 0)"]
124 #[inline(always)]
125 pub const fn ssr_smci(
126 &self,
127 ) -> &'static crate::common::Reg<self::SsrSmci_SPEC, crate::common::RW> {
128 unsafe {
129 crate::common::Reg::<self::SsrSmci_SPEC, crate::common::RW>::from_ptr(
130 self._svd2pac_as_ptr().add(4usize),
131 )
132 }
133 }
134
135 #[doc = "Receive Data Register"]
136 #[inline(always)]
137 pub const fn rdr(&self) -> &'static crate::common::Reg<self::Rdr_SPEC, crate::common::R> {
138 unsafe {
139 crate::common::Reg::<self::Rdr_SPEC, crate::common::R>::from_ptr(
140 self._svd2pac_as_ptr().add(5usize),
141 )
142 }
143 }
144
145 #[doc = "Smart Card Mode Register"]
146 #[inline(always)]
147 pub const fn scmr(&self) -> &'static crate::common::Reg<self::Scmr_SPEC, crate::common::RW> {
148 unsafe {
149 crate::common::Reg::<self::Scmr_SPEC, crate::common::RW>::from_ptr(
150 self._svd2pac_as_ptr().add(6usize),
151 )
152 }
153 }
154
155 #[doc = "Serial Extended Mode Register"]
156 #[inline(always)]
157 pub const fn semr(&self) -> &'static crate::common::Reg<self::Semr_SPEC, crate::common::RW> {
158 unsafe {
159 crate::common::Reg::<self::Semr_SPEC, crate::common::RW>::from_ptr(
160 self._svd2pac_as_ptr().add(7usize),
161 )
162 }
163 }
164
165 #[doc = "Noise Filter Setting Register"]
166 #[inline(always)]
167 pub const fn snfr(&self) -> &'static crate::common::Reg<self::Snfr_SPEC, crate::common::RW> {
168 unsafe {
169 crate::common::Reg::<self::Snfr_SPEC, crate::common::RW>::from_ptr(
170 self._svd2pac_as_ptr().add(8usize),
171 )
172 }
173 }
174
175 #[doc = "IIC Mode Register 1"]
176 #[inline(always)]
177 pub const fn simr1(&self) -> &'static crate::common::Reg<self::Simr1_SPEC, crate::common::RW> {
178 unsafe {
179 crate::common::Reg::<self::Simr1_SPEC, crate::common::RW>::from_ptr(
180 self._svd2pac_as_ptr().add(9usize),
181 )
182 }
183 }
184
185 #[doc = "IIC Mode Register 2"]
186 #[inline(always)]
187 pub const fn simr2(&self) -> &'static crate::common::Reg<self::Simr2_SPEC, crate::common::RW> {
188 unsafe {
189 crate::common::Reg::<self::Simr2_SPEC, crate::common::RW>::from_ptr(
190 self._svd2pac_as_ptr().add(10usize),
191 )
192 }
193 }
194
195 #[doc = "IIC Mode Register 3"]
196 #[inline(always)]
197 pub const fn simr3(&self) -> &'static crate::common::Reg<self::Simr3_SPEC, crate::common::RW> {
198 unsafe {
199 crate::common::Reg::<self::Simr3_SPEC, crate::common::RW>::from_ptr(
200 self._svd2pac_as_ptr().add(11usize),
201 )
202 }
203 }
204
205 #[doc = "IIC Status Register"]
206 #[inline(always)]
207 pub const fn sisr(&self) -> &'static crate::common::Reg<self::Sisr_SPEC, crate::common::R> {
208 unsafe {
209 crate::common::Reg::<self::Sisr_SPEC, crate::common::R>::from_ptr(
210 self._svd2pac_as_ptr().add(12usize),
211 )
212 }
213 }
214
215 #[doc = "SPI Mode Register"]
216 #[inline(always)]
217 pub const fn spmr(&self) -> &'static crate::common::Reg<self::Spmr_SPEC, crate::common::RW> {
218 unsafe {
219 crate::common::Reg::<self::Spmr_SPEC, crate::common::RW>::from_ptr(
220 self._svd2pac_as_ptr().add(13usize),
221 )
222 }
223 }
224
225 #[doc = "Transmit FIFO Data Register"]
226 #[inline(always)]
227 pub const fn ftdrhl(&self) -> &'static crate::common::Reg<self::Ftdrhl_SPEC, crate::common::W> {
228 unsafe {
229 crate::common::Reg::<self::Ftdrhl_SPEC, crate::common::W>::from_ptr(
230 self._svd2pac_as_ptr().add(14usize),
231 )
232 }
233 }
234
235 #[doc = "Transmit Data Register for Non-Manchester mode (MMR.MANEN = 0)"]
236 #[inline(always)]
237 pub const fn tdrhl(&self) -> &'static crate::common::Reg<self::Tdrhl_SPEC, crate::common::RW> {
238 unsafe {
239 crate::common::Reg::<self::Tdrhl_SPEC, crate::common::RW>::from_ptr(
240 self._svd2pac_as_ptr().add(14usize),
241 )
242 }
243 }
244
245 #[doc = "Transmit FIFO Data Register"]
246 #[inline(always)]
247 pub const fn ftdrh(&self) -> &'static crate::common::Reg<self::Ftdrh_SPEC, crate::common::W> {
248 unsafe {
249 crate::common::Reg::<self::Ftdrh_SPEC, crate::common::W>::from_ptr(
250 self._svd2pac_as_ptr().add(14usize),
251 )
252 }
253 }
254
255 #[doc = "Transmit FIFO Data Register"]
256 #[inline(always)]
257 pub const fn ftdrl(&self) -> &'static crate::common::Reg<self::Ftdrl_SPEC, crate::common::W> {
258 unsafe {
259 crate::common::Reg::<self::Ftdrl_SPEC, crate::common::W>::from_ptr(
260 self._svd2pac_as_ptr().add(15usize),
261 )
262 }
263 }
264
265 #[doc = "Receive FIFO Data Register"]
266 #[inline(always)]
267 pub const fn frdrhl(&self) -> &'static crate::common::Reg<self::Frdrhl_SPEC, crate::common::R> {
268 unsafe {
269 crate::common::Reg::<self::Frdrhl_SPEC, crate::common::R>::from_ptr(
270 self._svd2pac_as_ptr().add(16usize),
271 )
272 }
273 }
274
275 #[doc = "Receive Data Register for Non-Manchester mode (MMR.MANEN = 0)"]
276 #[inline(always)]
277 pub const fn rdrhl(&self) -> &'static crate::common::Reg<self::Rdrhl_SPEC, crate::common::R> {
278 unsafe {
279 crate::common::Reg::<self::Rdrhl_SPEC, crate::common::R>::from_ptr(
280 self._svd2pac_as_ptr().add(16usize),
281 )
282 }
283 }
284
285 #[doc = "Receive FIFO Data Register"]
286 #[inline(always)]
287 pub const fn frdrh(&self) -> &'static crate::common::Reg<self::Frdrh_SPEC, crate::common::R> {
288 unsafe {
289 crate::common::Reg::<self::Frdrh_SPEC, crate::common::R>::from_ptr(
290 self._svd2pac_as_ptr().add(16usize),
291 )
292 }
293 }
294
295 #[doc = "Receive FIFO Data Register"]
296 #[inline(always)]
297 pub const fn frdrl(&self) -> &'static crate::common::Reg<self::Frdrl_SPEC, crate::common::R> {
298 unsafe {
299 crate::common::Reg::<self::Frdrl_SPEC, crate::common::R>::from_ptr(
300 self._svd2pac_as_ptr().add(17usize),
301 )
302 }
303 }
304
305 #[doc = "Modulation Duty Register"]
306 #[inline(always)]
307 pub const fn mddr(&self) -> &'static crate::common::Reg<self::Mddr_SPEC, crate::common::RW> {
308 unsafe {
309 crate::common::Reg::<self::Mddr_SPEC, crate::common::RW>::from_ptr(
310 self._svd2pac_as_ptr().add(18usize),
311 )
312 }
313 }
314
315 #[doc = "Data Compare Match Control Register"]
316 #[inline(always)]
317 pub const fn dccr(&self) -> &'static crate::common::Reg<self::Dccr_SPEC, crate::common::RW> {
318 unsafe {
319 crate::common::Reg::<self::Dccr_SPEC, crate::common::RW>::from_ptr(
320 self._svd2pac_as_ptr().add(19usize),
321 )
322 }
323 }
324
325 #[doc = "FIFO Control Register"]
326 #[inline(always)]
327 pub const fn fcr(&self) -> &'static crate::common::Reg<self::Fcr_SPEC, crate::common::RW> {
328 unsafe {
329 crate::common::Reg::<self::Fcr_SPEC, crate::common::RW>::from_ptr(
330 self._svd2pac_as_ptr().add(20usize),
331 )
332 }
333 }
334
335 #[doc = "FIFO Data Count Register"]
336 #[inline(always)]
337 pub const fn fdr(&self) -> &'static crate::common::Reg<self::Fdr_SPEC, crate::common::R> {
338 unsafe {
339 crate::common::Reg::<self::Fdr_SPEC, crate::common::R>::from_ptr(
340 self._svd2pac_as_ptr().add(22usize),
341 )
342 }
343 }
344
345 #[doc = "Line Status Register"]
346 #[inline(always)]
347 pub const fn lsr(&self) -> &'static crate::common::Reg<self::Lsr_SPEC, crate::common::R> {
348 unsafe {
349 crate::common::Reg::<self::Lsr_SPEC, crate::common::R>::from_ptr(
350 self._svd2pac_as_ptr().add(24usize),
351 )
352 }
353 }
354
355 #[doc = "Compare Match Data Register"]
356 #[inline(always)]
357 pub const fn cdr(&self) -> &'static crate::common::Reg<self::Cdr_SPEC, crate::common::RW> {
358 unsafe {
359 crate::common::Reg::<self::Cdr_SPEC, crate::common::RW>::from_ptr(
360 self._svd2pac_as_ptr().add(26usize),
361 )
362 }
363 }
364
365 #[doc = "Serial Port Register"]
366 #[inline(always)]
367 pub const fn sptr(&self) -> &'static crate::common::Reg<self::Sptr_SPEC, crate::common::RW> {
368 unsafe {
369 crate::common::Reg::<self::Sptr_SPEC, crate::common::RW>::from_ptr(
370 self._svd2pac_as_ptr().add(28usize),
371 )
372 }
373 }
374
375 #[doc = "Adjustment Communication Timing Register"]
376 #[inline(always)]
377 pub const fn actr(&self) -> &'static crate::common::Reg<self::Actr_SPEC, crate::common::RW> {
378 unsafe {
379 crate::common::Reg::<self::Actr_SPEC, crate::common::RW>::from_ptr(
380 self._svd2pac_as_ptr().add(29usize),
381 )
382 }
383 }
384}
385#[doc(hidden)]
386#[derive(Copy, Clone, Eq, PartialEq)]
387pub struct Smr_SPEC;
388impl crate::sealed::RegSpec for Smr_SPEC {
389 type DataType = u8;
390}
391
392#[doc = "Serial Mode Register for Non-Smart Card Interface Mode (SCMR.SMIF = 0)"]
393pub type Smr = crate::RegValueT<Smr_SPEC>;
394
395impl Smr {
396 #[doc = "Clock Select"]
397 #[inline(always)]
398 pub fn cks(
399 self,
400 ) -> crate::common::RegisterField<0, 0x3, 1, 0, smr::Cks, smr::Cks, Smr_SPEC, crate::common::RW>
401 {
402 crate::common::RegisterField::<0,0x3,1,0,smr::Cks,smr::Cks,Smr_SPEC,crate::common::RW>::from_register(self,0)
403 }
404
405 #[doc = "Multi-Processor Mode"]
406 #[inline(always)]
407 pub fn mp(
408 self,
409 ) -> crate::common::RegisterField<2, 0x1, 1, 0, smr::Mp, smr::Mp, Smr_SPEC, crate::common::RW>
410 {
411 crate::common::RegisterField::<2,0x1,1,0,smr::Mp,smr::Mp,Smr_SPEC,crate::common::RW>::from_register(self,0)
412 }
413
414 #[doc = "Stop Bit Length"]
415 #[inline(always)]
416 pub fn stop(
417 self,
418 ) -> crate::common::RegisterField<3, 0x1, 1, 0, smr::Stop, smr::Stop, Smr_SPEC, crate::common::RW>
419 {
420 crate::common::RegisterField::<
421 3,
422 0x1,
423 1,
424 0,
425 smr::Stop,
426 smr::Stop,
427 Smr_SPEC,
428 crate::common::RW,
429 >::from_register(self, 0)
430 }
431
432 #[doc = "Parity Mode"]
433 #[inline(always)]
434 pub fn pm(
435 self,
436 ) -> crate::common::RegisterField<4, 0x1, 1, 0, smr::Pm, smr::Pm, Smr_SPEC, crate::common::RW>
437 {
438 crate::common::RegisterField::<4,0x1,1,0,smr::Pm,smr::Pm,Smr_SPEC,crate::common::RW>::from_register(self,0)
439 }
440
441 #[doc = "Parity Enable"]
442 #[inline(always)]
443 pub fn pe(
444 self,
445 ) -> crate::common::RegisterField<5, 0x1, 1, 0, smr::Pe, smr::Pe, Smr_SPEC, crate::common::RW>
446 {
447 crate::common::RegisterField::<5,0x1,1,0,smr::Pe,smr::Pe,Smr_SPEC,crate::common::RW>::from_register(self,0)
448 }
449
450 #[doc = "Character Length"]
451 #[inline(always)]
452 pub fn chr(
453 self,
454 ) -> crate::common::RegisterField<6, 0x1, 1, 0, smr::Chr, smr::Chr, Smr_SPEC, crate::common::RW>
455 {
456 crate::common::RegisterField::<6,0x1,1,0,smr::Chr,smr::Chr,Smr_SPEC,crate::common::RW>::from_register(self,0)
457 }
458
459 #[doc = "Communication Mode"]
460 #[inline(always)]
461 pub fn cm(
462 self,
463 ) -> crate::common::RegisterField<7, 0x1, 1, 0, smr::Cm, smr::Cm, Smr_SPEC, crate::common::RW>
464 {
465 crate::common::RegisterField::<7,0x1,1,0,smr::Cm,smr::Cm,Smr_SPEC,crate::common::RW>::from_register(self,0)
466 }
467}
468impl ::core::default::Default for Smr {
469 #[inline(always)]
470 fn default() -> Smr {
471 <crate::RegValueT<Smr_SPEC> as RegisterValue<_>>::new(0)
472 }
473}
474pub mod smr {
475
476 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
477 pub struct Cks_SPEC;
478 pub type Cks = crate::EnumBitfieldStruct<u8, Cks_SPEC>;
479 impl Cks {
480 #[doc = "PCLK clock (n = 0)"]
481 pub const _00: Self = Self::new(0);
482
483 #[doc = "PCLK/4 clock (n = 1)"]
484 pub const _01: Self = Self::new(1);
485
486 #[doc = "PCLK/16 clock (n = 2)"]
487 pub const _10: Self = Self::new(2);
488
489 #[doc = "PCLK/64 clock (n = 3)"]
490 pub const _11: Self = Self::new(3);
491 }
492 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
493 pub struct Mp_SPEC;
494 pub type Mp = crate::EnumBitfieldStruct<u8, Mp_SPEC>;
495 impl Mp {
496 #[doc = "Disable multi-processor communications function"]
497 pub const _0: Self = Self::new(0);
498
499 #[doc = "Enable multi-processor communications function"]
500 pub const _1: Self = Self::new(1);
501 }
502 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
503 pub struct Stop_SPEC;
504 pub type Stop = crate::EnumBitfieldStruct<u8, Stop_SPEC>;
505 impl Stop {
506 #[doc = "1 stop bit"]
507 pub const _0: Self = Self::new(0);
508
509 #[doc = "2 stop bits"]
510 pub const _1: Self = Self::new(1);
511 }
512 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
513 pub struct Pm_SPEC;
514 pub type Pm = crate::EnumBitfieldStruct<u8, Pm_SPEC>;
515 impl Pm {
516 #[doc = "Even parity"]
517 pub const _0: Self = Self::new(0);
518
519 #[doc = "Odd parity"]
520 pub const _1: Self = Self::new(1);
521 }
522 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
523 pub struct Pe_SPEC;
524 pub type Pe = crate::EnumBitfieldStruct<u8, Pe_SPEC>;
525 impl Pe {
526 #[doc = "When transmitting: Do not add parity bit When receiving: Do not check parity bit"]
527 pub const _0: Self = Self::new(0);
528
529 #[doc = "When transmitting: Add parity bit When receiving: Check parity bit"]
530 pub const _1: Self = Self::new(1);
531 }
532 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
533 pub struct Chr_SPEC;
534 pub type Chr = crate::EnumBitfieldStruct<u8, Chr_SPEC>;
535 impl Chr {
536 #[doc = "SCMR.CHR1 = 0: Transmit/receive in 9-bit data length SCMR.CHR1 = 1: Transmit/receive in 8-bit data length (initial value)"]
537 pub const _0: Self = Self::new(0);
538
539 #[doc = "SCMR.CHR1 = 0: Transmit/receive in 9-bit data length SCMR.CHR1 = 1: Transmit/receive in 7-bit data length"]
540 pub const _1: Self = Self::new(1);
541 }
542 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
543 pub struct Cm_SPEC;
544 pub type Cm = crate::EnumBitfieldStruct<u8, Cm_SPEC>;
545 impl Cm {
546 #[doc = "Asynchronous mode or simple IIC mode"]
547 pub const _0: Self = Self::new(0);
548
549 #[doc = "Clock synchronous mode or simple SPI mode"]
550 pub const _1: Self = Self::new(1);
551 }
552}
553#[doc(hidden)]
554#[derive(Copy, Clone, Eq, PartialEq)]
555pub struct SmrSmci_SPEC;
556impl crate::sealed::RegSpec for SmrSmci_SPEC {
557 type DataType = u8;
558}
559
560#[doc = "Serial Mode Register for Smart Card Interface Mode (SCMR.SMIF = 1)"]
561pub type SmrSmci = crate::RegValueT<SmrSmci_SPEC>;
562
563impl SmrSmci {
564 #[doc = "Clock Select"]
565 #[inline(always)]
566 pub fn cks(
567 self,
568 ) -> crate::common::RegisterField<
569 0,
570 0x3,
571 1,
572 0,
573 smr_smci::Cks,
574 smr_smci::Cks,
575 SmrSmci_SPEC,
576 crate::common::RW,
577 > {
578 crate::common::RegisterField::<
579 0,
580 0x3,
581 1,
582 0,
583 smr_smci::Cks,
584 smr_smci::Cks,
585 SmrSmci_SPEC,
586 crate::common::RW,
587 >::from_register(self, 0)
588 }
589
590 #[doc = "Base Clock Pulse"]
591 #[inline(always)]
592 pub fn bcp(
593 self,
594 ) -> crate::common::RegisterField<2, 0x3, 1, 0, u8, u8, SmrSmci_SPEC, crate::common::RW> {
595 crate::common::RegisterField::<2,0x3,1,0,u8,u8,SmrSmci_SPEC,crate::common::RW>::from_register(self,0)
596 }
597
598 #[doc = "Parity Mode"]
599 #[inline(always)]
600 pub fn pm(
601 self,
602 ) -> crate::common::RegisterField<
603 4,
604 0x1,
605 1,
606 0,
607 smr_smci::Pm,
608 smr_smci::Pm,
609 SmrSmci_SPEC,
610 crate::common::RW,
611 > {
612 crate::common::RegisterField::<
613 4,
614 0x1,
615 1,
616 0,
617 smr_smci::Pm,
618 smr_smci::Pm,
619 SmrSmci_SPEC,
620 crate::common::RW,
621 >::from_register(self, 0)
622 }
623
624 #[doc = "Parity Enable"]
625 #[inline(always)]
626 pub fn pe(self) -> crate::common::RegisterFieldBool<5, 1, 0, SmrSmci_SPEC, crate::common::RW> {
627 crate::common::RegisterFieldBool::<5, 1, 0, SmrSmci_SPEC, crate::common::RW>::from_register(
628 self, 0,
629 )
630 }
631
632 #[doc = "Block Transfer Mode"]
633 #[inline(always)]
634 pub fn blk(
635 self,
636 ) -> crate::common::RegisterField<
637 6,
638 0x1,
639 1,
640 0,
641 smr_smci::Blk,
642 smr_smci::Blk,
643 SmrSmci_SPEC,
644 crate::common::RW,
645 > {
646 crate::common::RegisterField::<
647 6,
648 0x1,
649 1,
650 0,
651 smr_smci::Blk,
652 smr_smci::Blk,
653 SmrSmci_SPEC,
654 crate::common::RW,
655 >::from_register(self, 0)
656 }
657
658 #[doc = "GSM Mode"]
659 #[inline(always)]
660 pub fn gm(
661 self,
662 ) -> crate::common::RegisterField<
663 7,
664 0x1,
665 1,
666 0,
667 smr_smci::Gm,
668 smr_smci::Gm,
669 SmrSmci_SPEC,
670 crate::common::RW,
671 > {
672 crate::common::RegisterField::<
673 7,
674 0x1,
675 1,
676 0,
677 smr_smci::Gm,
678 smr_smci::Gm,
679 SmrSmci_SPEC,
680 crate::common::RW,
681 >::from_register(self, 0)
682 }
683}
684impl ::core::default::Default for SmrSmci {
685 #[inline(always)]
686 fn default() -> SmrSmci {
687 <crate::RegValueT<SmrSmci_SPEC> as RegisterValue<_>>::new(0)
688 }
689}
690pub mod smr_smci {
691
692 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
693 pub struct Cks_SPEC;
694 pub type Cks = crate::EnumBitfieldStruct<u8, Cks_SPEC>;
695 impl Cks {
696 #[doc = "PCLK clock (n = 0)"]
697 pub const _00: Self = Self::new(0);
698
699 #[doc = "PCLK/4 clock (n = 1)"]
700 pub const _01: Self = Self::new(1);
701
702 #[doc = "PCLK/16 clock (n = 2)"]
703 pub const _10: Self = Self::new(2);
704
705 #[doc = "PCLK/64 clock (n = 3)"]
706 pub const _11: Self = Self::new(3);
707 }
708 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
709 pub struct Pm_SPEC;
710 pub type Pm = crate::EnumBitfieldStruct<u8, Pm_SPEC>;
711 impl Pm {
712 #[doc = "Even parity"]
713 pub const _0: Self = Self::new(0);
714
715 #[doc = "Odd parity"]
716 pub const _1: Self = Self::new(1);
717 }
718 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
719 pub struct Blk_SPEC;
720 pub type Blk = crate::EnumBitfieldStruct<u8, Blk_SPEC>;
721 impl Blk {
722 #[doc = "Normal mode operation"]
723 pub const _0: Self = Self::new(0);
724
725 #[doc = "Block transfer mode operation"]
726 pub const _1: Self = Self::new(1);
727 }
728 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
729 pub struct Gm_SPEC;
730 pub type Gm = crate::EnumBitfieldStruct<u8, Gm_SPEC>;
731 impl Gm {
732 #[doc = "Normal mode operation"]
733 pub const _0: Self = Self::new(0);
734
735 #[doc = "GSM mode operation"]
736 pub const _1: Self = Self::new(1);
737 }
738}
739#[doc(hidden)]
740#[derive(Copy, Clone, Eq, PartialEq)]
741pub struct Brr_SPEC;
742impl crate::sealed::RegSpec for Brr_SPEC {
743 type DataType = u8;
744}
745
746#[doc = "Bit Rate Register"]
747pub type Brr = crate::RegValueT<Brr_SPEC>;
748
749impl NoBitfieldReg<Brr_SPEC> for Brr {}
750impl ::core::default::Default for Brr {
751 #[inline(always)]
752 fn default() -> Brr {
753 <crate::RegValueT<Brr_SPEC> as RegisterValue<_>>::new(255)
754 }
755}
756
757#[doc(hidden)]
758#[derive(Copy, Clone, Eq, PartialEq)]
759pub struct Scr_SPEC;
760impl crate::sealed::RegSpec for Scr_SPEC {
761 type DataType = u8;
762}
763
764#[doc = "Serial Control Register for Non-Smart Card Interface Mode (SCMR.SMIF = 0)"]
765pub type Scr = crate::RegValueT<Scr_SPEC>;
766
767impl Scr {
768 #[doc = "Clock Enable"]
769 #[inline(always)]
770 pub fn cke(
771 self,
772 ) -> crate::common::RegisterField<0, 0x3, 1, 0, scr::Cke, scr::Cke, Scr_SPEC, crate::common::RW>
773 {
774 crate::common::RegisterField::<0,0x3,1,0,scr::Cke,scr::Cke,Scr_SPEC,crate::common::RW>::from_register(self,0)
775 }
776
777 #[doc = "Transmit End Interrupt Enable"]
778 #[inline(always)]
779 pub fn teie(
780 self,
781 ) -> crate::common::RegisterField<2, 0x1, 1, 0, scr::Teie, scr::Teie, Scr_SPEC, crate::common::RW>
782 {
783 crate::common::RegisterField::<
784 2,
785 0x1,
786 1,
787 0,
788 scr::Teie,
789 scr::Teie,
790 Scr_SPEC,
791 crate::common::RW,
792 >::from_register(self, 0)
793 }
794
795 #[doc = "Multi-Processor Interrupt Enable"]
796 #[inline(always)]
797 pub fn mpie(
798 self,
799 ) -> crate::common::RegisterField<3, 0x1, 1, 0, scr::Mpie, scr::Mpie, Scr_SPEC, crate::common::RW>
800 {
801 crate::common::RegisterField::<
802 3,
803 0x1,
804 1,
805 0,
806 scr::Mpie,
807 scr::Mpie,
808 Scr_SPEC,
809 crate::common::RW,
810 >::from_register(self, 0)
811 }
812
813 #[doc = "Receive Enable"]
814 #[inline(always)]
815 pub fn re(
816 self,
817 ) -> crate::common::RegisterField<4, 0x1, 1, 0, scr::Re, scr::Re, Scr_SPEC, crate::common::RW>
818 {
819 crate::common::RegisterField::<4,0x1,1,0,scr::Re,scr::Re,Scr_SPEC,crate::common::RW>::from_register(self,0)
820 }
821
822 #[doc = "Transmit Enable"]
823 #[inline(always)]
824 pub fn te(
825 self,
826 ) -> crate::common::RegisterField<5, 0x1, 1, 0, scr::Te, scr::Te, Scr_SPEC, crate::common::RW>
827 {
828 crate::common::RegisterField::<5,0x1,1,0,scr::Te,scr::Te,Scr_SPEC,crate::common::RW>::from_register(self,0)
829 }
830
831 #[doc = "Receive Interrupt Enable"]
832 #[inline(always)]
833 pub fn rie(
834 self,
835 ) -> crate::common::RegisterField<6, 0x1, 1, 0, scr::Rie, scr::Rie, Scr_SPEC, crate::common::RW>
836 {
837 crate::common::RegisterField::<6,0x1,1,0,scr::Rie,scr::Rie,Scr_SPEC,crate::common::RW>::from_register(self,0)
838 }
839
840 #[doc = "Transmit Interrupt Enable"]
841 #[inline(always)]
842 pub fn tie(
843 self,
844 ) -> crate::common::RegisterField<7, 0x1, 1, 0, scr::Tie, scr::Tie, Scr_SPEC, crate::common::RW>
845 {
846 crate::common::RegisterField::<7,0x1,1,0,scr::Tie,scr::Tie,Scr_SPEC,crate::common::RW>::from_register(self,0)
847 }
848}
849impl ::core::default::Default for Scr {
850 #[inline(always)]
851 fn default() -> Scr {
852 <crate::RegValueT<Scr_SPEC> as RegisterValue<_>>::new(0)
853 }
854}
855pub mod scr {
856
857 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
858 pub struct Cke_SPEC;
859 pub type Cke = crate::EnumBitfieldStruct<u8, Cke_SPEC>;
860 impl Cke {
861 #[doc = "In asynchronous mode, the SCKn pin is available for use as an I/O port based on the I/O port settings. In clock synchronous mode, the SCKn pin functions as the clock output pin."]
862 pub const _00: Self = Self::new(0);
863
864 #[doc = "In asynchronous mode, a clock with the same frequency as the bit rate is output from the SCKn pin. In clock synchronous mode, the SCKn pin functions as the clock output pin."]
865 pub const _01: Self = Self::new(1);
866 }
867 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
868 pub struct Teie_SPEC;
869 pub type Teie = crate::EnumBitfieldStruct<u8, Teie_SPEC>;
870 impl Teie {
871 #[doc = "Disable SCIn_TEI interrupt requests"]
872 pub const _0: Self = Self::new(0);
873
874 #[doc = "Enable SCIn_TEI interrupt requests"]
875 pub const _1: Self = Self::new(1);
876 }
877 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
878 pub struct Mpie_SPEC;
879 pub type Mpie = crate::EnumBitfieldStruct<u8, Mpie_SPEC>;
880 impl Mpie {
881 #[doc = "Normal reception"]
882 pub const _0: Self = Self::new(0);
883
884 #[doc = "When data with the multi-processor bit set to 0 is received, the data is not read, and setting the status flags RDRF, ORER, and FER in SSR to 1 and the status flags SYER, PFER, and SBER in MESR are disabled. When data with the multi-processor bit set to 1 is received, the MPIE bit is automatically set to 0, and normal reception is resumed."]
885 pub const _1: Self = Self::new(1);
886 }
887 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
888 pub struct Re_SPEC;
889 pub type Re = crate::EnumBitfieldStruct<u8, Re_SPEC>;
890 impl Re {
891 #[doc = "Disable serial reception"]
892 pub const _0: Self = Self::new(0);
893
894 #[doc = "Enable serial reception"]
895 pub const _1: Self = Self::new(1);
896 }
897 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
898 pub struct Te_SPEC;
899 pub type Te = crate::EnumBitfieldStruct<u8, Te_SPEC>;
900 impl Te {
901 #[doc = "Disable serial transmission"]
902 pub const _0: Self = Self::new(0);
903
904 #[doc = "Enable serial transmission"]
905 pub const _1: Self = Self::new(1);
906 }
907 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
908 pub struct Rie_SPEC;
909 pub type Rie = crate::EnumBitfieldStruct<u8, Rie_SPEC>;
910 impl Rie {
911 #[doc = "Disable SCIn_RXI and SCIn_ERI interrupt requests"]
912 pub const _0: Self = Self::new(0);
913
914 #[doc = "Enable SCIn_RXI and SCIn_ERI interrupt requests"]
915 pub const _1: Self = Self::new(1);
916 }
917 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
918 pub struct Tie_SPEC;
919 pub type Tie = crate::EnumBitfieldStruct<u8, Tie_SPEC>;
920 impl Tie {
921 #[doc = "Disable SCIn_TXI interrupt requests"]
922 pub const _0: Self = Self::new(0);
923
924 #[doc = "Enable SCIn_TXI interrupt requests"]
925 pub const _1: Self = Self::new(1);
926 }
927}
928#[doc(hidden)]
929#[derive(Copy, Clone, Eq, PartialEq)]
930pub struct ScrSmci_SPEC;
931impl crate::sealed::RegSpec for ScrSmci_SPEC {
932 type DataType = u8;
933}
934
935#[doc = "Serial Control Register for Smart Card Interface Mode (SCMR.SMIF = 1)"]
936pub type ScrSmci = crate::RegValueT<ScrSmci_SPEC>;
937
938impl ScrSmci {
939 #[doc = "Clock Enable"]
940 #[inline(always)]
941 pub fn cke(
942 self,
943 ) -> crate::common::RegisterField<
944 0,
945 0x3,
946 1,
947 0,
948 scr_smci::Cke,
949 scr_smci::Cke,
950 ScrSmci_SPEC,
951 crate::common::RW,
952 > {
953 crate::common::RegisterField::<
954 0,
955 0x3,
956 1,
957 0,
958 scr_smci::Cke,
959 scr_smci::Cke,
960 ScrSmci_SPEC,
961 crate::common::RW,
962 >::from_register(self, 0)
963 }
964
965 #[doc = "Transmit End Interrupt Enable"]
966 #[inline(always)]
967 pub fn teie(
968 self,
969 ) -> crate::common::RegisterFieldBool<2, 1, 0, ScrSmci_SPEC, crate::common::RW> {
970 crate::common::RegisterFieldBool::<2, 1, 0, ScrSmci_SPEC, crate::common::RW>::from_register(
971 self, 0,
972 )
973 }
974
975 #[doc = "Multi-Processor Interrupt Enable"]
976 #[inline(always)]
977 pub fn mpie(
978 self,
979 ) -> crate::common::RegisterFieldBool<3, 1, 0, ScrSmci_SPEC, crate::common::RW> {
980 crate::common::RegisterFieldBool::<3, 1, 0, ScrSmci_SPEC, crate::common::RW>::from_register(
981 self, 0,
982 )
983 }
984
985 #[doc = "Receive Enable"]
986 #[inline(always)]
987 pub fn re(
988 self,
989 ) -> crate::common::RegisterField<
990 4,
991 0x1,
992 1,
993 0,
994 scr_smci::Re,
995 scr_smci::Re,
996 ScrSmci_SPEC,
997 crate::common::RW,
998 > {
999 crate::common::RegisterField::<
1000 4,
1001 0x1,
1002 1,
1003 0,
1004 scr_smci::Re,
1005 scr_smci::Re,
1006 ScrSmci_SPEC,
1007 crate::common::RW,
1008 >::from_register(self, 0)
1009 }
1010
1011 #[doc = "Transmit Enable"]
1012 #[inline(always)]
1013 pub fn te(
1014 self,
1015 ) -> crate::common::RegisterField<
1016 5,
1017 0x1,
1018 1,
1019 0,
1020 scr_smci::Te,
1021 scr_smci::Te,
1022 ScrSmci_SPEC,
1023 crate::common::RW,
1024 > {
1025 crate::common::RegisterField::<
1026 5,
1027 0x1,
1028 1,
1029 0,
1030 scr_smci::Te,
1031 scr_smci::Te,
1032 ScrSmci_SPEC,
1033 crate::common::RW,
1034 >::from_register(self, 0)
1035 }
1036
1037 #[doc = "Receive Interrupt Enable"]
1038 #[inline(always)]
1039 pub fn rie(
1040 self,
1041 ) -> crate::common::RegisterField<
1042 6,
1043 0x1,
1044 1,
1045 0,
1046 scr_smci::Rie,
1047 scr_smci::Rie,
1048 ScrSmci_SPEC,
1049 crate::common::RW,
1050 > {
1051 crate::common::RegisterField::<
1052 6,
1053 0x1,
1054 1,
1055 0,
1056 scr_smci::Rie,
1057 scr_smci::Rie,
1058 ScrSmci_SPEC,
1059 crate::common::RW,
1060 >::from_register(self, 0)
1061 }
1062
1063 #[doc = "Transmit Interrupt Enable"]
1064 #[inline(always)]
1065 pub fn tie(
1066 self,
1067 ) -> crate::common::RegisterField<
1068 7,
1069 0x1,
1070 1,
1071 0,
1072 scr_smci::Tie,
1073 scr_smci::Tie,
1074 ScrSmci_SPEC,
1075 crate::common::RW,
1076 > {
1077 crate::common::RegisterField::<
1078 7,
1079 0x1,
1080 1,
1081 0,
1082 scr_smci::Tie,
1083 scr_smci::Tie,
1084 ScrSmci_SPEC,
1085 crate::common::RW,
1086 >::from_register(self, 0)
1087 }
1088}
1089impl ::core::default::Default for ScrSmci {
1090 #[inline(always)]
1091 fn default() -> ScrSmci {
1092 <crate::RegValueT<ScrSmci_SPEC> as RegisterValue<_>>::new(0)
1093 }
1094}
1095pub mod scr_smci {
1096
1097 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1098 pub struct Cke_SPEC;
1099 pub type Cke = crate::EnumBitfieldStruct<u8, Cke_SPEC>;
1100 impl Cke {
1101 #[doc = "When SMR_SMCI.GM = 0: Disable output The SCKn pin is available for use as an I/O port if set up in the I/O port settings When SMR_SMCI.GM = 1: Fix output low"]
1102 pub const _00: Self = Self::new(0);
1103
1104 #[doc = "When SMR_SMCI.GM = 0: Output clock When SMR_SMCI.GM = 1: Output clock"]
1105 pub const _01: Self = Self::new(1);
1106
1107 #[doc = "When SMR_SMCI.GM = 0: Setting prohibited When SMR_SMCI.GM = 1: Fix output high"]
1108 pub const _10: Self = Self::new(2);
1109
1110 #[doc = "When SMR_SMCI.GM = 0: Setting prohibited When SMR_SMCI.GM = 1: Output clock"]
1111 pub const _11: Self = Self::new(3);
1112 }
1113 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1114 pub struct Re_SPEC;
1115 pub type Re = crate::EnumBitfieldStruct<u8, Re_SPEC>;
1116 impl Re {
1117 #[doc = "Disable serial reception"]
1118 pub const _0: Self = Self::new(0);
1119
1120 #[doc = "Enable serial reception"]
1121 pub const _1: Self = Self::new(1);
1122 }
1123 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1124 pub struct Te_SPEC;
1125 pub type Te = crate::EnumBitfieldStruct<u8, Te_SPEC>;
1126 impl Te {
1127 #[doc = "Disable serial transmission"]
1128 pub const _0: Self = Self::new(0);
1129
1130 #[doc = "Enable serial transmission"]
1131 pub const _1: Self = Self::new(1);
1132 }
1133 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1134 pub struct Rie_SPEC;
1135 pub type Rie = crate::EnumBitfieldStruct<u8, Rie_SPEC>;
1136 impl Rie {
1137 #[doc = "Disable SCIn_RXI and SCIn_ERI interrupt requests"]
1138 pub const _0: Self = Self::new(0);
1139
1140 #[doc = "Enable SCIn_RXI and SCIn_ERI interrupt requests"]
1141 pub const _1: Self = Self::new(1);
1142 }
1143 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1144 pub struct Tie_SPEC;
1145 pub type Tie = crate::EnumBitfieldStruct<u8, Tie_SPEC>;
1146 impl Tie {
1147 #[doc = "Disable SCIn_TXI interrupt requests"]
1148 pub const _0: Self = Self::new(0);
1149
1150 #[doc = "Enable SCIn_TXI interrupt requests"]
1151 pub const _1: Self = Self::new(1);
1152 }
1153}
1154#[doc(hidden)]
1155#[derive(Copy, Clone, Eq, PartialEq)]
1156pub struct Tdr_SPEC;
1157impl crate::sealed::RegSpec for Tdr_SPEC {
1158 type DataType = u8;
1159}
1160
1161#[doc = "Transmit Data Register"]
1162pub type Tdr = crate::RegValueT<Tdr_SPEC>;
1163
1164impl NoBitfieldReg<Tdr_SPEC> for Tdr {}
1165impl ::core::default::Default for Tdr {
1166 #[inline(always)]
1167 fn default() -> Tdr {
1168 <crate::RegValueT<Tdr_SPEC> as RegisterValue<_>>::new(255)
1169 }
1170}
1171
1172#[doc(hidden)]
1173#[derive(Copy, Clone, Eq, PartialEq)]
1174pub struct Ssr_SPEC;
1175impl crate::sealed::RegSpec for Ssr_SPEC {
1176 type DataType = u8;
1177}
1178
1179#[doc = "Serial Status Register for Non-Smart Card Interface and Non-FIFO Mode (SCMR.SMIF = 0, FCR.FM = 0, and MMR.MANEN = 0)"]
1180pub type Ssr = crate::RegValueT<Ssr_SPEC>;
1181
1182impl Ssr {
1183 #[doc = "Multi-Processor Bit Transfer"]
1184 #[inline(always)]
1185 pub fn mpbt(
1186 self,
1187 ) -> crate::common::RegisterField<0, 0x1, 1, 0, ssr::Mpbt, ssr::Mpbt, Ssr_SPEC, crate::common::RW>
1188 {
1189 crate::common::RegisterField::<
1190 0,
1191 0x1,
1192 1,
1193 0,
1194 ssr::Mpbt,
1195 ssr::Mpbt,
1196 Ssr_SPEC,
1197 crate::common::RW,
1198 >::from_register(self, 0)
1199 }
1200
1201 #[doc = "Multi-Processor"]
1202 #[inline(always)]
1203 pub fn mpb(
1204 self,
1205 ) -> crate::common::RegisterField<1, 0x1, 1, 0, ssr::Mpb, ssr::Mpb, Ssr_SPEC, crate::common::R>
1206 {
1207 crate::common::RegisterField::<1,0x1,1,0,ssr::Mpb,ssr::Mpb,Ssr_SPEC,crate::common::R>::from_register(self,0)
1208 }
1209
1210 #[doc = "Transmit End Flag"]
1211 #[inline(always)]
1212 pub fn tend(
1213 self,
1214 ) -> crate::common::RegisterField<2, 0x1, 1, 0, ssr::Tend, ssr::Tend, Ssr_SPEC, crate::common::R>
1215 {
1216 crate::common::RegisterField::<2,0x1,1,0,ssr::Tend,ssr::Tend,Ssr_SPEC,crate::common::R>::from_register(self,0)
1217 }
1218
1219 #[doc = "Parity Error Flag"]
1220 #[inline(always)]
1221 pub fn per(
1222 self,
1223 ) -> crate::common::RegisterField<3, 0x1, 1, 0, ssr::Per, ssr::Per, Ssr_SPEC, crate::common::RW>
1224 {
1225 crate::common::RegisterField::<3,0x1,1,0,ssr::Per,ssr::Per,Ssr_SPEC,crate::common::RW>::from_register(self,0)
1226 }
1227
1228 #[doc = "Framing Error Flag"]
1229 #[inline(always)]
1230 pub fn fer(
1231 self,
1232 ) -> crate::common::RegisterField<4, 0x1, 1, 0, ssr::Fer, ssr::Fer, Ssr_SPEC, crate::common::RW>
1233 {
1234 crate::common::RegisterField::<4,0x1,1,0,ssr::Fer,ssr::Fer,Ssr_SPEC,crate::common::RW>::from_register(self,0)
1235 }
1236
1237 #[doc = "Overrun Error Flag"]
1238 #[inline(always)]
1239 pub fn orer(
1240 self,
1241 ) -> crate::common::RegisterField<5, 0x1, 1, 0, ssr::Orer, ssr::Orer, Ssr_SPEC, crate::common::RW>
1242 {
1243 crate::common::RegisterField::<
1244 5,
1245 0x1,
1246 1,
1247 0,
1248 ssr::Orer,
1249 ssr::Orer,
1250 Ssr_SPEC,
1251 crate::common::RW,
1252 >::from_register(self, 0)
1253 }
1254
1255 #[doc = "Receive Data Full Flag"]
1256 #[inline(always)]
1257 pub fn rdrf(
1258 self,
1259 ) -> crate::common::RegisterField<6, 0x1, 1, 0, ssr::Rdrf, ssr::Rdrf, Ssr_SPEC, crate::common::RW>
1260 {
1261 crate::common::RegisterField::<
1262 6,
1263 0x1,
1264 1,
1265 0,
1266 ssr::Rdrf,
1267 ssr::Rdrf,
1268 Ssr_SPEC,
1269 crate::common::RW,
1270 >::from_register(self, 0)
1271 }
1272
1273 #[doc = "Transmit Data Empty Flag"]
1274 #[inline(always)]
1275 pub fn tdre(
1276 self,
1277 ) -> crate::common::RegisterField<7, 0x1, 1, 0, ssr::Tdre, ssr::Tdre, Ssr_SPEC, crate::common::RW>
1278 {
1279 crate::common::RegisterField::<
1280 7,
1281 0x1,
1282 1,
1283 0,
1284 ssr::Tdre,
1285 ssr::Tdre,
1286 Ssr_SPEC,
1287 crate::common::RW,
1288 >::from_register(self, 0)
1289 }
1290}
1291impl ::core::default::Default for Ssr {
1292 #[inline(always)]
1293 fn default() -> Ssr {
1294 <crate::RegValueT<Ssr_SPEC> as RegisterValue<_>>::new(132)
1295 }
1296}
1297pub mod ssr {
1298
1299 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1300 pub struct Mpbt_SPEC;
1301 pub type Mpbt = crate::EnumBitfieldStruct<u8, Mpbt_SPEC>;
1302 impl Mpbt {
1303 #[doc = "Data transmission cycle"]
1304 pub const _0: Self = Self::new(0);
1305
1306 #[doc = "ID transmission cycle"]
1307 pub const _1: Self = Self::new(1);
1308 }
1309 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1310 pub struct Mpb_SPEC;
1311 pub type Mpb = crate::EnumBitfieldStruct<u8, Mpb_SPEC>;
1312 impl Mpb {
1313 #[doc = "Data transmission cycle"]
1314 pub const _0: Self = Self::new(0);
1315
1316 #[doc = "ID transmission cycle"]
1317 pub const _1: Self = Self::new(1);
1318 }
1319 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1320 pub struct Tend_SPEC;
1321 pub type Tend = crate::EnumBitfieldStruct<u8, Tend_SPEC>;
1322 impl Tend {
1323 #[doc = "A character is being transmitted"]
1324 pub const _0: Self = Self::new(0);
1325
1326 #[doc = "Character transfer is complete"]
1327 pub const _1: Self = Self::new(1);
1328 }
1329 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1330 pub struct Per_SPEC;
1331 pub type Per = crate::EnumBitfieldStruct<u8, Per_SPEC>;
1332 impl Per {
1333 #[doc = "No parity error occurred"]
1334 pub const _0: Self = Self::new(0);
1335
1336 #[doc = "Parity error occurred"]
1337 pub const _1: Self = Self::new(1);
1338 }
1339 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1340 pub struct Fer_SPEC;
1341 pub type Fer = crate::EnumBitfieldStruct<u8, Fer_SPEC>;
1342 impl Fer {
1343 #[doc = "No framing error occurred"]
1344 pub const _0: Self = Self::new(0);
1345
1346 #[doc = "Framing error occurred"]
1347 pub const _1: Self = Self::new(1);
1348 }
1349 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1350 pub struct Orer_SPEC;
1351 pub type Orer = crate::EnumBitfieldStruct<u8, Orer_SPEC>;
1352 impl Orer {
1353 #[doc = "No overrun error occurred"]
1354 pub const _0: Self = Self::new(0);
1355
1356 #[doc = "Overrun error occurred"]
1357 pub const _1: Self = Self::new(1);
1358 }
1359 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1360 pub struct Rdrf_SPEC;
1361 pub type Rdrf = crate::EnumBitfieldStruct<u8, Rdrf_SPEC>;
1362 impl Rdrf {
1363 #[doc = "No received data in RDR register"]
1364 pub const _0: Self = Self::new(0);
1365
1366 #[doc = "Received data in RDR register"]
1367 pub const _1: Self = Self::new(1);
1368 }
1369 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1370 pub struct Tdre_SPEC;
1371 pub type Tdre = crate::EnumBitfieldStruct<u8, Tdre_SPEC>;
1372 impl Tdre {
1373 #[doc = "Transmit data in TDR register"]
1374 pub const _0: Self = Self::new(0);
1375
1376 #[doc = "No transmit data in TDR register"]
1377 pub const _1: Self = Self::new(1);
1378 }
1379}
1380#[doc(hidden)]
1381#[derive(Copy, Clone, Eq, PartialEq)]
1382pub struct SsrFifo_SPEC;
1383impl crate::sealed::RegSpec for SsrFifo_SPEC {
1384 type DataType = u8;
1385}
1386
1387#[doc = "Serial Status Register for Non-Smart Card Interface and FIFO Mode (SCMR.SMIF = 0, FCR.FM = 1, and MMR.MANEN = 0)"]
1388pub type SsrFifo = crate::RegValueT<SsrFifo_SPEC>;
1389
1390impl SsrFifo {
1391 #[doc = "Receive Data Ready Flag"]
1392 #[inline(always)]
1393 pub fn dr(
1394 self,
1395 ) -> crate::common::RegisterField<
1396 0,
1397 0x1,
1398 1,
1399 0,
1400 ssr_fifo::Dr,
1401 ssr_fifo::Dr,
1402 SsrFifo_SPEC,
1403 crate::common::RW,
1404 > {
1405 crate::common::RegisterField::<
1406 0,
1407 0x1,
1408 1,
1409 0,
1410 ssr_fifo::Dr,
1411 ssr_fifo::Dr,
1412 SsrFifo_SPEC,
1413 crate::common::RW,
1414 >::from_register(self, 0)
1415 }
1416
1417 #[doc = "Transmit End Flag"]
1418 #[inline(always)]
1419 pub fn tend(
1420 self,
1421 ) -> crate::common::RegisterField<
1422 2,
1423 0x1,
1424 1,
1425 0,
1426 ssr_fifo::Tend,
1427 ssr_fifo::Tend,
1428 SsrFifo_SPEC,
1429 crate::common::RW,
1430 > {
1431 crate::common::RegisterField::<
1432 2,
1433 0x1,
1434 1,
1435 0,
1436 ssr_fifo::Tend,
1437 ssr_fifo::Tend,
1438 SsrFifo_SPEC,
1439 crate::common::RW,
1440 >::from_register(self, 0)
1441 }
1442
1443 #[doc = "Parity Error Flag"]
1444 #[inline(always)]
1445 pub fn per(
1446 self,
1447 ) -> crate::common::RegisterField<
1448 3,
1449 0x1,
1450 1,
1451 0,
1452 ssr_fifo::Per,
1453 ssr_fifo::Per,
1454 SsrFifo_SPEC,
1455 crate::common::RW,
1456 > {
1457 crate::common::RegisterField::<
1458 3,
1459 0x1,
1460 1,
1461 0,
1462 ssr_fifo::Per,
1463 ssr_fifo::Per,
1464 SsrFifo_SPEC,
1465 crate::common::RW,
1466 >::from_register(self, 0)
1467 }
1468
1469 #[doc = "Framing Error Flag"]
1470 #[inline(always)]
1471 pub fn fer(
1472 self,
1473 ) -> crate::common::RegisterField<
1474 4,
1475 0x1,
1476 1,
1477 0,
1478 ssr_fifo::Fer,
1479 ssr_fifo::Fer,
1480 SsrFifo_SPEC,
1481 crate::common::RW,
1482 > {
1483 crate::common::RegisterField::<
1484 4,
1485 0x1,
1486 1,
1487 0,
1488 ssr_fifo::Fer,
1489 ssr_fifo::Fer,
1490 SsrFifo_SPEC,
1491 crate::common::RW,
1492 >::from_register(self, 0)
1493 }
1494
1495 #[doc = "Overrun Error Flag"]
1496 #[inline(always)]
1497 pub fn orer(
1498 self,
1499 ) -> crate::common::RegisterField<
1500 5,
1501 0x1,
1502 1,
1503 0,
1504 ssr_fifo::Orer,
1505 ssr_fifo::Orer,
1506 SsrFifo_SPEC,
1507 crate::common::RW,
1508 > {
1509 crate::common::RegisterField::<
1510 5,
1511 0x1,
1512 1,
1513 0,
1514 ssr_fifo::Orer,
1515 ssr_fifo::Orer,
1516 SsrFifo_SPEC,
1517 crate::common::RW,
1518 >::from_register(self, 0)
1519 }
1520
1521 #[doc = "Receive FIFO Data Full Flag"]
1522 #[inline(always)]
1523 pub fn rdf(
1524 self,
1525 ) -> crate::common::RegisterField<
1526 6,
1527 0x1,
1528 1,
1529 0,
1530 ssr_fifo::Rdf,
1531 ssr_fifo::Rdf,
1532 SsrFifo_SPEC,
1533 crate::common::RW,
1534 > {
1535 crate::common::RegisterField::<
1536 6,
1537 0x1,
1538 1,
1539 0,
1540 ssr_fifo::Rdf,
1541 ssr_fifo::Rdf,
1542 SsrFifo_SPEC,
1543 crate::common::RW,
1544 >::from_register(self, 0)
1545 }
1546
1547 #[doc = "Transmit FIFO Data Empty Flag"]
1548 #[inline(always)]
1549 pub fn tdfe(
1550 self,
1551 ) -> crate::common::RegisterField<
1552 7,
1553 0x1,
1554 1,
1555 0,
1556 ssr_fifo::Tdfe,
1557 ssr_fifo::Tdfe,
1558 SsrFifo_SPEC,
1559 crate::common::RW,
1560 > {
1561 crate::common::RegisterField::<
1562 7,
1563 0x1,
1564 1,
1565 0,
1566 ssr_fifo::Tdfe,
1567 ssr_fifo::Tdfe,
1568 SsrFifo_SPEC,
1569 crate::common::RW,
1570 >::from_register(self, 0)
1571 }
1572}
1573impl ::core::default::Default for SsrFifo {
1574 #[inline(always)]
1575 fn default() -> SsrFifo {
1576 <crate::RegValueT<SsrFifo_SPEC> as RegisterValue<_>>::new(128)
1577 }
1578}
1579pub mod ssr_fifo {
1580
1581 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1582 pub struct Dr_SPEC;
1583 pub type Dr = crate::EnumBitfieldStruct<u8, Dr_SPEC>;
1584 impl Dr {
1585 #[doc = "Receiving is in progress, or no received data remains in FRDRHL after successfully completed reception (receive FIFO empty)"]
1586 pub const _0: Self = Self::new(0);
1587
1588 #[doc = "Next receive data is not received for a period after normal receiving is complete, when the amount of data stored in the FIFO is equal to or less than the receive triggering number"]
1589 pub const _1: Self = Self::new(1);
1590 }
1591 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1592 pub struct Tend_SPEC;
1593 pub type Tend = crate::EnumBitfieldStruct<u8, Tend_SPEC>;
1594 impl Tend {
1595 #[doc = "A character is being transmitted"]
1596 pub const _0: Self = Self::new(0);
1597
1598 #[doc = "Character transfer is complete"]
1599 pub const _1: Self = Self::new(1);
1600 }
1601 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1602 pub struct Per_SPEC;
1603 pub type Per = crate::EnumBitfieldStruct<u8, Per_SPEC>;
1604 impl Per {
1605 #[doc = "No parity error occurred"]
1606 pub const _0: Self = Self::new(0);
1607
1608 #[doc = "Parity error occurred"]
1609 pub const _1: Self = Self::new(1);
1610 }
1611 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1612 pub struct Fer_SPEC;
1613 pub type Fer = crate::EnumBitfieldStruct<u8, Fer_SPEC>;
1614 impl Fer {
1615 #[doc = "No framing error occurred"]
1616 pub const _0: Self = Self::new(0);
1617
1618 #[doc = "Framing error occurred"]
1619 pub const _1: Self = Self::new(1);
1620 }
1621 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1622 pub struct Orer_SPEC;
1623 pub type Orer = crate::EnumBitfieldStruct<u8, Orer_SPEC>;
1624 impl Orer {
1625 #[doc = "No overrun error occurred"]
1626 pub const _0: Self = Self::new(0);
1627
1628 #[doc = "Overrun error occurred"]
1629 pub const _1: Self = Self::new(1);
1630 }
1631 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1632 pub struct Rdf_SPEC;
1633 pub type Rdf = crate::EnumBitfieldStruct<u8, Rdf_SPEC>;
1634 impl Rdf {
1635 #[doc = "The amount of receive data written in FRDRHL is less than the specified receive triggering number"]
1636 pub const _0: Self = Self::new(0);
1637
1638 #[doc = "The amount of receive data written in FRDRHL is equal to or greater than the specified receive triggering number"]
1639 pub const _1: Self = Self::new(1);
1640 }
1641 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1642 pub struct Tdfe_SPEC;
1643 pub type Tdfe = crate::EnumBitfieldStruct<u8, Tdfe_SPEC>;
1644 impl Tdfe {
1645 #[doc = "The amount of transmit data written in FTDRHL exceeds the specified transmit triggering number"]
1646 pub const _0: Self = Self::new(0);
1647
1648 #[doc = "The amount of transmit data written in FTDRHL is equal to or less than the specified transmit triggering number"]
1649 pub const _1: Self = Self::new(1);
1650 }
1651}
1652#[doc(hidden)]
1653#[derive(Copy, Clone, Eq, PartialEq)]
1654pub struct SsrSmci_SPEC;
1655impl crate::sealed::RegSpec for SsrSmci_SPEC {
1656 type DataType = u8;
1657}
1658
1659#[doc = "Serial Status Register for Smart Card Interface Mode (SCMR.SMIF = 1, and MMR.MANEN = 0)"]
1660pub type SsrSmci = crate::RegValueT<SsrSmci_SPEC>;
1661
1662impl SsrSmci {
1663 #[doc = "Multi-Processor Bit Transfer"]
1664 #[inline(always)]
1665 pub fn mpbt(
1666 self,
1667 ) -> crate::common::RegisterFieldBool<0, 1, 0, SsrSmci_SPEC, crate::common::RW> {
1668 crate::common::RegisterFieldBool::<0, 1, 0, SsrSmci_SPEC, crate::common::RW>::from_register(
1669 self, 0,
1670 )
1671 }
1672
1673 #[doc = "Multi-Processor"]
1674 #[inline(always)]
1675 pub fn mpb(self) -> crate::common::RegisterFieldBool<1, 1, 0, SsrSmci_SPEC, crate::common::R> {
1676 crate::common::RegisterFieldBool::<1, 1, 0, SsrSmci_SPEC, crate::common::R>::from_register(
1677 self, 0,
1678 )
1679 }
1680
1681 #[doc = "Transmit End Flag"]
1682 #[inline(always)]
1683 pub fn tend(
1684 self,
1685 ) -> crate::common::RegisterField<
1686 2,
1687 0x1,
1688 1,
1689 0,
1690 ssr_smci::Tend,
1691 ssr_smci::Tend,
1692 SsrSmci_SPEC,
1693 crate::common::R,
1694 > {
1695 crate::common::RegisterField::<
1696 2,
1697 0x1,
1698 1,
1699 0,
1700 ssr_smci::Tend,
1701 ssr_smci::Tend,
1702 SsrSmci_SPEC,
1703 crate::common::R,
1704 >::from_register(self, 0)
1705 }
1706
1707 #[doc = "Parity Error Flag"]
1708 #[inline(always)]
1709 pub fn per(
1710 self,
1711 ) -> crate::common::RegisterField<
1712 3,
1713 0x1,
1714 1,
1715 0,
1716 ssr_smci::Per,
1717 ssr_smci::Per,
1718 SsrSmci_SPEC,
1719 crate::common::RW,
1720 > {
1721 crate::common::RegisterField::<
1722 3,
1723 0x1,
1724 1,
1725 0,
1726 ssr_smci::Per,
1727 ssr_smci::Per,
1728 SsrSmci_SPEC,
1729 crate::common::RW,
1730 >::from_register(self, 0)
1731 }
1732
1733 #[doc = "Error Signal Status Flag"]
1734 #[inline(always)]
1735 pub fn ers(
1736 self,
1737 ) -> crate::common::RegisterField<
1738 4,
1739 0x1,
1740 1,
1741 0,
1742 ssr_smci::Ers,
1743 ssr_smci::Ers,
1744 SsrSmci_SPEC,
1745 crate::common::RW,
1746 > {
1747 crate::common::RegisterField::<
1748 4,
1749 0x1,
1750 1,
1751 0,
1752 ssr_smci::Ers,
1753 ssr_smci::Ers,
1754 SsrSmci_SPEC,
1755 crate::common::RW,
1756 >::from_register(self, 0)
1757 }
1758
1759 #[doc = "Overrun Error Flag"]
1760 #[inline(always)]
1761 pub fn orer(
1762 self,
1763 ) -> crate::common::RegisterField<
1764 5,
1765 0x1,
1766 1,
1767 0,
1768 ssr_smci::Orer,
1769 ssr_smci::Orer,
1770 SsrSmci_SPEC,
1771 crate::common::RW,
1772 > {
1773 crate::common::RegisterField::<
1774 5,
1775 0x1,
1776 1,
1777 0,
1778 ssr_smci::Orer,
1779 ssr_smci::Orer,
1780 SsrSmci_SPEC,
1781 crate::common::RW,
1782 >::from_register(self, 0)
1783 }
1784
1785 #[doc = "Receive Data Full Flag"]
1786 #[inline(always)]
1787 pub fn rdrf(
1788 self,
1789 ) -> crate::common::RegisterField<
1790 6,
1791 0x1,
1792 1,
1793 0,
1794 ssr_smci::Rdrf,
1795 ssr_smci::Rdrf,
1796 SsrSmci_SPEC,
1797 crate::common::RW,
1798 > {
1799 crate::common::RegisterField::<
1800 6,
1801 0x1,
1802 1,
1803 0,
1804 ssr_smci::Rdrf,
1805 ssr_smci::Rdrf,
1806 SsrSmci_SPEC,
1807 crate::common::RW,
1808 >::from_register(self, 0)
1809 }
1810
1811 #[doc = "Transmit Data Empty Flag"]
1812 #[inline(always)]
1813 pub fn tdre(
1814 self,
1815 ) -> crate::common::RegisterField<
1816 7,
1817 0x1,
1818 1,
1819 0,
1820 ssr_smci::Tdre,
1821 ssr_smci::Tdre,
1822 SsrSmci_SPEC,
1823 crate::common::RW,
1824 > {
1825 crate::common::RegisterField::<
1826 7,
1827 0x1,
1828 1,
1829 0,
1830 ssr_smci::Tdre,
1831 ssr_smci::Tdre,
1832 SsrSmci_SPEC,
1833 crate::common::RW,
1834 >::from_register(self, 0)
1835 }
1836}
1837impl ::core::default::Default for SsrSmci {
1838 #[inline(always)]
1839 fn default() -> SsrSmci {
1840 <crate::RegValueT<SsrSmci_SPEC> as RegisterValue<_>>::new(132)
1841 }
1842}
1843pub mod ssr_smci {
1844
1845 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1846 pub struct Tend_SPEC;
1847 pub type Tend = crate::EnumBitfieldStruct<u8, Tend_SPEC>;
1848 impl Tend {
1849 #[doc = "A character is being transmitted"]
1850 pub const _0: Self = Self::new(0);
1851
1852 #[doc = "Character transfer is complete"]
1853 pub const _1: Self = Self::new(1);
1854 }
1855 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1856 pub struct Per_SPEC;
1857 pub type Per = crate::EnumBitfieldStruct<u8, Per_SPEC>;
1858 impl Per {
1859 #[doc = "No parity error occurred"]
1860 pub const _0: Self = Self::new(0);
1861
1862 #[doc = "Parity error occurred"]
1863 pub const _1: Self = Self::new(1);
1864 }
1865 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1866 pub struct Ers_SPEC;
1867 pub type Ers = crate::EnumBitfieldStruct<u8, Ers_SPEC>;
1868 impl Ers {
1869 #[doc = "No low error signal response"]
1870 pub const _0: Self = Self::new(0);
1871
1872 #[doc = "Low error signal response occurred"]
1873 pub const _1: Self = Self::new(1);
1874 }
1875 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1876 pub struct Orer_SPEC;
1877 pub type Orer = crate::EnumBitfieldStruct<u8, Orer_SPEC>;
1878 impl Orer {
1879 #[doc = "No overrun error occurred"]
1880 pub const _0: Self = Self::new(0);
1881
1882 #[doc = "Overrun error occurred"]
1883 pub const _1: Self = Self::new(1);
1884 }
1885 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1886 pub struct Rdrf_SPEC;
1887 pub type Rdrf = crate::EnumBitfieldStruct<u8, Rdrf_SPEC>;
1888 impl Rdrf {
1889 #[doc = "No received data in RDR register"]
1890 pub const _0: Self = Self::new(0);
1891
1892 #[doc = "Received data in RDR register"]
1893 pub const _1: Self = Self::new(1);
1894 }
1895 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
1896 pub struct Tdre_SPEC;
1897 pub type Tdre = crate::EnumBitfieldStruct<u8, Tdre_SPEC>;
1898 impl Tdre {
1899 #[doc = "Transmit data in TDR register"]
1900 pub const _0: Self = Self::new(0);
1901
1902 #[doc = "No transmit data in TDR register"]
1903 pub const _1: Self = Self::new(1);
1904 }
1905}
1906#[doc(hidden)]
1907#[derive(Copy, Clone, Eq, PartialEq)]
1908pub struct Rdr_SPEC;
1909impl crate::sealed::RegSpec for Rdr_SPEC {
1910 type DataType = u8;
1911}
1912
1913#[doc = "Receive Data Register"]
1914pub type Rdr = crate::RegValueT<Rdr_SPEC>;
1915
1916impl NoBitfieldReg<Rdr_SPEC> for Rdr {}
1917impl ::core::default::Default for Rdr {
1918 #[inline(always)]
1919 fn default() -> Rdr {
1920 <crate::RegValueT<Rdr_SPEC> as RegisterValue<_>>::new(0)
1921 }
1922}
1923
1924#[doc(hidden)]
1925#[derive(Copy, Clone, Eq, PartialEq)]
1926pub struct Scmr_SPEC;
1927impl crate::sealed::RegSpec for Scmr_SPEC {
1928 type DataType = u8;
1929}
1930
1931#[doc = "Smart Card Mode Register"]
1932pub type Scmr = crate::RegValueT<Scmr_SPEC>;
1933
1934impl Scmr {
1935 #[doc = "Smart Card Interface Mode Select"]
1936 #[inline(always)]
1937 pub fn smif(
1938 self,
1939 ) -> crate::common::RegisterField<
1940 0,
1941 0x1,
1942 1,
1943 0,
1944 scmr::Smif,
1945 scmr::Smif,
1946 Scmr_SPEC,
1947 crate::common::RW,
1948 > {
1949 crate::common::RegisterField::<
1950 0,
1951 0x1,
1952 1,
1953 0,
1954 scmr::Smif,
1955 scmr::Smif,
1956 Scmr_SPEC,
1957 crate::common::RW,
1958 >::from_register(self, 0)
1959 }
1960
1961 #[doc = "Transmitted/Received Data Invert"]
1962 #[inline(always)]
1963 pub fn sinv(
1964 self,
1965 ) -> crate::common::RegisterField<
1966 2,
1967 0x1,
1968 1,
1969 0,
1970 scmr::Sinv,
1971 scmr::Sinv,
1972 Scmr_SPEC,
1973 crate::common::RW,
1974 > {
1975 crate::common::RegisterField::<
1976 2,
1977 0x1,
1978 1,
1979 0,
1980 scmr::Sinv,
1981 scmr::Sinv,
1982 Scmr_SPEC,
1983 crate::common::RW,
1984 >::from_register(self, 0)
1985 }
1986
1987 #[doc = "Transmitted/Received Data Transfer Direction"]
1988 #[inline(always)]
1989 pub fn sdir(
1990 self,
1991 ) -> crate::common::RegisterField<
1992 3,
1993 0x1,
1994 1,
1995 0,
1996 scmr::Sdir,
1997 scmr::Sdir,
1998 Scmr_SPEC,
1999 crate::common::RW,
2000 > {
2001 crate::common::RegisterField::<
2002 3,
2003 0x1,
2004 1,
2005 0,
2006 scmr::Sdir,
2007 scmr::Sdir,
2008 Scmr_SPEC,
2009 crate::common::RW,
2010 >::from_register(self, 0)
2011 }
2012
2013 #[doc = "Character Length 1"]
2014 #[inline(always)]
2015 pub fn chr1(
2016 self,
2017 ) -> crate::common::RegisterField<
2018 4,
2019 0x1,
2020 1,
2021 0,
2022 scmr::Chr1,
2023 scmr::Chr1,
2024 Scmr_SPEC,
2025 crate::common::RW,
2026 > {
2027 crate::common::RegisterField::<
2028 4,
2029 0x1,
2030 1,
2031 0,
2032 scmr::Chr1,
2033 scmr::Chr1,
2034 Scmr_SPEC,
2035 crate::common::RW,
2036 >::from_register(self, 0)
2037 }
2038
2039 #[doc = "Base Clock Pulse 2"]
2040 #[inline(always)]
2041 pub fn bcp2(self) -> crate::common::RegisterFieldBool<7, 1, 0, Scmr_SPEC, crate::common::RW> {
2042 crate::common::RegisterFieldBool::<7, 1, 0, Scmr_SPEC, crate::common::RW>::from_register(
2043 self, 0,
2044 )
2045 }
2046}
2047impl ::core::default::Default for Scmr {
2048 #[inline(always)]
2049 fn default() -> Scmr {
2050 <crate::RegValueT<Scmr_SPEC> as RegisterValue<_>>::new(242)
2051 }
2052}
2053pub mod scmr {
2054
2055 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2056 pub struct Smif_SPEC;
2057 pub type Smif = crate::EnumBitfieldStruct<u8, Smif_SPEC>;
2058 impl Smif {
2059 #[doc = "Non-smart card interface mode (asynchronous mode, clock synchronous mode, simple SPI mode, or simple IIC mode)"]
2060 pub const _0: Self = Self::new(0);
2061
2062 #[doc = "Smart card interface mode"]
2063 pub const _1: Self = Self::new(1);
2064 }
2065 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2066 pub struct Sinv_SPEC;
2067 pub type Sinv = crate::EnumBitfieldStruct<u8, Sinv_SPEC>;
2068 impl Sinv {
2069 #[doc = "TDR contents are transmitted as they are. Received data is stored as received in the RDR register."]
2070 pub const _0: Self = Self::new(0);
2071
2072 #[doc = "TDR register contents are inverted before transmission. Receive data is stored in inverted form in the RDR register."]
2073 pub const _1: Self = Self::new(1);
2074 }
2075 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2076 pub struct Sdir_SPEC;
2077 pub type Sdir = crate::EnumBitfieldStruct<u8, Sdir_SPEC>;
2078 impl Sdir {
2079 #[doc = "Transfer LSB-first"]
2080 pub const _0: Self = Self::new(0);
2081
2082 #[doc = "Transfer MSB-first"]
2083 pub const _1: Self = Self::new(1);
2084 }
2085 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2086 pub struct Chr1_SPEC;
2087 pub type Chr1 = crate::EnumBitfieldStruct<u8, Chr1_SPEC>;
2088 impl Chr1 {
2089 #[doc = "SMR.CHR = 0: Transmit/receive in 9-bit data length SMR.CHR = 1: Transmit/receive in 9-bit data length"]
2090 pub const _0: Self = Self::new(0);
2091
2092 #[doc = "SMR.CHR = 0: Transmit/receive in 8-bit data length (initial value) SMR.CHR = 1: Transmit/receive in 7-bit data length"]
2093 pub const _1: Self = Self::new(1);
2094 }
2095}
2096#[doc(hidden)]
2097#[derive(Copy, Clone, Eq, PartialEq)]
2098pub struct Semr_SPEC;
2099impl crate::sealed::RegSpec for Semr_SPEC {
2100 type DataType = u8;
2101}
2102
2103#[doc = "Serial Extended Mode Register"]
2104pub type Semr = crate::RegValueT<Semr_SPEC>;
2105
2106impl Semr {
2107 #[doc = "Asynchronous Mode Clock Source Select"]
2108 #[inline(always)]
2109 pub fn acs0(
2110 self,
2111 ) -> crate::common::RegisterField<
2112 0,
2113 0x1,
2114 1,
2115 0,
2116 semr::Acs0,
2117 semr::Acs0,
2118 Semr_SPEC,
2119 crate::common::RW,
2120 > {
2121 crate::common::RegisterField::<
2122 0,
2123 0x1,
2124 1,
2125 0,
2126 semr::Acs0,
2127 semr::Acs0,
2128 Semr_SPEC,
2129 crate::common::RW,
2130 >::from_register(self, 0)
2131 }
2132
2133 #[doc = "Preamble function Disable"]
2134 #[inline(always)]
2135 pub fn padis(
2136 self,
2137 ) -> crate::common::RegisterField<
2138 1,
2139 0x1,
2140 1,
2141 0,
2142 semr::Padis,
2143 semr::Padis,
2144 Semr_SPEC,
2145 crate::common::RW,
2146 > {
2147 crate::common::RegisterField::<
2148 1,
2149 0x1,
2150 1,
2151 0,
2152 semr::Padis,
2153 semr::Padis,
2154 Semr_SPEC,
2155 crate::common::RW,
2156 >::from_register(self, 0)
2157 }
2158
2159 #[doc = "Bit Rate Modulation Enable"]
2160 #[inline(always)]
2161 pub fn brme(
2162 self,
2163 ) -> crate::common::RegisterField<
2164 2,
2165 0x1,
2166 1,
2167 0,
2168 semr::Brme,
2169 semr::Brme,
2170 Semr_SPEC,
2171 crate::common::RW,
2172 > {
2173 crate::common::RegisterField::<
2174 2,
2175 0x1,
2176 1,
2177 0,
2178 semr::Brme,
2179 semr::Brme,
2180 Semr_SPEC,
2181 crate::common::RW,
2182 >::from_register(self, 0)
2183 }
2184
2185 #[doc = "Asynchronous Mode Extended Base Clock Select 1"]
2186 #[inline(always)]
2187 pub fn abcse(
2188 self,
2189 ) -> crate::common::RegisterField<
2190 3,
2191 0x1,
2192 1,
2193 0,
2194 semr::Abcse,
2195 semr::Abcse,
2196 Semr_SPEC,
2197 crate::common::RW,
2198 > {
2199 crate::common::RegisterField::<
2200 3,
2201 0x1,
2202 1,
2203 0,
2204 semr::Abcse,
2205 semr::Abcse,
2206 Semr_SPEC,
2207 crate::common::RW,
2208 >::from_register(self, 0)
2209 }
2210
2211 #[doc = "Asynchronous Mode Base Clock Select"]
2212 #[inline(always)]
2213 pub fn abcs(
2214 self,
2215 ) -> crate::common::RegisterField<
2216 4,
2217 0x1,
2218 1,
2219 0,
2220 semr::Abcs,
2221 semr::Abcs,
2222 Semr_SPEC,
2223 crate::common::RW,
2224 > {
2225 crate::common::RegisterField::<
2226 4,
2227 0x1,
2228 1,
2229 0,
2230 semr::Abcs,
2231 semr::Abcs,
2232 Semr_SPEC,
2233 crate::common::RW,
2234 >::from_register(self, 0)
2235 }
2236
2237 #[doc = "Digital Noise Filter Function Enable"]
2238 #[inline(always)]
2239 pub fn nfen(
2240 self,
2241 ) -> crate::common::RegisterField<
2242 5,
2243 0x1,
2244 1,
2245 0,
2246 semr::Nfen,
2247 semr::Nfen,
2248 Semr_SPEC,
2249 crate::common::RW,
2250 > {
2251 crate::common::RegisterField::<
2252 5,
2253 0x1,
2254 1,
2255 0,
2256 semr::Nfen,
2257 semr::Nfen,
2258 Semr_SPEC,
2259 crate::common::RW,
2260 >::from_register(self, 0)
2261 }
2262
2263 #[doc = "Baud Rate Generator Double-Speed Mode Select"]
2264 #[inline(always)]
2265 pub fn bgdm(
2266 self,
2267 ) -> crate::common::RegisterField<
2268 6,
2269 0x1,
2270 1,
2271 0,
2272 semr::Bgdm,
2273 semr::Bgdm,
2274 Semr_SPEC,
2275 crate::common::RW,
2276 > {
2277 crate::common::RegisterField::<
2278 6,
2279 0x1,
2280 1,
2281 0,
2282 semr::Bgdm,
2283 semr::Bgdm,
2284 Semr_SPEC,
2285 crate::common::RW,
2286 >::from_register(self, 0)
2287 }
2288
2289 #[doc = "Asynchronous Start Bit Edge Detection Select"]
2290 #[inline(always)]
2291 pub fn rxdesel(
2292 self,
2293 ) -> crate::common::RegisterField<
2294 7,
2295 0x1,
2296 1,
2297 0,
2298 semr::Rxdesel,
2299 semr::Rxdesel,
2300 Semr_SPEC,
2301 crate::common::RW,
2302 > {
2303 crate::common::RegisterField::<
2304 7,
2305 0x1,
2306 1,
2307 0,
2308 semr::Rxdesel,
2309 semr::Rxdesel,
2310 Semr_SPEC,
2311 crate::common::RW,
2312 >::from_register(self, 0)
2313 }
2314}
2315impl ::core::default::Default for Semr {
2316 #[inline(always)]
2317 fn default() -> Semr {
2318 <crate::RegValueT<Semr_SPEC> as RegisterValue<_>>::new(0)
2319 }
2320}
2321pub mod semr {
2322
2323 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2324 pub struct Acs0_SPEC;
2325 pub type Acs0 = crate::EnumBitfieldStruct<u8, Acs0_SPEC>;
2326 impl Acs0 {
2327 #[doc = "External clock input"]
2328 pub const _0: Self = Self::new(0);
2329
2330 #[doc = "Logical AND of compare matches output from the internal GPT. These bit for the other SCI channels than SCIn (n = 1, 2) are reserved."]
2331 pub const _1: Self = Self::new(1);
2332 }
2333 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2334 pub struct Padis_SPEC;
2335 pub type Padis = crate::EnumBitfieldStruct<u8, Padis_SPEC>;
2336 impl Padis {
2337 #[doc = "Preamble output function is enabled"]
2338 pub const _0: Self = Self::new(0);
2339
2340 #[doc = "Preamble output function is disabled These bits for the other SCI channels than SCIn (n = 0, 3, 4, 9) are reserved."]
2341 pub const _1: Self = Self::new(1);
2342 }
2343 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2344 pub struct Brme_SPEC;
2345 pub type Brme = crate::EnumBitfieldStruct<u8, Brme_SPEC>;
2346 impl Brme {
2347 #[doc = "Disable bit rate modulation function"]
2348 pub const _0: Self = Self::new(0);
2349
2350 #[doc = "Enable bit rate modulation function"]
2351 pub const _1: Self = Self::new(1);
2352 }
2353 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2354 pub struct Abcse_SPEC;
2355 pub type Abcse = crate::EnumBitfieldStruct<u8, Abcse_SPEC>;
2356 impl Abcse {
2357 #[doc = "Clock cycles for 1-bit period determined by combination of the BGDM and ABCS bits in the SEMR register"]
2358 pub const _0: Self = Self::new(0);
2359
2360 #[doc = "Baud rate is 6 base clock cycles for 1-bit period These bits for the other SCI channels than SCIn (n = 0, 3, 4, 9) are reserved."]
2361 pub const _1: Self = Self::new(1);
2362 }
2363 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2364 pub struct Abcs_SPEC;
2365 pub type Abcs = crate::EnumBitfieldStruct<u8, Abcs_SPEC>;
2366 impl Abcs {
2367 #[doc = "Select 16 base clock cycles for 1-bit period"]
2368 pub const _0: Self = Self::new(0);
2369
2370 #[doc = "Select 8 base clock cycles for 1-bit period"]
2371 pub const _1: Self = Self::new(1);
2372 }
2373 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2374 pub struct Nfen_SPEC;
2375 pub type Nfen = crate::EnumBitfieldStruct<u8, Nfen_SPEC>;
2376 impl Nfen {
2377 #[doc = "In asynchronous mode: Disable noise cancellation function for RXDn input signal In simple I2C mode: Disable noise cancellation function for SCLn and SDAn input signals"]
2378 pub const _0: Self = Self::new(0);
2379
2380 #[doc = "In asynchronous mode: Enable noise cancellation function for RXDn input signal In simple I2C mode: Enable noise cancellation function for SCLn and SDAn input signals"]
2381 pub const _1: Self = Self::new(1);
2382 }
2383 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2384 pub struct Bgdm_SPEC;
2385 pub type Bgdm = crate::EnumBitfieldStruct<u8, Bgdm_SPEC>;
2386 impl Bgdm {
2387 #[doc = "Output clock from baud rate generator with normal frequency"]
2388 pub const _0: Self = Self::new(0);
2389
2390 #[doc = "Output clock from baud rate generator with doubled frequency"]
2391 pub const _1: Self = Self::new(1);
2392 }
2393 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2394 pub struct Rxdesel_SPEC;
2395 pub type Rxdesel = crate::EnumBitfieldStruct<u8, Rxdesel_SPEC>;
2396 impl Rxdesel {
2397 #[doc = "Detect low level on RXDn pin as start bit"]
2398 pub const _0: Self = Self::new(0);
2399
2400 #[doc = "Detect falling edge of RXDn pin as start bit"]
2401 pub const _1: Self = Self::new(1);
2402 }
2403}
2404#[doc(hidden)]
2405#[derive(Copy, Clone, Eq, PartialEq)]
2406pub struct Snfr_SPEC;
2407impl crate::sealed::RegSpec for Snfr_SPEC {
2408 type DataType = u8;
2409}
2410
2411#[doc = "Noise Filter Setting Register"]
2412pub type Snfr = crate::RegValueT<Snfr_SPEC>;
2413
2414impl Snfr {
2415 #[doc = "Noise Filter Clock Select"]
2416 #[inline(always)]
2417 pub fn nfcs(
2418 self,
2419 ) -> crate::common::RegisterField<
2420 0,
2421 0x7,
2422 1,
2423 0,
2424 snfr::Nfcs,
2425 snfr::Nfcs,
2426 Snfr_SPEC,
2427 crate::common::RW,
2428 > {
2429 crate::common::RegisterField::<
2430 0,
2431 0x7,
2432 1,
2433 0,
2434 snfr::Nfcs,
2435 snfr::Nfcs,
2436 Snfr_SPEC,
2437 crate::common::RW,
2438 >::from_register(self, 0)
2439 }
2440}
2441impl ::core::default::Default for Snfr {
2442 #[inline(always)]
2443 fn default() -> Snfr {
2444 <crate::RegValueT<Snfr_SPEC> as RegisterValue<_>>::new(0)
2445 }
2446}
2447pub mod snfr {
2448
2449 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2450 pub struct Nfcs_SPEC;
2451 pub type Nfcs = crate::EnumBitfieldStruct<u8, Nfcs_SPEC>;
2452 impl Nfcs {
2453 #[doc = "In asynchronous mode: Use clock signal divided by 1 with noise filter In simple I2C mode: Setting prohibited"]
2454 pub const _000: Self = Self::new(0);
2455
2456 #[doc = "In asynchronous mode: Setting prohibited In simple I2C mode: Use clock signal divided by 1 with noise filter"]
2457 pub const _001: Self = Self::new(1);
2458
2459 #[doc = "In asynchronous mode: Setting prohibited In simple I2C mode: Use clock signal divided by 2 with noise filter"]
2460 pub const _010: Self = Self::new(2);
2461
2462 #[doc = "In asynchronous mode: Setting prohibited In simple I2C mode: Use clock signal divided by 4 with noise filter"]
2463 pub const _011: Self = Self::new(3);
2464
2465 #[doc = "In asynchronous mode: Setting prohibited In simple I2C mode: Use clock signal divided by 8 with noise filter"]
2466 pub const _100: Self = Self::new(4);
2467 }
2468}
2469#[doc(hidden)]
2470#[derive(Copy, Clone, Eq, PartialEq)]
2471pub struct Simr1_SPEC;
2472impl crate::sealed::RegSpec for Simr1_SPEC {
2473 type DataType = u8;
2474}
2475
2476#[doc = "IIC Mode Register 1"]
2477pub type Simr1 = crate::RegValueT<Simr1_SPEC>;
2478
2479impl Simr1 {
2480 #[doc = "Simple IIC Mode Select"]
2481 #[inline(always)]
2482 pub fn iicm(
2483 self,
2484 ) -> crate::common::RegisterField<
2485 0,
2486 0x1,
2487 1,
2488 0,
2489 simr1::Iicm,
2490 simr1::Iicm,
2491 Simr1_SPEC,
2492 crate::common::RW,
2493 > {
2494 crate::common::RegisterField::<
2495 0,
2496 0x1,
2497 1,
2498 0,
2499 simr1::Iicm,
2500 simr1::Iicm,
2501 Simr1_SPEC,
2502 crate::common::RW,
2503 >::from_register(self, 0)
2504 }
2505
2506 #[doc = "SDAn Delay Output Select"]
2507 #[inline(always)]
2508 pub fn iicdl(
2509 self,
2510 ) -> crate::common::RegisterField<
2511 3,
2512 0x1f,
2513 1,
2514 0,
2515 simr1::Iicdl,
2516 simr1::Iicdl,
2517 Simr1_SPEC,
2518 crate::common::RW,
2519 > {
2520 crate::common::RegisterField::<
2521 3,
2522 0x1f,
2523 1,
2524 0,
2525 simr1::Iicdl,
2526 simr1::Iicdl,
2527 Simr1_SPEC,
2528 crate::common::RW,
2529 >::from_register(self, 0)
2530 }
2531}
2532impl ::core::default::Default for Simr1 {
2533 #[inline(always)]
2534 fn default() -> Simr1 {
2535 <crate::RegValueT<Simr1_SPEC> as RegisterValue<_>>::new(0)
2536 }
2537}
2538pub mod simr1 {
2539
2540 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2541 pub struct Iicm_SPEC;
2542 pub type Iicm = crate::EnumBitfieldStruct<u8, Iicm_SPEC>;
2543 impl Iicm {
2544 #[doc = "SCMR.SMIF = 0: Asynchronous mode (including multi-processor mode), clock synchronous mode, or simple SPI mode SCMR.SMIF = 1: Smart card interface mode"]
2545 pub const _0: Self = Self::new(0);
2546
2547 #[doc = "SCMR.SMIF = 0: Simple IIC mode SCMR.SMIF = 1: Setting prohibited"]
2548 pub const _1: Self = Self::new(1);
2549 }
2550 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2551 pub struct Iicdl_SPEC;
2552 pub type Iicdl = crate::EnumBitfieldStruct<u8, Iicdl_SPEC>;
2553 impl Iicdl {
2554 #[doc = "No output delay"]
2555 pub const _0_X_00: Self = Self::new(0);
2556 }
2557}
2558#[doc(hidden)]
2559#[derive(Copy, Clone, Eq, PartialEq)]
2560pub struct Simr2_SPEC;
2561impl crate::sealed::RegSpec for Simr2_SPEC {
2562 type DataType = u8;
2563}
2564
2565#[doc = "IIC Mode Register 2"]
2566pub type Simr2 = crate::RegValueT<Simr2_SPEC>;
2567
2568impl Simr2 {
2569 #[doc = "IIC Interrupt Mode Select"]
2570 #[inline(always)]
2571 pub fn iicintm(
2572 self,
2573 ) -> crate::common::RegisterField<
2574 0,
2575 0x1,
2576 1,
2577 0,
2578 simr2::Iicintm,
2579 simr2::Iicintm,
2580 Simr2_SPEC,
2581 crate::common::RW,
2582 > {
2583 crate::common::RegisterField::<
2584 0,
2585 0x1,
2586 1,
2587 0,
2588 simr2::Iicintm,
2589 simr2::Iicintm,
2590 Simr2_SPEC,
2591 crate::common::RW,
2592 >::from_register(self, 0)
2593 }
2594
2595 #[doc = "Clock Synchronization"]
2596 #[inline(always)]
2597 pub fn iiccsc(
2598 self,
2599 ) -> crate::common::RegisterField<
2600 1,
2601 0x1,
2602 1,
2603 0,
2604 simr2::Iiccsc,
2605 simr2::Iiccsc,
2606 Simr2_SPEC,
2607 crate::common::RW,
2608 > {
2609 crate::common::RegisterField::<
2610 1,
2611 0x1,
2612 1,
2613 0,
2614 simr2::Iiccsc,
2615 simr2::Iiccsc,
2616 Simr2_SPEC,
2617 crate::common::RW,
2618 >::from_register(self, 0)
2619 }
2620
2621 #[doc = "ACK Transmission Data"]
2622 #[inline(always)]
2623 pub fn iicackt(
2624 self,
2625 ) -> crate::common::RegisterField<
2626 5,
2627 0x1,
2628 1,
2629 0,
2630 simr2::Iicackt,
2631 simr2::Iicackt,
2632 Simr2_SPEC,
2633 crate::common::RW,
2634 > {
2635 crate::common::RegisterField::<
2636 5,
2637 0x1,
2638 1,
2639 0,
2640 simr2::Iicackt,
2641 simr2::Iicackt,
2642 Simr2_SPEC,
2643 crate::common::RW,
2644 >::from_register(self, 0)
2645 }
2646}
2647impl ::core::default::Default for Simr2 {
2648 #[inline(always)]
2649 fn default() -> Simr2 {
2650 <crate::RegValueT<Simr2_SPEC> as RegisterValue<_>>::new(0)
2651 }
2652}
2653pub mod simr2 {
2654
2655 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2656 pub struct Iicintm_SPEC;
2657 pub type Iicintm = crate::EnumBitfieldStruct<u8, Iicintm_SPEC>;
2658 impl Iicintm {
2659 #[doc = "Use ACK/NACK interrupts"]
2660 pub const _0: Self = Self::new(0);
2661
2662 #[doc = "Use reception and transmission interrupts"]
2663 pub const _1: Self = Self::new(1);
2664 }
2665 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2666 pub struct Iiccsc_SPEC;
2667 pub type Iiccsc = crate::EnumBitfieldStruct<u8, Iiccsc_SPEC>;
2668 impl Iiccsc {
2669 #[doc = "Do not synchronize with clock signal"]
2670 pub const _0: Self = Self::new(0);
2671
2672 #[doc = "Synchronize with clock signal"]
2673 pub const _1: Self = Self::new(1);
2674 }
2675 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2676 pub struct Iicackt_SPEC;
2677 pub type Iicackt = crate::EnumBitfieldStruct<u8, Iicackt_SPEC>;
2678 impl Iicackt {
2679 #[doc = "ACK transmission"]
2680 pub const _0: Self = Self::new(0);
2681
2682 #[doc = "NACK transmission and ACK/NACK reception"]
2683 pub const _1: Self = Self::new(1);
2684 }
2685}
2686#[doc(hidden)]
2687#[derive(Copy, Clone, Eq, PartialEq)]
2688pub struct Simr3_SPEC;
2689impl crate::sealed::RegSpec for Simr3_SPEC {
2690 type DataType = u8;
2691}
2692
2693#[doc = "IIC Mode Register 3"]
2694pub type Simr3 = crate::RegValueT<Simr3_SPEC>;
2695
2696impl Simr3 {
2697 #[doc = "Start Condition Generation"]
2698 #[inline(always)]
2699 pub fn iicstareq(
2700 self,
2701 ) -> crate::common::RegisterField<
2702 0,
2703 0x1,
2704 1,
2705 0,
2706 simr3::Iicstareq,
2707 simr3::Iicstareq,
2708 Simr3_SPEC,
2709 crate::common::RW,
2710 > {
2711 crate::common::RegisterField::<
2712 0,
2713 0x1,
2714 1,
2715 0,
2716 simr3::Iicstareq,
2717 simr3::Iicstareq,
2718 Simr3_SPEC,
2719 crate::common::RW,
2720 >::from_register(self, 0)
2721 }
2722
2723 #[doc = "Restart Condition Generation"]
2724 #[inline(always)]
2725 pub fn iicrstareq(
2726 self,
2727 ) -> crate::common::RegisterField<
2728 1,
2729 0x1,
2730 1,
2731 0,
2732 simr3::Iicrstareq,
2733 simr3::Iicrstareq,
2734 Simr3_SPEC,
2735 crate::common::RW,
2736 > {
2737 crate::common::RegisterField::<
2738 1,
2739 0x1,
2740 1,
2741 0,
2742 simr3::Iicrstareq,
2743 simr3::Iicrstareq,
2744 Simr3_SPEC,
2745 crate::common::RW,
2746 >::from_register(self, 0)
2747 }
2748
2749 #[doc = "Stop Condition Generation"]
2750 #[inline(always)]
2751 pub fn iicstpreq(
2752 self,
2753 ) -> crate::common::RegisterField<
2754 2,
2755 0x1,
2756 1,
2757 0,
2758 simr3::Iicstpreq,
2759 simr3::Iicstpreq,
2760 Simr3_SPEC,
2761 crate::common::RW,
2762 > {
2763 crate::common::RegisterField::<
2764 2,
2765 0x1,
2766 1,
2767 0,
2768 simr3::Iicstpreq,
2769 simr3::Iicstpreq,
2770 Simr3_SPEC,
2771 crate::common::RW,
2772 >::from_register(self, 0)
2773 }
2774
2775 #[doc = "Issuing of Start, Restart, or Stop Condition Completed Flag"]
2776 #[inline(always)]
2777 pub fn iicstif(
2778 self,
2779 ) -> crate::common::RegisterField<
2780 3,
2781 0x1,
2782 1,
2783 0,
2784 simr3::Iicstif,
2785 simr3::Iicstif,
2786 Simr3_SPEC,
2787 crate::common::RW,
2788 > {
2789 crate::common::RegisterField::<
2790 3,
2791 0x1,
2792 1,
2793 0,
2794 simr3::Iicstif,
2795 simr3::Iicstif,
2796 Simr3_SPEC,
2797 crate::common::RW,
2798 >::from_register(self, 0)
2799 }
2800
2801 #[doc = "SDAn Output Select"]
2802 #[inline(always)]
2803 pub fn iicsdas(
2804 self,
2805 ) -> crate::common::RegisterField<
2806 4,
2807 0x3,
2808 1,
2809 0,
2810 simr3::Iicsdas,
2811 simr3::Iicsdas,
2812 Simr3_SPEC,
2813 crate::common::RW,
2814 > {
2815 crate::common::RegisterField::<
2816 4,
2817 0x3,
2818 1,
2819 0,
2820 simr3::Iicsdas,
2821 simr3::Iicsdas,
2822 Simr3_SPEC,
2823 crate::common::RW,
2824 >::from_register(self, 0)
2825 }
2826
2827 #[doc = "SCLn Output Select"]
2828 #[inline(always)]
2829 pub fn iicscls(
2830 self,
2831 ) -> crate::common::RegisterField<
2832 6,
2833 0x3,
2834 1,
2835 0,
2836 simr3::Iicscls,
2837 simr3::Iicscls,
2838 Simr3_SPEC,
2839 crate::common::RW,
2840 > {
2841 crate::common::RegisterField::<
2842 6,
2843 0x3,
2844 1,
2845 0,
2846 simr3::Iicscls,
2847 simr3::Iicscls,
2848 Simr3_SPEC,
2849 crate::common::RW,
2850 >::from_register(self, 0)
2851 }
2852}
2853impl ::core::default::Default for Simr3 {
2854 #[inline(always)]
2855 fn default() -> Simr3 {
2856 <crate::RegValueT<Simr3_SPEC> as RegisterValue<_>>::new(0)
2857 }
2858}
2859pub mod simr3 {
2860
2861 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2862 pub struct Iicstareq_SPEC;
2863 pub type Iicstareq = crate::EnumBitfieldStruct<u8, Iicstareq_SPEC>;
2864 impl Iicstareq {
2865 #[doc = "Do not generate start condition"]
2866 pub const _0: Self = Self::new(0);
2867
2868 #[doc = "Generate start condition"]
2869 pub const _1: Self = Self::new(1);
2870 }
2871 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2872 pub struct Iicrstareq_SPEC;
2873 pub type Iicrstareq = crate::EnumBitfieldStruct<u8, Iicrstareq_SPEC>;
2874 impl Iicrstareq {
2875 #[doc = "Do not generate restart condition"]
2876 pub const _0: Self = Self::new(0);
2877
2878 #[doc = "Generate restart condition"]
2879 pub const _1: Self = Self::new(1);
2880 }
2881 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2882 pub struct Iicstpreq_SPEC;
2883 pub type Iicstpreq = crate::EnumBitfieldStruct<u8, Iicstpreq_SPEC>;
2884 impl Iicstpreq {
2885 #[doc = "Do not generate stop condition"]
2886 pub const _0: Self = Self::new(0);
2887
2888 #[doc = "Generate stop condition"]
2889 pub const _1: Self = Self::new(1);
2890 }
2891 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2892 pub struct Iicstif_SPEC;
2893 pub type Iicstif = crate::EnumBitfieldStruct<u8, Iicstif_SPEC>;
2894 impl Iicstif {
2895 #[doc = "No requests are being made for generating conditions, or a condition is being generated"]
2896 pub const _0: Self = Self::new(0);
2897
2898 #[doc = "Generation of start, restart, or stop condition is complete. When 0 is written to IICSTIF, it is set to 0"]
2899 pub const _1: Self = Self::new(1);
2900 }
2901 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2902 pub struct Iicsdas_SPEC;
2903 pub type Iicsdas = crate::EnumBitfieldStruct<u8, Iicsdas_SPEC>;
2904 impl Iicsdas {
2905 #[doc = "Output serial data"]
2906 pub const _00: Self = Self::new(0);
2907
2908 #[doc = "Generate start, restart, or stop condition"]
2909 pub const _01: Self = Self::new(1);
2910
2911 #[doc = "Output low on SDAn pin"]
2912 pub const _10: Self = Self::new(2);
2913
2914 #[doc = "Drive SDAn pin to high-impedance state"]
2915 pub const _11: Self = Self::new(3);
2916 }
2917 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2918 pub struct Iicscls_SPEC;
2919 pub type Iicscls = crate::EnumBitfieldStruct<u8, Iicscls_SPEC>;
2920 impl Iicscls {
2921 #[doc = "Output serial clock"]
2922 pub const _00: Self = Self::new(0);
2923
2924 #[doc = "Generate start, restart, or stop condition"]
2925 pub const _01: Self = Self::new(1);
2926
2927 #[doc = "Output low on SCLn pin"]
2928 pub const _10: Self = Self::new(2);
2929
2930 #[doc = "Drive SCLn pin to high-impedance state"]
2931 pub const _11: Self = Self::new(3);
2932 }
2933}
2934#[doc(hidden)]
2935#[derive(Copy, Clone, Eq, PartialEq)]
2936pub struct Sisr_SPEC;
2937impl crate::sealed::RegSpec for Sisr_SPEC {
2938 type DataType = u8;
2939}
2940
2941#[doc = "IIC Status Register"]
2942pub type Sisr = crate::RegValueT<Sisr_SPEC>;
2943
2944impl Sisr {
2945 #[doc = "ACK Reception Data Flag"]
2946 #[inline(always)]
2947 pub fn iicackr(
2948 self,
2949 ) -> crate::common::RegisterField<
2950 0,
2951 0x1,
2952 1,
2953 0,
2954 sisr::Iicackr,
2955 sisr::Iicackr,
2956 Sisr_SPEC,
2957 crate::common::R,
2958 > {
2959 crate::common::RegisterField::<
2960 0,
2961 0x1,
2962 1,
2963 0,
2964 sisr::Iicackr,
2965 sisr::Iicackr,
2966 Sisr_SPEC,
2967 crate::common::R,
2968 >::from_register(self, 0)
2969 }
2970}
2971impl ::core::default::Default for Sisr {
2972 #[inline(always)]
2973 fn default() -> Sisr {
2974 <crate::RegValueT<Sisr_SPEC> as RegisterValue<_>>::new(0)
2975 }
2976}
2977pub mod sisr {
2978
2979 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
2980 pub struct Iicackr_SPEC;
2981 pub type Iicackr = crate::EnumBitfieldStruct<u8, Iicackr_SPEC>;
2982 impl Iicackr {
2983 #[doc = "ACK received"]
2984 pub const _0: Self = Self::new(0);
2985
2986 #[doc = "NACK received"]
2987 pub const _1: Self = Self::new(1);
2988 }
2989}
2990#[doc(hidden)]
2991#[derive(Copy, Clone, Eq, PartialEq)]
2992pub struct Spmr_SPEC;
2993impl crate::sealed::RegSpec for Spmr_SPEC {
2994 type DataType = u8;
2995}
2996
2997#[doc = "SPI Mode Register"]
2998pub type Spmr = crate::RegValueT<Spmr_SPEC>;
2999
3000impl Spmr {
3001 #[doc = "SSn Pin Function Enable"]
3002 #[inline(always)]
3003 pub fn sse(
3004 self,
3005 ) -> crate::common::RegisterField<
3006 0,
3007 0x1,
3008 1,
3009 0,
3010 spmr::Sse,
3011 spmr::Sse,
3012 Spmr_SPEC,
3013 crate::common::RW,
3014 > {
3015 crate::common::RegisterField::<
3016 0,
3017 0x1,
3018 1,
3019 0,
3020 spmr::Sse,
3021 spmr::Sse,
3022 Spmr_SPEC,
3023 crate::common::RW,
3024 >::from_register(self, 0)
3025 }
3026
3027 #[doc = "CTS Enable"]
3028 #[inline(always)]
3029 pub fn ctse(
3030 self,
3031 ) -> crate::common::RegisterField<
3032 1,
3033 0x1,
3034 1,
3035 0,
3036 spmr::Ctse,
3037 spmr::Ctse,
3038 Spmr_SPEC,
3039 crate::common::RW,
3040 > {
3041 crate::common::RegisterField::<
3042 1,
3043 0x1,
3044 1,
3045 0,
3046 spmr::Ctse,
3047 spmr::Ctse,
3048 Spmr_SPEC,
3049 crate::common::RW,
3050 >::from_register(self, 0)
3051 }
3052
3053 #[doc = "Master Slave Select"]
3054 #[inline(always)]
3055 pub fn mss(
3056 self,
3057 ) -> crate::common::RegisterField<
3058 2,
3059 0x1,
3060 1,
3061 0,
3062 spmr::Mss,
3063 spmr::Mss,
3064 Spmr_SPEC,
3065 crate::common::RW,
3066 > {
3067 crate::common::RegisterField::<
3068 2,
3069 0x1,
3070 1,
3071 0,
3072 spmr::Mss,
3073 spmr::Mss,
3074 Spmr_SPEC,
3075 crate::common::RW,
3076 >::from_register(self, 0)
3077 }
3078
3079 #[doc = "CTS external pin Enable"]
3080 #[inline(always)]
3081 pub fn ctspen(
3082 self,
3083 ) -> crate::common::RegisterField<
3084 3,
3085 0x1,
3086 1,
3087 0,
3088 spmr::Ctspen,
3089 spmr::Ctspen,
3090 Spmr_SPEC,
3091 crate::common::RW,
3092 > {
3093 crate::common::RegisterField::<
3094 3,
3095 0x1,
3096 1,
3097 0,
3098 spmr::Ctspen,
3099 spmr::Ctspen,
3100 Spmr_SPEC,
3101 crate::common::RW,
3102 >::from_register(self, 0)
3103 }
3104
3105 #[doc = "Mode Fault Flag"]
3106 #[inline(always)]
3107 pub fn mff(
3108 self,
3109 ) -> crate::common::RegisterField<
3110 4,
3111 0x1,
3112 1,
3113 0,
3114 spmr::Mff,
3115 spmr::Mff,
3116 Spmr_SPEC,
3117 crate::common::RW,
3118 > {
3119 crate::common::RegisterField::<
3120 4,
3121 0x1,
3122 1,
3123 0,
3124 spmr::Mff,
3125 spmr::Mff,
3126 Spmr_SPEC,
3127 crate::common::RW,
3128 >::from_register(self, 0)
3129 }
3130
3131 #[doc = "Clock Polarity Select"]
3132 #[inline(always)]
3133 pub fn ckpol(
3134 self,
3135 ) -> crate::common::RegisterField<
3136 6,
3137 0x1,
3138 1,
3139 0,
3140 spmr::Ckpol,
3141 spmr::Ckpol,
3142 Spmr_SPEC,
3143 crate::common::RW,
3144 > {
3145 crate::common::RegisterField::<
3146 6,
3147 0x1,
3148 1,
3149 0,
3150 spmr::Ckpol,
3151 spmr::Ckpol,
3152 Spmr_SPEC,
3153 crate::common::RW,
3154 >::from_register(self, 0)
3155 }
3156
3157 #[doc = "Clock Phase Select"]
3158 #[inline(always)]
3159 pub fn ckph(
3160 self,
3161 ) -> crate::common::RegisterField<
3162 7,
3163 0x1,
3164 1,
3165 0,
3166 spmr::Ckph,
3167 spmr::Ckph,
3168 Spmr_SPEC,
3169 crate::common::RW,
3170 > {
3171 crate::common::RegisterField::<
3172 7,
3173 0x1,
3174 1,
3175 0,
3176 spmr::Ckph,
3177 spmr::Ckph,
3178 Spmr_SPEC,
3179 crate::common::RW,
3180 >::from_register(self, 0)
3181 }
3182}
3183impl ::core::default::Default for Spmr {
3184 #[inline(always)]
3185 fn default() -> Spmr {
3186 <crate::RegValueT<Spmr_SPEC> as RegisterValue<_>>::new(0)
3187 }
3188}
3189pub mod spmr {
3190
3191 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3192 pub struct Sse_SPEC;
3193 pub type Sse = crate::EnumBitfieldStruct<u8, Sse_SPEC>;
3194 impl Sse {
3195 #[doc = "Disable SSn pin function"]
3196 pub const _0: Self = Self::new(0);
3197
3198 #[doc = "Enable SSn pin function"]
3199 pub const _1: Self = Self::new(1);
3200 }
3201 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3202 pub struct Ctse_SPEC;
3203 pub type Ctse = crate::EnumBitfieldStruct<u8, Ctse_SPEC>;
3204 impl Ctse {
3205 #[doc = "Disable CTS function (enable RTS output function)"]
3206 pub const _0: Self = Self::new(0);
3207
3208 #[doc = "Enable CTS function"]
3209 pub const _1: Self = Self::new(1);
3210 }
3211 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3212 pub struct Mss_SPEC;
3213 pub type Mss = crate::EnumBitfieldStruct<u8, Mss_SPEC>;
3214 impl Mss {
3215 #[doc = "Transmit through TXDn pin and receive through RXDn pin (master mode)"]
3216 pub const _0: Self = Self::new(0);
3217
3218 #[doc = "Receive through TXDn pin and transmit through RXDn pin (slave mode)"]
3219 pub const _1: Self = Self::new(1);
3220 }
3221 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3222 pub struct Ctspen_SPEC;
3223 pub type Ctspen = crate::EnumBitfieldStruct<u8, Ctspen_SPEC>;
3224 impl Ctspen {
3225 #[doc = "Alternate setting to use CTS and RTS functions as either one terminal"]
3226 pub const _0: Self = Self::new(0);
3227
3228 #[doc = "Dedicated setting for separately using CTS and RTS functions with 2 terminals These bits for the other SCI channels than SCIn (n = 0, 3, 4, 9) are reserved."]
3229 pub const _1: Self = Self::new(1);
3230 }
3231 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3232 pub struct Mff_SPEC;
3233 pub type Mff = crate::EnumBitfieldStruct<u8, Mff_SPEC>;
3234 impl Mff {
3235 #[doc = "No mode fault error"]
3236 pub const _0: Self = Self::new(0);
3237
3238 #[doc = "Mode fault error"]
3239 pub const _1: Self = Self::new(1);
3240 }
3241 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3242 pub struct Ckpol_SPEC;
3243 pub type Ckpol = crate::EnumBitfieldStruct<u8, Ckpol_SPEC>;
3244 impl Ckpol {
3245 #[doc = "Do not invert clock polarity"]
3246 pub const _0: Self = Self::new(0);
3247
3248 #[doc = "Invert clock polarity"]
3249 pub const _1: Self = Self::new(1);
3250 }
3251 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3252 pub struct Ckph_SPEC;
3253 pub type Ckph = crate::EnumBitfieldStruct<u8, Ckph_SPEC>;
3254 impl Ckph {
3255 #[doc = "Do not delay clock"]
3256 pub const _0: Self = Self::new(0);
3257
3258 #[doc = "Delay clock"]
3259 pub const _1: Self = Self::new(1);
3260 }
3261}
3262#[doc(hidden)]
3263#[derive(Copy, Clone, Eq, PartialEq)]
3264pub struct Ftdrhl_SPEC;
3265impl crate::sealed::RegSpec for Ftdrhl_SPEC {
3266 type DataType = u16;
3267}
3268
3269#[doc = "Transmit FIFO Data Register"]
3270pub type Ftdrhl = crate::RegValueT<Ftdrhl_SPEC>;
3271
3272impl Ftdrhl {
3273 #[doc = "Serial transmit data"]
3274 #[inline(always)]
3275 pub fn tdat(
3276 self,
3277 ) -> crate::common::RegisterField<0, 0x1ff, 1, 0, u16, u16, Ftdrhl_SPEC, crate::common::W> {
3278 crate::common::RegisterField::<0,0x1ff,1,0,u16,u16,Ftdrhl_SPEC,crate::common::W>::from_register(self,0)
3279 }
3280
3281 #[doc = "Multi-Processor Transfer Bit Flag"]
3282 #[inline(always)]
3283 pub fn mpbt(
3284 self,
3285 ) -> crate::common::RegisterField<
3286 9,
3287 0x1,
3288 1,
3289 0,
3290 ftdrhl::Mpbt,
3291 ftdrhl::Mpbt,
3292 Ftdrhl_SPEC,
3293 crate::common::W,
3294 > {
3295 crate::common::RegisterField::<
3296 9,
3297 0x1,
3298 1,
3299 0,
3300 ftdrhl::Mpbt,
3301 ftdrhl::Mpbt,
3302 Ftdrhl_SPEC,
3303 crate::common::W,
3304 >::from_register(self, 0)
3305 }
3306}
3307impl ::core::default::Default for Ftdrhl {
3308 #[inline(always)]
3309 fn default() -> Ftdrhl {
3310 <crate::RegValueT<Ftdrhl_SPEC> as RegisterValue<_>>::new(65535)
3311 }
3312}
3313pub mod ftdrhl {
3314
3315 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3316 pub struct Mpbt_SPEC;
3317 pub type Mpbt = crate::EnumBitfieldStruct<u8, Mpbt_SPEC>;
3318 impl Mpbt {
3319 #[doc = "Data transmission cycle"]
3320 pub const _0: Self = Self::new(0);
3321
3322 #[doc = "ID transmission cycle"]
3323 pub const _1: Self = Self::new(1);
3324 }
3325}
3326#[doc(hidden)]
3327#[derive(Copy, Clone, Eq, PartialEq)]
3328pub struct Tdrhl_SPEC;
3329impl crate::sealed::RegSpec for Tdrhl_SPEC {
3330 type DataType = u16;
3331}
3332
3333#[doc = "Transmit Data Register for Non-Manchester mode (MMR.MANEN = 0)"]
3334pub type Tdrhl = crate::RegValueT<Tdrhl_SPEC>;
3335
3336impl Tdrhl {
3337 #[doc = "Serial Transmit Data"]
3338 #[inline(always)]
3339 pub fn tdat(
3340 self,
3341 ) -> crate::common::RegisterField<0, 0x1ff, 1, 0, u16, u16, Tdrhl_SPEC, crate::common::RW> {
3342 crate::common::RegisterField::<0,0x1ff,1,0,u16,u16,Tdrhl_SPEC,crate::common::RW>::from_register(self,0)
3343 }
3344}
3345impl ::core::default::Default for Tdrhl {
3346 #[inline(always)]
3347 fn default() -> Tdrhl {
3348 <crate::RegValueT<Tdrhl_SPEC> as RegisterValue<_>>::new(65535)
3349 }
3350}
3351
3352#[doc(hidden)]
3353#[derive(Copy, Clone, Eq, PartialEq)]
3354pub struct Ftdrh_SPEC;
3355impl crate::sealed::RegSpec for Ftdrh_SPEC {
3356 type DataType = u8;
3357}
3358
3359#[doc = "Transmit FIFO Data Register"]
3360pub type Ftdrh = crate::RegValueT<Ftdrh_SPEC>;
3361
3362impl Ftdrh {
3363 #[doc = "Multi-Processor Transfer Bit Flag"]
3364 #[inline(always)]
3365 pub fn mpbt(
3366 self,
3367 ) -> crate::common::RegisterField<
3368 1,
3369 0x1,
3370 1,
3371 0,
3372 ftdrh::Mpbt,
3373 ftdrh::Mpbt,
3374 Ftdrh_SPEC,
3375 crate::common::W,
3376 > {
3377 crate::common::RegisterField::<
3378 1,
3379 0x1,
3380 1,
3381 0,
3382 ftdrh::Mpbt,
3383 ftdrh::Mpbt,
3384 Ftdrh_SPEC,
3385 crate::common::W,
3386 >::from_register(self, 0)
3387 }
3388}
3389impl ::core::default::Default for Ftdrh {
3390 #[inline(always)]
3391 fn default() -> Ftdrh {
3392 <crate::RegValueT<Ftdrh_SPEC> as RegisterValue<_>>::new(255)
3393 }
3394}
3395pub mod ftdrh {
3396
3397 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3398 pub struct Mpbt_SPEC;
3399 pub type Mpbt = crate::EnumBitfieldStruct<u8, Mpbt_SPEC>;
3400 impl Mpbt {
3401 #[doc = "Data transmission cycle"]
3402 pub const _0: Self = Self::new(0);
3403
3404 #[doc = "ID transmission cycle"]
3405 pub const _1: Self = Self::new(1);
3406 }
3407}
3408#[doc(hidden)]
3409#[derive(Copy, Clone, Eq, PartialEq)]
3410pub struct Ftdrl_SPEC;
3411impl crate::sealed::RegSpec for Ftdrl_SPEC {
3412 type DataType = u8;
3413}
3414
3415#[doc = "Transmit FIFO Data Register"]
3416pub type Ftdrl = crate::RegValueT<Ftdrl_SPEC>;
3417
3418impl Ftdrl {
3419 #[doc = "Serial transmit data"]
3420 #[inline(always)]
3421 pub fn tdat(
3422 self,
3423 ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, u8, Ftdrl_SPEC, crate::common::W> {
3424 crate::common::RegisterField::<0,0xff,1,0,u8,u8,Ftdrl_SPEC,crate::common::W>::from_register(self,0)
3425 }
3426}
3427impl ::core::default::Default for Ftdrl {
3428 #[inline(always)]
3429 fn default() -> Ftdrl {
3430 <crate::RegValueT<Ftdrl_SPEC> as RegisterValue<_>>::new(255)
3431 }
3432}
3433
3434#[doc(hidden)]
3435#[derive(Copy, Clone, Eq, PartialEq)]
3436pub struct Frdrhl_SPEC;
3437impl crate::sealed::RegSpec for Frdrhl_SPEC {
3438 type DataType = u16;
3439}
3440
3441#[doc = "Receive FIFO Data Register"]
3442pub type Frdrhl = crate::RegValueT<Frdrhl_SPEC>;
3443
3444impl Frdrhl {
3445 #[doc = "Serial receive data"]
3446 #[inline(always)]
3447 pub fn rdat(
3448 self,
3449 ) -> crate::common::RegisterField<0, 0x1ff, 1, 0, u16, u16, Frdrhl_SPEC, crate::common::R> {
3450 crate::common::RegisterField::<0,0x1ff,1,0,u16,u16,Frdrhl_SPEC,crate::common::R>::from_register(self,0)
3451 }
3452
3453 #[doc = "Multi-Processor Bit Flag"]
3454 #[inline(always)]
3455 pub fn mpb(
3456 self,
3457 ) -> crate::common::RegisterField<
3458 9,
3459 0x1,
3460 1,
3461 0,
3462 frdrhl::Mpb,
3463 frdrhl::Mpb,
3464 Frdrhl_SPEC,
3465 crate::common::R,
3466 > {
3467 crate::common::RegisterField::<
3468 9,
3469 0x1,
3470 1,
3471 0,
3472 frdrhl::Mpb,
3473 frdrhl::Mpb,
3474 Frdrhl_SPEC,
3475 crate::common::R,
3476 >::from_register(self, 0)
3477 }
3478
3479 #[doc = "Receive Data Ready Flag"]
3480 #[inline(always)]
3481 pub fn dr(
3482 self,
3483 ) -> crate::common::RegisterField<
3484 10,
3485 0x1,
3486 1,
3487 0,
3488 frdrhl::Dr,
3489 frdrhl::Dr,
3490 Frdrhl_SPEC,
3491 crate::common::R,
3492 > {
3493 crate::common::RegisterField::<
3494 10,
3495 0x1,
3496 1,
3497 0,
3498 frdrhl::Dr,
3499 frdrhl::Dr,
3500 Frdrhl_SPEC,
3501 crate::common::R,
3502 >::from_register(self, 0)
3503 }
3504
3505 #[doc = "Parity Error Flag"]
3506 #[inline(always)]
3507 pub fn per(
3508 self,
3509 ) -> crate::common::RegisterField<
3510 11,
3511 0x1,
3512 1,
3513 0,
3514 frdrhl::Per,
3515 frdrhl::Per,
3516 Frdrhl_SPEC,
3517 crate::common::R,
3518 > {
3519 crate::common::RegisterField::<
3520 11,
3521 0x1,
3522 1,
3523 0,
3524 frdrhl::Per,
3525 frdrhl::Per,
3526 Frdrhl_SPEC,
3527 crate::common::R,
3528 >::from_register(self, 0)
3529 }
3530
3531 #[doc = "Framing Error Flag"]
3532 #[inline(always)]
3533 pub fn fer(
3534 self,
3535 ) -> crate::common::RegisterField<
3536 12,
3537 0x1,
3538 1,
3539 0,
3540 frdrhl::Fer,
3541 frdrhl::Fer,
3542 Frdrhl_SPEC,
3543 crate::common::R,
3544 > {
3545 crate::common::RegisterField::<
3546 12,
3547 0x1,
3548 1,
3549 0,
3550 frdrhl::Fer,
3551 frdrhl::Fer,
3552 Frdrhl_SPEC,
3553 crate::common::R,
3554 >::from_register(self, 0)
3555 }
3556
3557 #[doc = "Overrun Error Flag"]
3558 #[inline(always)]
3559 pub fn orer(
3560 self,
3561 ) -> crate::common::RegisterField<
3562 13,
3563 0x1,
3564 1,
3565 0,
3566 frdrhl::Orer,
3567 frdrhl::Orer,
3568 Frdrhl_SPEC,
3569 crate::common::R,
3570 > {
3571 crate::common::RegisterField::<
3572 13,
3573 0x1,
3574 1,
3575 0,
3576 frdrhl::Orer,
3577 frdrhl::Orer,
3578 Frdrhl_SPEC,
3579 crate::common::R,
3580 >::from_register(self, 0)
3581 }
3582
3583 #[doc = "Receive FIFO Data Full Flag"]
3584 #[inline(always)]
3585 pub fn rdf(
3586 self,
3587 ) -> crate::common::RegisterField<
3588 14,
3589 0x1,
3590 1,
3591 0,
3592 frdrhl::Rdf,
3593 frdrhl::Rdf,
3594 Frdrhl_SPEC,
3595 crate::common::R,
3596 > {
3597 crate::common::RegisterField::<
3598 14,
3599 0x1,
3600 1,
3601 0,
3602 frdrhl::Rdf,
3603 frdrhl::Rdf,
3604 Frdrhl_SPEC,
3605 crate::common::R,
3606 >::from_register(self, 0)
3607 }
3608}
3609impl ::core::default::Default for Frdrhl {
3610 #[inline(always)]
3611 fn default() -> Frdrhl {
3612 <crate::RegValueT<Frdrhl_SPEC> as RegisterValue<_>>::new(0)
3613 }
3614}
3615pub mod frdrhl {
3616
3617 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3618 pub struct Mpb_SPEC;
3619 pub type Mpb = crate::EnumBitfieldStruct<u8, Mpb_SPEC>;
3620 impl Mpb {
3621 #[doc = "Data transmission cycle"]
3622 pub const _0: Self = Self::new(0);
3623
3624 #[doc = "ID transmission cycle"]
3625 pub const _1: Self = Self::new(1);
3626 }
3627 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3628 pub struct Dr_SPEC;
3629 pub type Dr = crate::EnumBitfieldStruct<u8, Dr_SPEC>;
3630 impl Dr {
3631 #[doc = "Receiving is in progress, or no received data remains in the FRDRH and FRDRL registers after successfully completed reception"]
3632 pub const _0: Self = Self::new(0);
3633
3634 #[doc = "Next receive data is not received for a period after successfully completed reception"]
3635 pub const _1: Self = Self::new(1);
3636 }
3637 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3638 pub struct Per_SPEC;
3639 pub type Per = crate::EnumBitfieldStruct<u8, Per_SPEC>;
3640 impl Per {
3641 #[doc = "No parity error occurred in the first data of FRDRH and FRDRL"]
3642 pub const _0: Self = Self::new(0);
3643
3644 #[doc = "Parity error occurred in the first data of FRDRH and FRDRL"]
3645 pub const _1: Self = Self::new(1);
3646 }
3647 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3648 pub struct Fer_SPEC;
3649 pub type Fer = crate::EnumBitfieldStruct<u8, Fer_SPEC>;
3650 impl Fer {
3651 #[doc = "No framing error occurred in the first data of FRDRH and FRDRL"]
3652 pub const _0: Self = Self::new(0);
3653
3654 #[doc = "Framing error occurred in the first data of FRDRH and FRDRL"]
3655 pub const _1: Self = Self::new(1);
3656 }
3657 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3658 pub struct Orer_SPEC;
3659 pub type Orer = crate::EnumBitfieldStruct<u8, Orer_SPEC>;
3660 impl Orer {
3661 #[doc = "No overrun error occurred"]
3662 pub const _0: Self = Self::new(0);
3663
3664 #[doc = "Overrun error occurred"]
3665 pub const _1: Self = Self::new(1);
3666 }
3667 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3668 pub struct Rdf_SPEC;
3669 pub type Rdf = crate::EnumBitfieldStruct<u8, Rdf_SPEC>;
3670 impl Rdf {
3671 #[doc = "The amount of receive data written in FRDRH and FRDRL is less than the specified receive triggering number"]
3672 pub const _0: Self = Self::new(0);
3673
3674 #[doc = "The amount of receive data written in FRDRH and FRDRL is equal to or greater than the specified receive triggering number"]
3675 pub const _1: Self = Self::new(1);
3676 }
3677}
3678#[doc(hidden)]
3679#[derive(Copy, Clone, Eq, PartialEq)]
3680pub struct Rdrhl_SPEC;
3681impl crate::sealed::RegSpec for Rdrhl_SPEC {
3682 type DataType = u16;
3683}
3684
3685#[doc = "Receive Data Register for Non-Manchester mode (MMR.MANEN = 0)"]
3686pub type Rdrhl = crate::RegValueT<Rdrhl_SPEC>;
3687
3688impl Rdrhl {
3689 #[doc = "Serial Receive Data"]
3690 #[inline(always)]
3691 pub fn rdat(
3692 self,
3693 ) -> crate::common::RegisterField<0, 0x1ff, 1, 0, u16, u16, Rdrhl_SPEC, crate::common::R> {
3694 crate::common::RegisterField::<0,0x1ff,1,0,u16,u16,Rdrhl_SPEC,crate::common::R>::from_register(self,0)
3695 }
3696}
3697impl ::core::default::Default for Rdrhl {
3698 #[inline(always)]
3699 fn default() -> Rdrhl {
3700 <crate::RegValueT<Rdrhl_SPEC> as RegisterValue<_>>::new(0)
3701 }
3702}
3703
3704#[doc(hidden)]
3705#[derive(Copy, Clone, Eq, PartialEq)]
3706pub struct Frdrh_SPEC;
3707impl crate::sealed::RegSpec for Frdrh_SPEC {
3708 type DataType = u8;
3709}
3710
3711#[doc = "Receive FIFO Data Register"]
3712pub type Frdrh = crate::RegValueT<Frdrh_SPEC>;
3713
3714impl Frdrh {
3715 #[doc = "Multi-Processor Bit Flag"]
3716 #[inline(always)]
3717 pub fn mpb(
3718 self,
3719 ) -> crate::common::RegisterField<
3720 1,
3721 0x1,
3722 1,
3723 0,
3724 frdrh::Mpb,
3725 frdrh::Mpb,
3726 Frdrh_SPEC,
3727 crate::common::R,
3728 > {
3729 crate::common::RegisterField::<
3730 1,
3731 0x1,
3732 1,
3733 0,
3734 frdrh::Mpb,
3735 frdrh::Mpb,
3736 Frdrh_SPEC,
3737 crate::common::R,
3738 >::from_register(self, 0)
3739 }
3740
3741 #[doc = "Receive Data Ready Flag"]
3742 #[inline(always)]
3743 pub fn dr(
3744 self,
3745 ) -> crate::common::RegisterField<
3746 2,
3747 0x1,
3748 1,
3749 0,
3750 frdrh::Dr,
3751 frdrh::Dr,
3752 Frdrh_SPEC,
3753 crate::common::R,
3754 > {
3755 crate::common::RegisterField::<
3756 2,
3757 0x1,
3758 1,
3759 0,
3760 frdrh::Dr,
3761 frdrh::Dr,
3762 Frdrh_SPEC,
3763 crate::common::R,
3764 >::from_register(self, 0)
3765 }
3766
3767 #[doc = "Parity Error Flag"]
3768 #[inline(always)]
3769 pub fn per(
3770 self,
3771 ) -> crate::common::RegisterField<
3772 3,
3773 0x1,
3774 1,
3775 0,
3776 frdrh::Per,
3777 frdrh::Per,
3778 Frdrh_SPEC,
3779 crate::common::R,
3780 > {
3781 crate::common::RegisterField::<
3782 3,
3783 0x1,
3784 1,
3785 0,
3786 frdrh::Per,
3787 frdrh::Per,
3788 Frdrh_SPEC,
3789 crate::common::R,
3790 >::from_register(self, 0)
3791 }
3792
3793 #[doc = "Framing Error Flag"]
3794 #[inline(always)]
3795 pub fn fer(
3796 self,
3797 ) -> crate::common::RegisterField<
3798 4,
3799 0x1,
3800 1,
3801 0,
3802 frdrh::Fer,
3803 frdrh::Fer,
3804 Frdrh_SPEC,
3805 crate::common::R,
3806 > {
3807 crate::common::RegisterField::<
3808 4,
3809 0x1,
3810 1,
3811 0,
3812 frdrh::Fer,
3813 frdrh::Fer,
3814 Frdrh_SPEC,
3815 crate::common::R,
3816 >::from_register(self, 0)
3817 }
3818
3819 #[doc = "Overrun Error Flag"]
3820 #[inline(always)]
3821 pub fn orer(
3822 self,
3823 ) -> crate::common::RegisterField<
3824 5,
3825 0x1,
3826 1,
3827 0,
3828 frdrh::Orer,
3829 frdrh::Orer,
3830 Frdrh_SPEC,
3831 crate::common::R,
3832 > {
3833 crate::common::RegisterField::<
3834 5,
3835 0x1,
3836 1,
3837 0,
3838 frdrh::Orer,
3839 frdrh::Orer,
3840 Frdrh_SPEC,
3841 crate::common::R,
3842 >::from_register(self, 0)
3843 }
3844
3845 #[doc = "Receive FIFO Data Full Flag"]
3846 #[inline(always)]
3847 pub fn rdf(
3848 self,
3849 ) -> crate::common::RegisterField<
3850 6,
3851 0x1,
3852 1,
3853 0,
3854 frdrh::Rdf,
3855 frdrh::Rdf,
3856 Frdrh_SPEC,
3857 crate::common::R,
3858 > {
3859 crate::common::RegisterField::<
3860 6,
3861 0x1,
3862 1,
3863 0,
3864 frdrh::Rdf,
3865 frdrh::Rdf,
3866 Frdrh_SPEC,
3867 crate::common::R,
3868 >::from_register(self, 0)
3869 }
3870}
3871impl ::core::default::Default for Frdrh {
3872 #[inline(always)]
3873 fn default() -> Frdrh {
3874 <crate::RegValueT<Frdrh_SPEC> as RegisterValue<_>>::new(0)
3875 }
3876}
3877pub mod frdrh {
3878
3879 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3880 pub struct Mpb_SPEC;
3881 pub type Mpb = crate::EnumBitfieldStruct<u8, Mpb_SPEC>;
3882 impl Mpb {
3883 #[doc = "Data transmission cycle"]
3884 pub const _0: Self = Self::new(0);
3885
3886 #[doc = "ID transmission cycle"]
3887 pub const _1: Self = Self::new(1);
3888 }
3889 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3890 pub struct Dr_SPEC;
3891 pub type Dr = crate::EnumBitfieldStruct<u8, Dr_SPEC>;
3892 impl Dr {
3893 #[doc = "Receiving is in progress, or no received data remains in the FRDRH and FRDRL registers after successfully completed reception"]
3894 pub const _0: Self = Self::new(0);
3895
3896 #[doc = "Next receive data is not received for a period after successfully completed reception"]
3897 pub const _1: Self = Self::new(1);
3898 }
3899 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3900 pub struct Per_SPEC;
3901 pub type Per = crate::EnumBitfieldStruct<u8, Per_SPEC>;
3902 impl Per {
3903 #[doc = "No parity error occurred in the first data of FRDRH and FRDRL"]
3904 pub const _0: Self = Self::new(0);
3905
3906 #[doc = "Parity error occurred in the first data of FRDRH and FRDRL"]
3907 pub const _1: Self = Self::new(1);
3908 }
3909 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3910 pub struct Fer_SPEC;
3911 pub type Fer = crate::EnumBitfieldStruct<u8, Fer_SPEC>;
3912 impl Fer {
3913 #[doc = "No framing error occurred in the first data of FRDRH and FRDRL"]
3914 pub const _0: Self = Self::new(0);
3915
3916 #[doc = "Framing error occurred in the first data of FRDRH and FRDRL"]
3917 pub const _1: Self = Self::new(1);
3918 }
3919 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3920 pub struct Orer_SPEC;
3921 pub type Orer = crate::EnumBitfieldStruct<u8, Orer_SPEC>;
3922 impl Orer {
3923 #[doc = "No overrun error occurred"]
3924 pub const _0: Self = Self::new(0);
3925
3926 #[doc = "Overrun error occurred"]
3927 pub const _1: Self = Self::new(1);
3928 }
3929 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
3930 pub struct Rdf_SPEC;
3931 pub type Rdf = crate::EnumBitfieldStruct<u8, Rdf_SPEC>;
3932 impl Rdf {
3933 #[doc = "The amount of receive data written in FRDRH and FRDRL is less than the specified receive triggering number"]
3934 pub const _0: Self = Self::new(0);
3935
3936 #[doc = "The amount of receive data written in FRDRH and FRDRL is equal to or greater than the specified receive triggering number"]
3937 pub const _1: Self = Self::new(1);
3938 }
3939}
3940#[doc(hidden)]
3941#[derive(Copy, Clone, Eq, PartialEq)]
3942pub struct Frdrl_SPEC;
3943impl crate::sealed::RegSpec for Frdrl_SPEC {
3944 type DataType = u8;
3945}
3946
3947#[doc = "Receive FIFO Data Register"]
3948pub type Frdrl = crate::RegValueT<Frdrl_SPEC>;
3949
3950impl Frdrl {
3951 #[doc = "Serial receive data"]
3952 #[inline(always)]
3953 pub fn rdat(
3954 self,
3955 ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, u8, Frdrl_SPEC, crate::common::R> {
3956 crate::common::RegisterField::<0,0xff,1,0,u8,u8,Frdrl_SPEC,crate::common::R>::from_register(self,0)
3957 }
3958}
3959impl ::core::default::Default for Frdrl {
3960 #[inline(always)]
3961 fn default() -> Frdrl {
3962 <crate::RegValueT<Frdrl_SPEC> as RegisterValue<_>>::new(0)
3963 }
3964}
3965
3966#[doc(hidden)]
3967#[derive(Copy, Clone, Eq, PartialEq)]
3968pub struct Mddr_SPEC;
3969impl crate::sealed::RegSpec for Mddr_SPEC {
3970 type DataType = u8;
3971}
3972
3973#[doc = "Modulation Duty Register"]
3974pub type Mddr = crate::RegValueT<Mddr_SPEC>;
3975
3976impl NoBitfieldReg<Mddr_SPEC> for Mddr {}
3977impl ::core::default::Default for Mddr {
3978 #[inline(always)]
3979 fn default() -> Mddr {
3980 <crate::RegValueT<Mddr_SPEC> as RegisterValue<_>>::new(255)
3981 }
3982}
3983
3984#[doc(hidden)]
3985#[derive(Copy, Clone, Eq, PartialEq)]
3986pub struct Dccr_SPEC;
3987impl crate::sealed::RegSpec for Dccr_SPEC {
3988 type DataType = u8;
3989}
3990
3991#[doc = "Data Compare Match Control Register"]
3992pub type Dccr = crate::RegValueT<Dccr_SPEC>;
3993
3994impl Dccr {
3995 #[doc = "Data Compare Match Flag"]
3996 #[inline(always)]
3997 pub fn dcmf(
3998 self,
3999 ) -> crate::common::RegisterField<
4000 0,
4001 0x1,
4002 1,
4003 0,
4004 dccr::Dcmf,
4005 dccr::Dcmf,
4006 Dccr_SPEC,
4007 crate::common::RW,
4008 > {
4009 crate::common::RegisterField::<
4010 0,
4011 0x1,
4012 1,
4013 0,
4014 dccr::Dcmf,
4015 dccr::Dcmf,
4016 Dccr_SPEC,
4017 crate::common::RW,
4018 >::from_register(self, 0)
4019 }
4020
4021 #[doc = "Data Compare Match Parity Error Flag"]
4022 #[inline(always)]
4023 pub fn dper(
4024 self,
4025 ) -> crate::common::RegisterField<
4026 3,
4027 0x1,
4028 1,
4029 0,
4030 dccr::Dper,
4031 dccr::Dper,
4032 Dccr_SPEC,
4033 crate::common::RW,
4034 > {
4035 crate::common::RegisterField::<
4036 3,
4037 0x1,
4038 1,
4039 0,
4040 dccr::Dper,
4041 dccr::Dper,
4042 Dccr_SPEC,
4043 crate::common::RW,
4044 >::from_register(self, 0)
4045 }
4046
4047 #[doc = "Data Compare Match Framing Error Flag"]
4048 #[inline(always)]
4049 pub fn dfer(
4050 self,
4051 ) -> crate::common::RegisterField<
4052 4,
4053 0x1,
4054 1,
4055 0,
4056 dccr::Dfer,
4057 dccr::Dfer,
4058 Dccr_SPEC,
4059 crate::common::RW,
4060 > {
4061 crate::common::RegisterField::<
4062 4,
4063 0x1,
4064 1,
4065 0,
4066 dccr::Dfer,
4067 dccr::Dfer,
4068 Dccr_SPEC,
4069 crate::common::RW,
4070 >::from_register(self, 0)
4071 }
4072
4073 #[doc = "ID Frame Select"]
4074 #[inline(always)]
4075 pub fn idsel(
4076 self,
4077 ) -> crate::common::RegisterField<
4078 6,
4079 0x1,
4080 1,
4081 0,
4082 dccr::Idsel,
4083 dccr::Idsel,
4084 Dccr_SPEC,
4085 crate::common::RW,
4086 > {
4087 crate::common::RegisterField::<
4088 6,
4089 0x1,
4090 1,
4091 0,
4092 dccr::Idsel,
4093 dccr::Idsel,
4094 Dccr_SPEC,
4095 crate::common::RW,
4096 >::from_register(self, 0)
4097 }
4098
4099 #[doc = "Data Compare Match Enable"]
4100 #[inline(always)]
4101 pub fn dcme(
4102 self,
4103 ) -> crate::common::RegisterField<
4104 7,
4105 0x1,
4106 1,
4107 0,
4108 dccr::Dcme,
4109 dccr::Dcme,
4110 Dccr_SPEC,
4111 crate::common::RW,
4112 > {
4113 crate::common::RegisterField::<
4114 7,
4115 0x1,
4116 1,
4117 0,
4118 dccr::Dcme,
4119 dccr::Dcme,
4120 Dccr_SPEC,
4121 crate::common::RW,
4122 >::from_register(self, 0)
4123 }
4124}
4125impl ::core::default::Default for Dccr {
4126 #[inline(always)]
4127 fn default() -> Dccr {
4128 <crate::RegValueT<Dccr_SPEC> as RegisterValue<_>>::new(64)
4129 }
4130}
4131pub mod dccr {
4132
4133 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4134 pub struct Dcmf_SPEC;
4135 pub type Dcmf = crate::EnumBitfieldStruct<u8, Dcmf_SPEC>;
4136 impl Dcmf {
4137 #[doc = "Not matched"]
4138 pub const _0: Self = Self::new(0);
4139
4140 #[doc = "Matched"]
4141 pub const _1: Self = Self::new(1);
4142 }
4143 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4144 pub struct Dper_SPEC;
4145 pub type Dper = crate::EnumBitfieldStruct<u8, Dper_SPEC>;
4146 impl Dper {
4147 #[doc = "No parity error occurred"]
4148 pub const _0: Self = Self::new(0);
4149
4150 #[doc = "Parity error occurred"]
4151 pub const _1: Self = Self::new(1);
4152 }
4153 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4154 pub struct Dfer_SPEC;
4155 pub type Dfer = crate::EnumBitfieldStruct<u8, Dfer_SPEC>;
4156 impl Dfer {
4157 #[doc = "No framing error occurred"]
4158 pub const _0: Self = Self::new(0);
4159
4160 #[doc = "Framing error occurred"]
4161 pub const _1: Self = Self::new(1);
4162 }
4163 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4164 pub struct Idsel_SPEC;
4165 pub type Idsel = crate::EnumBitfieldStruct<u8, Idsel_SPEC>;
4166 impl Idsel {
4167 #[doc = "Always compare data regardless of the MPB bit value"]
4168 pub const _0: Self = Self::new(0);
4169
4170 #[doc = "Only compare data when MPB bit = 1 (ID frame)"]
4171 pub const _1: Self = Self::new(1);
4172 }
4173 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4174 pub struct Dcme_SPEC;
4175 pub type Dcme = crate::EnumBitfieldStruct<u8, Dcme_SPEC>;
4176 impl Dcme {
4177 #[doc = "Disable address match function"]
4178 pub const _0: Self = Self::new(0);
4179
4180 #[doc = "Enable address match function"]
4181 pub const _1: Self = Self::new(1);
4182 }
4183}
4184#[doc(hidden)]
4185#[derive(Copy, Clone, Eq, PartialEq)]
4186pub struct Fcr_SPEC;
4187impl crate::sealed::RegSpec for Fcr_SPEC {
4188 type DataType = u16;
4189}
4190
4191#[doc = "FIFO Control Register"]
4192pub type Fcr = crate::RegValueT<Fcr_SPEC>;
4193
4194impl Fcr {
4195 #[doc = "FIFO Mode Select"]
4196 #[inline(always)]
4197 pub fn fm(
4198 self,
4199 ) -> crate::common::RegisterField<0, 0x1, 1, 0, fcr::Fm, fcr::Fm, Fcr_SPEC, crate::common::RW>
4200 {
4201 crate::common::RegisterField::<0,0x1,1,0,fcr::Fm,fcr::Fm,Fcr_SPEC,crate::common::RW>::from_register(self,0)
4202 }
4203
4204 #[doc = "Receive FIFO Data Register Reset"]
4205 #[inline(always)]
4206 pub fn rfrst(
4207 self,
4208 ) -> crate::common::RegisterField<
4209 1,
4210 0x1,
4211 1,
4212 0,
4213 fcr::Rfrst,
4214 fcr::Rfrst,
4215 Fcr_SPEC,
4216 crate::common::RW,
4217 > {
4218 crate::common::RegisterField::<
4219 1,
4220 0x1,
4221 1,
4222 0,
4223 fcr::Rfrst,
4224 fcr::Rfrst,
4225 Fcr_SPEC,
4226 crate::common::RW,
4227 >::from_register(self, 0)
4228 }
4229
4230 #[doc = "Transmit FIFO Data Register Reset"]
4231 #[inline(always)]
4232 pub fn tfrst(
4233 self,
4234 ) -> crate::common::RegisterField<
4235 2,
4236 0x1,
4237 1,
4238 0,
4239 fcr::Tfrst,
4240 fcr::Tfrst,
4241 Fcr_SPEC,
4242 crate::common::RW,
4243 > {
4244 crate::common::RegisterField::<
4245 2,
4246 0x1,
4247 1,
4248 0,
4249 fcr::Tfrst,
4250 fcr::Tfrst,
4251 Fcr_SPEC,
4252 crate::common::RW,
4253 >::from_register(self, 0)
4254 }
4255
4256 #[doc = "Receive Data Ready Error Select"]
4257 #[inline(always)]
4258 pub fn dres(
4259 self,
4260 ) -> crate::common::RegisterField<3, 0x1, 1, 0, fcr::Dres, fcr::Dres, Fcr_SPEC, crate::common::RW>
4261 {
4262 crate::common::RegisterField::<
4263 3,
4264 0x1,
4265 1,
4266 0,
4267 fcr::Dres,
4268 fcr::Dres,
4269 Fcr_SPEC,
4270 crate::common::RW,
4271 >::from_register(self, 0)
4272 }
4273
4274 #[doc = "Transmit FIFO Data Trigger Number"]
4275 #[inline(always)]
4276 pub fn ttrg(
4277 self,
4278 ) -> crate::common::RegisterField<4, 0xf, 1, 0, u8, u8, Fcr_SPEC, crate::common::RW> {
4279 crate::common::RegisterField::<4,0xf,1,0,u8,u8,Fcr_SPEC,crate::common::RW>::from_register(self,0)
4280 }
4281
4282 #[doc = "Receive FIFO Data Trigger Number"]
4283 #[inline(always)]
4284 pub fn rtrg(
4285 self,
4286 ) -> crate::common::RegisterField<8, 0xf, 1, 0, u8, u8, Fcr_SPEC, crate::common::RW> {
4287 crate::common::RegisterField::<8,0xf,1,0,u8,u8,Fcr_SPEC,crate::common::RW>::from_register(self,0)
4288 }
4289
4290 #[doc = "RTS Output Active Trigger Number Select"]
4291 #[inline(always)]
4292 pub fn rstrg(
4293 self,
4294 ) -> crate::common::RegisterField<12, 0xf, 1, 0, u8, u8, Fcr_SPEC, crate::common::RW> {
4295 crate::common::RegisterField::<12,0xf,1,0,u8,u8,Fcr_SPEC,crate::common::RW>::from_register(self,0)
4296 }
4297}
4298impl ::core::default::Default for Fcr {
4299 #[inline(always)]
4300 fn default() -> Fcr {
4301 <crate::RegValueT<Fcr_SPEC> as RegisterValue<_>>::new(63488)
4302 }
4303}
4304pub mod fcr {
4305
4306 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4307 pub struct Fm_SPEC;
4308 pub type Fm = crate::EnumBitfieldStruct<u8, Fm_SPEC>;
4309 impl Fm {
4310 #[doc = "Non-FIFO mode. Selects TDR/RDR or TDRHL/RDRHL for communication."]
4311 pub const _0: Self = Self::new(0);
4312
4313 #[doc = "FIFO mode. Selects FTDRHL/FRDRHL for communication."]
4314 pub const _1: Self = Self::new(1);
4315 }
4316 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4317 pub struct Rfrst_SPEC;
4318 pub type Rfrst = crate::EnumBitfieldStruct<u8, Rfrst_SPEC>;
4319 impl Rfrst {
4320 #[doc = "Do not reset FRDRHL"]
4321 pub const _0: Self = Self::new(0);
4322
4323 #[doc = "Reset FRDRHL"]
4324 pub const _1: Self = Self::new(1);
4325 }
4326 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4327 pub struct Tfrst_SPEC;
4328 pub type Tfrst = crate::EnumBitfieldStruct<u8, Tfrst_SPEC>;
4329 impl Tfrst {
4330 #[doc = "Do not reset FTDRHL"]
4331 pub const _0: Self = Self::new(0);
4332
4333 #[doc = "Reset FTDRHL"]
4334 pub const _1: Self = Self::new(1);
4335 }
4336 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4337 pub struct Dres_SPEC;
4338 pub type Dres = crate::EnumBitfieldStruct<u8, Dres_SPEC>;
4339 impl Dres {
4340 #[doc = "Receive data full interrupt (SCIn_RXI)"]
4341 pub const _0: Self = Self::new(0);
4342
4343 #[doc = "Receive error interrupt (SCIn_ERI)"]
4344 pub const _1: Self = Self::new(1);
4345 }
4346}
4347#[doc(hidden)]
4348#[derive(Copy, Clone, Eq, PartialEq)]
4349pub struct Fdr_SPEC;
4350impl crate::sealed::RegSpec for Fdr_SPEC {
4351 type DataType = u16;
4352}
4353
4354#[doc = "FIFO Data Count Register"]
4355pub type Fdr = crate::RegValueT<Fdr_SPEC>;
4356
4357impl Fdr {
4358 #[doc = "Receive FIFO Data Count"]
4359 #[inline(always)]
4360 pub fn r(
4361 self,
4362 ) -> crate::common::RegisterField<0, 0x1f, 1, 0, u8, u8, Fdr_SPEC, crate::common::R> {
4363 crate::common::RegisterField::<0,0x1f,1,0,u8,u8,Fdr_SPEC,crate::common::R>::from_register(self,0)
4364 }
4365
4366 #[doc = "Transmit FIFO Data Count"]
4367 #[inline(always)]
4368 pub fn t(
4369 self,
4370 ) -> crate::common::RegisterField<8, 0x1f, 1, 0, u8, u8, Fdr_SPEC, crate::common::R> {
4371 crate::common::RegisterField::<8,0x1f,1,0,u8,u8,Fdr_SPEC,crate::common::R>::from_register(self,0)
4372 }
4373}
4374impl ::core::default::Default for Fdr {
4375 #[inline(always)]
4376 fn default() -> Fdr {
4377 <crate::RegValueT<Fdr_SPEC> as RegisterValue<_>>::new(0)
4378 }
4379}
4380
4381#[doc(hidden)]
4382#[derive(Copy, Clone, Eq, PartialEq)]
4383pub struct Lsr_SPEC;
4384impl crate::sealed::RegSpec for Lsr_SPEC {
4385 type DataType = u16;
4386}
4387
4388#[doc = "Line Status Register"]
4389pub type Lsr = crate::RegValueT<Lsr_SPEC>;
4390
4391impl Lsr {
4392 #[doc = "Overrun Error Flag"]
4393 #[inline(always)]
4394 pub fn orer(
4395 self,
4396 ) -> crate::common::RegisterField<0, 0x1, 1, 0, lsr::Orer, lsr::Orer, Lsr_SPEC, crate::common::R>
4397 {
4398 crate::common::RegisterField::<0,0x1,1,0,lsr::Orer,lsr::Orer,Lsr_SPEC,crate::common::R>::from_register(self,0)
4399 }
4400
4401 #[doc = "Framing Error Count"]
4402 #[inline(always)]
4403 pub fn fnum(
4404 self,
4405 ) -> crate::common::RegisterField<2, 0x1f, 1, 0, u8, u8, Lsr_SPEC, crate::common::R> {
4406 crate::common::RegisterField::<2,0x1f,1,0,u8,u8,Lsr_SPEC,crate::common::R>::from_register(self,0)
4407 }
4408
4409 #[doc = "Parity Error Count"]
4410 #[inline(always)]
4411 pub fn pnum(
4412 self,
4413 ) -> crate::common::RegisterField<8, 0x1f, 1, 0, u8, u8, Lsr_SPEC, crate::common::R> {
4414 crate::common::RegisterField::<8,0x1f,1,0,u8,u8,Lsr_SPEC,crate::common::R>::from_register(self,0)
4415 }
4416}
4417impl ::core::default::Default for Lsr {
4418 #[inline(always)]
4419 fn default() -> Lsr {
4420 <crate::RegValueT<Lsr_SPEC> as RegisterValue<_>>::new(0)
4421 }
4422}
4423pub mod lsr {
4424
4425 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4426 pub struct Orer_SPEC;
4427 pub type Orer = crate::EnumBitfieldStruct<u8, Orer_SPEC>;
4428 impl Orer {
4429 #[doc = "No overrun error occurred"]
4430 pub const _0: Self = Self::new(0);
4431
4432 #[doc = "Overrun error occurred"]
4433 pub const _1: Self = Self::new(1);
4434 }
4435}
4436#[doc(hidden)]
4437#[derive(Copy, Clone, Eq, PartialEq)]
4438pub struct Cdr_SPEC;
4439impl crate::sealed::RegSpec for Cdr_SPEC {
4440 type DataType = u16;
4441}
4442
4443#[doc = "Compare Match Data Register"]
4444pub type Cdr = crate::RegValueT<Cdr_SPEC>;
4445
4446impl Cdr {
4447 #[doc = "Compare Match Data"]
4448 #[inline(always)]
4449 pub fn cmpd(
4450 self,
4451 ) -> crate::common::RegisterField<0, 0x1ff, 1, 0, u16, u16, Cdr_SPEC, crate::common::RW> {
4452 crate::common::RegisterField::<0,0x1ff,1,0,u16,u16,Cdr_SPEC,crate::common::RW>::from_register(self,0)
4453 }
4454}
4455impl ::core::default::Default for Cdr {
4456 #[inline(always)]
4457 fn default() -> Cdr {
4458 <crate::RegValueT<Cdr_SPEC> as RegisterValue<_>>::new(0)
4459 }
4460}
4461
4462#[doc(hidden)]
4463#[derive(Copy, Clone, Eq, PartialEq)]
4464pub struct Sptr_SPEC;
4465impl crate::sealed::RegSpec for Sptr_SPEC {
4466 type DataType = u8;
4467}
4468
4469#[doc = "Serial Port Register"]
4470pub type Sptr = crate::RegValueT<Sptr_SPEC>;
4471
4472impl Sptr {
4473 #[doc = "Serial Input Data Monitor"]
4474 #[inline(always)]
4475 pub fn rxdmon(self) -> crate::common::RegisterFieldBool<0, 1, 0, Sptr_SPEC, crate::common::R> {
4476 crate::common::RegisterFieldBool::<0, 1, 0, Sptr_SPEC, crate::common::R>::from_register(
4477 self, 0,
4478 )
4479 }
4480
4481 #[doc = "Serial Port Break Data Select"]
4482 #[inline(always)]
4483 pub fn spb2dt(self) -> crate::common::RegisterFieldBool<1, 1, 0, Sptr_SPEC, crate::common::RW> {
4484 crate::common::RegisterFieldBool::<1, 1, 0, Sptr_SPEC, crate::common::RW>::from_register(
4485 self, 0,
4486 )
4487 }
4488
4489 #[doc = "Serial Port Break I/O"]
4490 #[inline(always)]
4491 pub fn spb2io(
4492 self,
4493 ) -> crate::common::RegisterField<
4494 2,
4495 0x1,
4496 1,
4497 0,
4498 sptr::Spb2Io,
4499 sptr::Spb2Io,
4500 Sptr_SPEC,
4501 crate::common::RW,
4502 > {
4503 crate::common::RegisterField::<
4504 2,
4505 0x1,
4506 1,
4507 0,
4508 sptr::Spb2Io,
4509 sptr::Spb2Io,
4510 Sptr_SPEC,
4511 crate::common::RW,
4512 >::from_register(self, 0)
4513 }
4514
4515 #[doc = "RXD invert bit"]
4516 #[inline(always)]
4517 pub fn rinv(
4518 self,
4519 ) -> crate::common::RegisterField<
4520 4,
4521 0x1,
4522 1,
4523 0,
4524 sptr::Rinv,
4525 sptr::Rinv,
4526 Sptr_SPEC,
4527 crate::common::RW,
4528 > {
4529 crate::common::RegisterField::<
4530 4,
4531 0x1,
4532 1,
4533 0,
4534 sptr::Rinv,
4535 sptr::Rinv,
4536 Sptr_SPEC,
4537 crate::common::RW,
4538 >::from_register(self, 0)
4539 }
4540
4541 #[doc = "TXD invert bit"]
4542 #[inline(always)]
4543 pub fn tinv(
4544 self,
4545 ) -> crate::common::RegisterField<
4546 5,
4547 0x1,
4548 1,
4549 0,
4550 sptr::Tinv,
4551 sptr::Tinv,
4552 Sptr_SPEC,
4553 crate::common::RW,
4554 > {
4555 crate::common::RegisterField::<
4556 5,
4557 0x1,
4558 1,
4559 0,
4560 sptr::Tinv,
4561 sptr::Tinv,
4562 Sptr_SPEC,
4563 crate::common::RW,
4564 >::from_register(self, 0)
4565 }
4566
4567 #[doc = "Adjust receive sampling timing enable"]
4568 #[inline(always)]
4569 pub fn asen(
4570 self,
4571 ) -> crate::common::RegisterField<
4572 6,
4573 0x1,
4574 1,
4575 0,
4576 sptr::Asen,
4577 sptr::Asen,
4578 Sptr_SPEC,
4579 crate::common::RW,
4580 > {
4581 crate::common::RegisterField::<
4582 6,
4583 0x1,
4584 1,
4585 0,
4586 sptr::Asen,
4587 sptr::Asen,
4588 Sptr_SPEC,
4589 crate::common::RW,
4590 >::from_register(self, 0)
4591 }
4592
4593 #[doc = "Adjust transmit timing enable"]
4594 #[inline(always)]
4595 pub fn aten(
4596 self,
4597 ) -> crate::common::RegisterField<
4598 7,
4599 0x1,
4600 1,
4601 0,
4602 sptr::Aten,
4603 sptr::Aten,
4604 Sptr_SPEC,
4605 crate::common::RW,
4606 > {
4607 crate::common::RegisterField::<
4608 7,
4609 0x1,
4610 1,
4611 0,
4612 sptr::Aten,
4613 sptr::Aten,
4614 Sptr_SPEC,
4615 crate::common::RW,
4616 >::from_register(self, 0)
4617 }
4618}
4619impl ::core::default::Default for Sptr {
4620 #[inline(always)]
4621 fn default() -> Sptr {
4622 <crate::RegValueT<Sptr_SPEC> as RegisterValue<_>>::new(3)
4623 }
4624}
4625pub mod sptr {
4626
4627 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4628 pub struct Spb2Io_SPEC;
4629 pub type Spb2Io = crate::EnumBitfieldStruct<u8, Spb2Io_SPEC>;
4630 impl Spb2Io {
4631 #[doc = "Do not output value of SPB2DT bit on TXDn pin"]
4632 pub const _0: Self = Self::new(0);
4633
4634 #[doc = "Output value of SPB2DT bit on TXDn pin"]
4635 pub const _1: Self = Self::new(1);
4636 }
4637 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4638 pub struct Rinv_SPEC;
4639 pub type Rinv = crate::EnumBitfieldStruct<u8, Rinv_SPEC>;
4640 impl Rinv {
4641 #[doc = "Received data from RXDn is not inverted and input."]
4642 pub const _0: Self = Self::new(0);
4643
4644 #[doc = "Received data from RXDn is inverted and input."]
4645 pub const _1: Self = Self::new(1);
4646 }
4647 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4648 pub struct Tinv_SPEC;
4649 pub type Tinv = crate::EnumBitfieldStruct<u8, Tinv_SPEC>;
4650 impl Tinv {
4651 #[doc = "Transmit data is not inverted and output to TXDn."]
4652 pub const _0: Self = Self::new(0);
4653
4654 #[doc = "Transmit data is inverted and output to TXDn."]
4655 pub const _1: Self = Self::new(1);
4656 }
4657 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4658 pub struct Asen_SPEC;
4659 pub type Asen = crate::EnumBitfieldStruct<u8, Asen_SPEC>;
4660 impl Asen {
4661 #[doc = "Adjust sampling timing disable."]
4662 pub const _0: Self = Self::new(0);
4663
4664 #[doc = "Adjust sampling timing enable."]
4665 pub const _1: Self = Self::new(1);
4666 }
4667 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4668 pub struct Aten_SPEC;
4669 pub type Aten = crate::EnumBitfieldStruct<u8, Aten_SPEC>;
4670 impl Aten {
4671 #[doc = "Adjust transmit timing disable."]
4672 pub const _0: Self = Self::new(0);
4673
4674 #[doc = "Adjust transmit timing enable."]
4675 pub const _1: Self = Self::new(1);
4676 }
4677}
4678#[doc(hidden)]
4679#[derive(Copy, Clone, Eq, PartialEq)]
4680pub struct Actr_SPEC;
4681impl crate::sealed::RegSpec for Actr_SPEC {
4682 type DataType = u8;
4683}
4684
4685#[doc = "Adjustment Communication Timing Register"]
4686pub type Actr = crate::RegValueT<Actr_SPEC>;
4687
4688impl Actr {
4689 #[doc = "Adjustment value for receive Sampling Timing"]
4690 #[inline(always)]
4691 pub fn ast(
4692 self,
4693 ) -> crate::common::RegisterField<0, 0x7, 1, 0, u8, u8, Actr_SPEC, crate::common::RW> {
4694 crate::common::RegisterField::<0,0x7,1,0,u8,u8,Actr_SPEC,crate::common::RW>::from_register(self,0)
4695 }
4696
4697 #[doc = "Adjustment Direction for receive sampling timing"]
4698 #[inline(always)]
4699 pub fn ajd(
4700 self,
4701 ) -> crate::common::RegisterField<
4702 3,
4703 0x1,
4704 1,
4705 0,
4706 actr::Ajd,
4707 actr::Ajd,
4708 Actr_SPEC,
4709 crate::common::RW,
4710 > {
4711 crate::common::RegisterField::<
4712 3,
4713 0x1,
4714 1,
4715 0,
4716 actr::Ajd,
4717 actr::Ajd,
4718 Actr_SPEC,
4719 crate::common::RW,
4720 >::from_register(self, 0)
4721 }
4722
4723 #[doc = "Adjustment value for Transmit timing"]
4724 #[inline(always)]
4725 pub fn att(
4726 self,
4727 ) -> crate::common::RegisterField<4, 0x7, 1, 0, u8, u8, Actr_SPEC, crate::common::RW> {
4728 crate::common::RegisterField::<4,0x7,1,0,u8,u8,Actr_SPEC,crate::common::RW>::from_register(self,0)
4729 }
4730
4731 #[doc = "Adjustment edge for transmit timing"]
4732 #[inline(always)]
4733 pub fn aet(
4734 self,
4735 ) -> crate::common::RegisterField<
4736 7,
4737 0x1,
4738 1,
4739 0,
4740 actr::Aet,
4741 actr::Aet,
4742 Actr_SPEC,
4743 crate::common::RW,
4744 > {
4745 crate::common::RegisterField::<
4746 7,
4747 0x1,
4748 1,
4749 0,
4750 actr::Aet,
4751 actr::Aet,
4752 Actr_SPEC,
4753 crate::common::RW,
4754 >::from_register(self, 0)
4755 }
4756}
4757impl ::core::default::Default for Actr {
4758 #[inline(always)]
4759 fn default() -> Actr {
4760 <crate::RegValueT<Actr_SPEC> as RegisterValue<_>>::new(0)
4761 }
4762}
4763pub mod actr {
4764
4765 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4766 pub struct Ajd_SPEC;
4767 pub type Ajd = crate::EnumBitfieldStruct<u8, Ajd_SPEC>;
4768 impl Ajd {
4769 #[doc = "The sampling timing is adjusted backward to the middle of bit."]
4770 pub const _0: Self = Self::new(0);
4771
4772 #[doc = "The sampling timing is adjusted forward to the middle of bit."]
4773 pub const _1: Self = Self::new(1);
4774 }
4775 #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
4776 pub struct Aet_SPEC;
4777 pub type Aet = crate::EnumBitfieldStruct<u8, Aet_SPEC>;
4778 impl Aet {
4779 #[doc = "Adjust the rising edge timing."]
4780 pub const _0: Self = Self::new(0);
4781
4782 #[doc = "Adjust the falling edge timing."]
4783 pub const _1: Self = Self::new(1);
4784 }
4785}