mk20d7/uart1/c1/
mod.rs

1#[doc = r" Value read from the register"]
2pub struct R {
3    bits: u8,
4}
5#[doc = r" Value to write to the register"]
6pub struct W {
7    bits: u8,
8}
9impl super::C1 {
10    #[doc = r" Modifies the contents of the register"]
11    #[inline]
12    pub fn modify<F>(&self, f: F)
13    where
14        for<'w> F: FnOnce(&R, &'w mut W) -> &'w mut W,
15    {
16        let bits = self.register.get();
17        let r = R { bits: bits };
18        let mut w = W { bits: bits };
19        f(&r, &mut w);
20        self.register.set(w.bits);
21    }
22    #[doc = r" Reads the contents of the register"]
23    #[inline]
24    pub fn read(&self) -> R {
25        R {
26            bits: self.register.get(),
27        }
28    }
29    #[doc = r" Writes to the register"]
30    #[inline]
31    pub fn write<F>(&self, f: F)
32    where
33        F: FnOnce(&mut W) -> &mut W,
34    {
35        let mut w = W::reset_value();
36        f(&mut w);
37        self.register.set(w.bits);
38    }
39    #[doc = r" Writes the reset value to the register"]
40    #[inline]
41    pub fn reset(&self) {
42        self.write(|w| w)
43    }
44}
45#[doc = "Possible values of the field `PT`"]
46#[derive(Clone, Copy, Debug, PartialEq)]
47pub enum PTR {
48    #[doc = "Even parity."]
49    _0,
50    #[doc = "Odd parity."]
51    _1,
52}
53impl PTR {
54    #[doc = r" Returns `true` if the bit is clear (0)"]
55    #[inline]
56    pub fn bit_is_clear(&self) -> bool {
57        !self.bit()
58    }
59    #[doc = r" Returns `true` if the bit is set (1)"]
60    #[inline]
61    pub fn bit_is_set(&self) -> bool {
62        self.bit()
63    }
64    #[doc = r" Value of the field as raw bits"]
65    #[inline]
66    pub fn bit(&self) -> bool {
67        match *self {
68            PTR::_0 => false,
69            PTR::_1 => true,
70        }
71    }
72    #[allow(missing_docs)]
73    #[doc(hidden)]
74    #[inline]
75    pub fn _from(value: bool) -> PTR {
76        match value {
77            false => PTR::_0,
78            true => PTR::_1,
79        }
80    }
81    #[doc = "Checks if the value of the field is `_0`"]
82    #[inline]
83    pub fn is_0(&self) -> bool {
84        *self == PTR::_0
85    }
86    #[doc = "Checks if the value of the field is `_1`"]
87    #[inline]
88    pub fn is_1(&self) -> bool {
89        *self == PTR::_1
90    }
91}
92#[doc = "Possible values of the field `PE`"]
93#[derive(Clone, Copy, Debug, PartialEq)]
94pub enum PER {
95    #[doc = "Parity function disabled."]
96    _0,
97    #[doc = "Parity function enabled."]
98    _1,
99}
100impl PER {
101    #[doc = r" Returns `true` if the bit is clear (0)"]
102    #[inline]
103    pub fn bit_is_clear(&self) -> bool {
104        !self.bit()
105    }
106    #[doc = r" Returns `true` if the bit is set (1)"]
107    #[inline]
108    pub fn bit_is_set(&self) -> bool {
109        self.bit()
110    }
111    #[doc = r" Value of the field as raw bits"]
112    #[inline]
113    pub fn bit(&self) -> bool {
114        match *self {
115            PER::_0 => false,
116            PER::_1 => true,
117        }
118    }
119    #[allow(missing_docs)]
120    #[doc(hidden)]
121    #[inline]
122    pub fn _from(value: bool) -> PER {
123        match value {
124            false => PER::_0,
125            true => PER::_1,
126        }
127    }
128    #[doc = "Checks if the value of the field is `_0`"]
129    #[inline]
130    pub fn is_0(&self) -> bool {
131        *self == PER::_0
132    }
133    #[doc = "Checks if the value of the field is `_1`"]
134    #[inline]
135    pub fn is_1(&self) -> bool {
136        *self == PER::_1
137    }
138}
139#[doc = "Possible values of the field `ILT`"]
140#[derive(Clone, Copy, Debug, PartialEq)]
141pub enum ILTR {
142    #[doc = "Idle character bit count starts after start bit."]
143    _0,
144    #[doc = "Idle character bit count starts after stop bit."]
145    _1,
146}
147impl ILTR {
148    #[doc = r" Returns `true` if the bit is clear (0)"]
149    #[inline]
150    pub fn bit_is_clear(&self) -> bool {
151        !self.bit()
152    }
153    #[doc = r" Returns `true` if the bit is set (1)"]
154    #[inline]
155    pub fn bit_is_set(&self) -> bool {
156        self.bit()
157    }
158    #[doc = r" Value of the field as raw bits"]
159    #[inline]
160    pub fn bit(&self) -> bool {
161        match *self {
162            ILTR::_0 => false,
163            ILTR::_1 => true,
164        }
165    }
166    #[allow(missing_docs)]
167    #[doc(hidden)]
168    #[inline]
169    pub fn _from(value: bool) -> ILTR {
170        match value {
171            false => ILTR::_0,
172            true => ILTR::_1,
173        }
174    }
175    #[doc = "Checks if the value of the field is `_0`"]
176    #[inline]
177    pub fn is_0(&self) -> bool {
178        *self == ILTR::_0
179    }
180    #[doc = "Checks if the value of the field is `_1`"]
181    #[inline]
182    pub fn is_1(&self) -> bool {
183        *self == ILTR::_1
184    }
185}
186#[doc = "Possible values of the field `WAKE`"]
187#[derive(Clone, Copy, Debug, PartialEq)]
188pub enum WAKER {
189    #[doc = "Idle-line wakeup."]
190    _0,
191    #[doc = "Address-mark wakeup."]
192    _1,
193}
194impl WAKER {
195    #[doc = r" Returns `true` if the bit is clear (0)"]
196    #[inline]
197    pub fn bit_is_clear(&self) -> bool {
198        !self.bit()
199    }
200    #[doc = r" Returns `true` if the bit is set (1)"]
201    #[inline]
202    pub fn bit_is_set(&self) -> bool {
203        self.bit()
204    }
205    #[doc = r" Value of the field as raw bits"]
206    #[inline]
207    pub fn bit(&self) -> bool {
208        match *self {
209            WAKER::_0 => false,
210            WAKER::_1 => true,
211        }
212    }
213    #[allow(missing_docs)]
214    #[doc(hidden)]
215    #[inline]
216    pub fn _from(value: bool) -> WAKER {
217        match value {
218            false => WAKER::_0,
219            true => WAKER::_1,
220        }
221    }
222    #[doc = "Checks if the value of the field is `_0`"]
223    #[inline]
224    pub fn is_0(&self) -> bool {
225        *self == WAKER::_0
226    }
227    #[doc = "Checks if the value of the field is `_1`"]
228    #[inline]
229    pub fn is_1(&self) -> bool {
230        *self == WAKER::_1
231    }
232}
233#[doc = "Possible values of the field `M`"]
234#[derive(Clone, Copy, Debug, PartialEq)]
235pub enum MR {
236    #[doc = "Normal - start + 8 data bits (MSB/LSB first as determined by MSBF) + stop."]
237    _0,
238    #[doc = "Use - start + 9 data bits (MSB/LSB first as determined by MSBF) + stop."]
239    _1,
240}
241impl MR {
242    #[doc = r" Returns `true` if the bit is clear (0)"]
243    #[inline]
244    pub fn bit_is_clear(&self) -> bool {
245        !self.bit()
246    }
247    #[doc = r" Returns `true` if the bit is set (1)"]
248    #[inline]
249    pub fn bit_is_set(&self) -> bool {
250        self.bit()
251    }
252    #[doc = r" Value of the field as raw bits"]
253    #[inline]
254    pub fn bit(&self) -> bool {
255        match *self {
256            MR::_0 => false,
257            MR::_1 => true,
258        }
259    }
260    #[allow(missing_docs)]
261    #[doc(hidden)]
262    #[inline]
263    pub fn _from(value: bool) -> MR {
264        match value {
265            false => MR::_0,
266            true => MR::_1,
267        }
268    }
269    #[doc = "Checks if the value of the field is `_0`"]
270    #[inline]
271    pub fn is_0(&self) -> bool {
272        *self == MR::_0
273    }
274    #[doc = "Checks if the value of the field is `_1`"]
275    #[inline]
276    pub fn is_1(&self) -> bool {
277        *self == MR::_1
278    }
279}
280#[doc = "Possible values of the field `RSRC`"]
281#[derive(Clone, Copy, Debug, PartialEq)]
282pub enum RSRCR {
283    #[doc = "Selects internal loop back mode and receiver input is internally connected to transmitter output."]
284    _0,
285    #[doc = "Single-wire UART mode where the receiver input is connected to the transmit pin input signal."]
286    _1,
287}
288impl RSRCR {
289    #[doc = r" Returns `true` if the bit is clear (0)"]
290    #[inline]
291    pub fn bit_is_clear(&self) -> bool {
292        !self.bit()
293    }
294    #[doc = r" Returns `true` if the bit is set (1)"]
295    #[inline]
296    pub fn bit_is_set(&self) -> bool {
297        self.bit()
298    }
299    #[doc = r" Value of the field as raw bits"]
300    #[inline]
301    pub fn bit(&self) -> bool {
302        match *self {
303            RSRCR::_0 => false,
304            RSRCR::_1 => true,
305        }
306    }
307    #[allow(missing_docs)]
308    #[doc(hidden)]
309    #[inline]
310    pub fn _from(value: bool) -> RSRCR {
311        match value {
312            false => RSRCR::_0,
313            true => RSRCR::_1,
314        }
315    }
316    #[doc = "Checks if the value of the field is `_0`"]
317    #[inline]
318    pub fn is_0(&self) -> bool {
319        *self == RSRCR::_0
320    }
321    #[doc = "Checks if the value of the field is `_1`"]
322    #[inline]
323    pub fn is_1(&self) -> bool {
324        *self == RSRCR::_1
325    }
326}
327#[doc = "Possible values of the field `UARTSWAI`"]
328#[derive(Clone, Copy, Debug, PartialEq)]
329pub enum UARTSWAIR {
330    #[doc = "UART clock continues to run in wait mode."]
331    _0,
332    #[doc = "UART clock freezes while CPU is in wait mode."]
333    _1,
334}
335impl UARTSWAIR {
336    #[doc = r" Returns `true` if the bit is clear (0)"]
337    #[inline]
338    pub fn bit_is_clear(&self) -> bool {
339        !self.bit()
340    }
341    #[doc = r" Returns `true` if the bit is set (1)"]
342    #[inline]
343    pub fn bit_is_set(&self) -> bool {
344        self.bit()
345    }
346    #[doc = r" Value of the field as raw bits"]
347    #[inline]
348    pub fn bit(&self) -> bool {
349        match *self {
350            UARTSWAIR::_0 => false,
351            UARTSWAIR::_1 => true,
352        }
353    }
354    #[allow(missing_docs)]
355    #[doc(hidden)]
356    #[inline]
357    pub fn _from(value: bool) -> UARTSWAIR {
358        match value {
359            false => UARTSWAIR::_0,
360            true => UARTSWAIR::_1,
361        }
362    }
363    #[doc = "Checks if the value of the field is `_0`"]
364    #[inline]
365    pub fn is_0(&self) -> bool {
366        *self == UARTSWAIR::_0
367    }
368    #[doc = "Checks if the value of the field is `_1`"]
369    #[inline]
370    pub fn is_1(&self) -> bool {
371        *self == UARTSWAIR::_1
372    }
373}
374#[doc = "Possible values of the field `LOOPS`"]
375#[derive(Clone, Copy, Debug, PartialEq)]
376pub enum LOOPSR {
377    #[doc = "Normal operation."]
378    _0,
379    #[doc = "Loop mode where transmitter output is internally connected to receiver input. The receiver input is determined by the RSRC bit."]
380    _1,
381}
382impl LOOPSR {
383    #[doc = r" Returns `true` if the bit is clear (0)"]
384    #[inline]
385    pub fn bit_is_clear(&self) -> bool {
386        !self.bit()
387    }
388    #[doc = r" Returns `true` if the bit is set (1)"]
389    #[inline]
390    pub fn bit_is_set(&self) -> bool {
391        self.bit()
392    }
393    #[doc = r" Value of the field as raw bits"]
394    #[inline]
395    pub fn bit(&self) -> bool {
396        match *self {
397            LOOPSR::_0 => false,
398            LOOPSR::_1 => true,
399        }
400    }
401    #[allow(missing_docs)]
402    #[doc(hidden)]
403    #[inline]
404    pub fn _from(value: bool) -> LOOPSR {
405        match value {
406            false => LOOPSR::_0,
407            true => LOOPSR::_1,
408        }
409    }
410    #[doc = "Checks if the value of the field is `_0`"]
411    #[inline]
412    pub fn is_0(&self) -> bool {
413        *self == LOOPSR::_0
414    }
415    #[doc = "Checks if the value of the field is `_1`"]
416    #[inline]
417    pub fn is_1(&self) -> bool {
418        *self == LOOPSR::_1
419    }
420}
421#[doc = "Values that can be written to the field `PT`"]
422pub enum PTW {
423    #[doc = "Even parity."]
424    _0,
425    #[doc = "Odd parity."]
426    _1,
427}
428impl PTW {
429    #[allow(missing_docs)]
430    #[doc(hidden)]
431    #[inline]
432    pub fn _bits(&self) -> bool {
433        match *self {
434            PTW::_0 => false,
435            PTW::_1 => true,
436        }
437    }
438}
439#[doc = r" Proxy"]
440pub struct _PTW<'a> {
441    w: &'a mut W,
442}
443impl<'a> _PTW<'a> {
444    #[doc = r" Writes `variant` to the field"]
445    #[inline]
446    pub fn variant(self, variant: PTW) -> &'a mut W {
447        {
448            self.bit(variant._bits())
449        }
450    }
451    #[doc = "Even parity."]
452    #[inline]
453    pub fn _0(self) -> &'a mut W {
454        self.variant(PTW::_0)
455    }
456    #[doc = "Odd parity."]
457    #[inline]
458    pub fn _1(self) -> &'a mut W {
459        self.variant(PTW::_1)
460    }
461    #[doc = r" Sets the field bit"]
462    pub fn set_bit(self) -> &'a mut W {
463        self.bit(true)
464    }
465    #[doc = r" Clears the field bit"]
466    pub fn clear_bit(self) -> &'a mut W {
467        self.bit(false)
468    }
469    #[doc = r" Writes raw bits to the field"]
470    #[inline]
471    pub fn bit(self, value: bool) -> &'a mut W {
472        const MASK: bool = true;
473        const OFFSET: u8 = 0;
474        self.w.bits &= !((MASK as u8) << OFFSET);
475        self.w.bits |= ((value & MASK) as u8) << OFFSET;
476        self.w
477    }
478}
479#[doc = "Values that can be written to the field `PE`"]
480pub enum PEW {
481    #[doc = "Parity function disabled."]
482    _0,
483    #[doc = "Parity function enabled."]
484    _1,
485}
486impl PEW {
487    #[allow(missing_docs)]
488    #[doc(hidden)]
489    #[inline]
490    pub fn _bits(&self) -> bool {
491        match *self {
492            PEW::_0 => false,
493            PEW::_1 => true,
494        }
495    }
496}
497#[doc = r" Proxy"]
498pub struct _PEW<'a> {
499    w: &'a mut W,
500}
501impl<'a> _PEW<'a> {
502    #[doc = r" Writes `variant` to the field"]
503    #[inline]
504    pub fn variant(self, variant: PEW) -> &'a mut W {
505        {
506            self.bit(variant._bits())
507        }
508    }
509    #[doc = "Parity function disabled."]
510    #[inline]
511    pub fn _0(self) -> &'a mut W {
512        self.variant(PEW::_0)
513    }
514    #[doc = "Parity function enabled."]
515    #[inline]
516    pub fn _1(self) -> &'a mut W {
517        self.variant(PEW::_1)
518    }
519    #[doc = r" Sets the field bit"]
520    pub fn set_bit(self) -> &'a mut W {
521        self.bit(true)
522    }
523    #[doc = r" Clears the field bit"]
524    pub fn clear_bit(self) -> &'a mut W {
525        self.bit(false)
526    }
527    #[doc = r" Writes raw bits to the field"]
528    #[inline]
529    pub fn bit(self, value: bool) -> &'a mut W {
530        const MASK: bool = true;
531        const OFFSET: u8 = 1;
532        self.w.bits &= !((MASK as u8) << OFFSET);
533        self.w.bits |= ((value & MASK) as u8) << OFFSET;
534        self.w
535    }
536}
537#[doc = "Values that can be written to the field `ILT`"]
538pub enum ILTW {
539    #[doc = "Idle character bit count starts after start bit."]
540    _0,
541    #[doc = "Idle character bit count starts after stop bit."]
542    _1,
543}
544impl ILTW {
545    #[allow(missing_docs)]
546    #[doc(hidden)]
547    #[inline]
548    pub fn _bits(&self) -> bool {
549        match *self {
550            ILTW::_0 => false,
551            ILTW::_1 => true,
552        }
553    }
554}
555#[doc = r" Proxy"]
556pub struct _ILTW<'a> {
557    w: &'a mut W,
558}
559impl<'a> _ILTW<'a> {
560    #[doc = r" Writes `variant` to the field"]
561    #[inline]
562    pub fn variant(self, variant: ILTW) -> &'a mut W {
563        {
564            self.bit(variant._bits())
565        }
566    }
567    #[doc = "Idle character bit count starts after start bit."]
568    #[inline]
569    pub fn _0(self) -> &'a mut W {
570        self.variant(ILTW::_0)
571    }
572    #[doc = "Idle character bit count starts after stop bit."]
573    #[inline]
574    pub fn _1(self) -> &'a mut W {
575        self.variant(ILTW::_1)
576    }
577    #[doc = r" Sets the field bit"]
578    pub fn set_bit(self) -> &'a mut W {
579        self.bit(true)
580    }
581    #[doc = r" Clears the field bit"]
582    pub fn clear_bit(self) -> &'a mut W {
583        self.bit(false)
584    }
585    #[doc = r" Writes raw bits to the field"]
586    #[inline]
587    pub fn bit(self, value: bool) -> &'a mut W {
588        const MASK: bool = true;
589        const OFFSET: u8 = 2;
590        self.w.bits &= !((MASK as u8) << OFFSET);
591        self.w.bits |= ((value & MASK) as u8) << OFFSET;
592        self.w
593    }
594}
595#[doc = "Values that can be written to the field `WAKE`"]
596pub enum WAKEW {
597    #[doc = "Idle-line wakeup."]
598    _0,
599    #[doc = "Address-mark wakeup."]
600    _1,
601}
602impl WAKEW {
603    #[allow(missing_docs)]
604    #[doc(hidden)]
605    #[inline]
606    pub fn _bits(&self) -> bool {
607        match *self {
608            WAKEW::_0 => false,
609            WAKEW::_1 => true,
610        }
611    }
612}
613#[doc = r" Proxy"]
614pub struct _WAKEW<'a> {
615    w: &'a mut W,
616}
617impl<'a> _WAKEW<'a> {
618    #[doc = r" Writes `variant` to the field"]
619    #[inline]
620    pub fn variant(self, variant: WAKEW) -> &'a mut W {
621        {
622            self.bit(variant._bits())
623        }
624    }
625    #[doc = "Idle-line wakeup."]
626    #[inline]
627    pub fn _0(self) -> &'a mut W {
628        self.variant(WAKEW::_0)
629    }
630    #[doc = "Address-mark wakeup."]
631    #[inline]
632    pub fn _1(self) -> &'a mut W {
633        self.variant(WAKEW::_1)
634    }
635    #[doc = r" Sets the field bit"]
636    pub fn set_bit(self) -> &'a mut W {
637        self.bit(true)
638    }
639    #[doc = r" Clears the field bit"]
640    pub fn clear_bit(self) -> &'a mut W {
641        self.bit(false)
642    }
643    #[doc = r" Writes raw bits to the field"]
644    #[inline]
645    pub fn bit(self, value: bool) -> &'a mut W {
646        const MASK: bool = true;
647        const OFFSET: u8 = 3;
648        self.w.bits &= !((MASK as u8) << OFFSET);
649        self.w.bits |= ((value & MASK) as u8) << OFFSET;
650        self.w
651    }
652}
653#[doc = "Values that can be written to the field `M`"]
654pub enum MW {
655    #[doc = "Normal - start + 8 data bits (MSB/LSB first as determined by MSBF) + stop."]
656    _0,
657    #[doc = "Use - start + 9 data bits (MSB/LSB first as determined by MSBF) + stop."]
658    _1,
659}
660impl MW {
661    #[allow(missing_docs)]
662    #[doc(hidden)]
663    #[inline]
664    pub fn _bits(&self) -> bool {
665        match *self {
666            MW::_0 => false,
667            MW::_1 => true,
668        }
669    }
670}
671#[doc = r" Proxy"]
672pub struct _MW<'a> {
673    w: &'a mut W,
674}
675impl<'a> _MW<'a> {
676    #[doc = r" Writes `variant` to the field"]
677    #[inline]
678    pub fn variant(self, variant: MW) -> &'a mut W {
679        {
680            self.bit(variant._bits())
681        }
682    }
683    #[doc = "Normal - start + 8 data bits (MSB/LSB first as determined by MSBF) + stop."]
684    #[inline]
685    pub fn _0(self) -> &'a mut W {
686        self.variant(MW::_0)
687    }
688    #[doc = "Use - start + 9 data bits (MSB/LSB first as determined by MSBF) + stop."]
689    #[inline]
690    pub fn _1(self) -> &'a mut W {
691        self.variant(MW::_1)
692    }
693    #[doc = r" Sets the field bit"]
694    pub fn set_bit(self) -> &'a mut W {
695        self.bit(true)
696    }
697    #[doc = r" Clears the field bit"]
698    pub fn clear_bit(self) -> &'a mut W {
699        self.bit(false)
700    }
701    #[doc = r" Writes raw bits to the field"]
702    #[inline]
703    pub fn bit(self, value: bool) -> &'a mut W {
704        const MASK: bool = true;
705        const OFFSET: u8 = 4;
706        self.w.bits &= !((MASK as u8) << OFFSET);
707        self.w.bits |= ((value & MASK) as u8) << OFFSET;
708        self.w
709    }
710}
711#[doc = "Values that can be written to the field `RSRC`"]
712pub enum RSRCW {
713    #[doc = "Selects internal loop back mode and receiver input is internally connected to transmitter output."]
714    _0,
715    #[doc = "Single-wire UART mode where the receiver input is connected to the transmit pin input signal."]
716    _1,
717}
718impl RSRCW {
719    #[allow(missing_docs)]
720    #[doc(hidden)]
721    #[inline]
722    pub fn _bits(&self) -> bool {
723        match *self {
724            RSRCW::_0 => false,
725            RSRCW::_1 => true,
726        }
727    }
728}
729#[doc = r" Proxy"]
730pub struct _RSRCW<'a> {
731    w: &'a mut W,
732}
733impl<'a> _RSRCW<'a> {
734    #[doc = r" Writes `variant` to the field"]
735    #[inline]
736    pub fn variant(self, variant: RSRCW) -> &'a mut W {
737        {
738            self.bit(variant._bits())
739        }
740    }
741    #[doc = "Selects internal loop back mode and receiver input is internally connected to transmitter output."]
742    #[inline]
743    pub fn _0(self) -> &'a mut W {
744        self.variant(RSRCW::_0)
745    }
746    #[doc = "Single-wire UART mode where the receiver input is connected to the transmit pin input signal."]
747    #[inline]
748    pub fn _1(self) -> &'a mut W {
749        self.variant(RSRCW::_1)
750    }
751    #[doc = r" Sets the field bit"]
752    pub fn set_bit(self) -> &'a mut W {
753        self.bit(true)
754    }
755    #[doc = r" Clears the field bit"]
756    pub fn clear_bit(self) -> &'a mut W {
757        self.bit(false)
758    }
759    #[doc = r" Writes raw bits to the field"]
760    #[inline]
761    pub fn bit(self, value: bool) -> &'a mut W {
762        const MASK: bool = true;
763        const OFFSET: u8 = 5;
764        self.w.bits &= !((MASK as u8) << OFFSET);
765        self.w.bits |= ((value & MASK) as u8) << OFFSET;
766        self.w
767    }
768}
769#[doc = "Values that can be written to the field `UARTSWAI`"]
770pub enum UARTSWAIW {
771    #[doc = "UART clock continues to run in wait mode."]
772    _0,
773    #[doc = "UART clock freezes while CPU is in wait mode."]
774    _1,
775}
776impl UARTSWAIW {
777    #[allow(missing_docs)]
778    #[doc(hidden)]
779    #[inline]
780    pub fn _bits(&self) -> bool {
781        match *self {
782            UARTSWAIW::_0 => false,
783            UARTSWAIW::_1 => true,
784        }
785    }
786}
787#[doc = r" Proxy"]
788pub struct _UARTSWAIW<'a> {
789    w: &'a mut W,
790}
791impl<'a> _UARTSWAIW<'a> {
792    #[doc = r" Writes `variant` to the field"]
793    #[inline]
794    pub fn variant(self, variant: UARTSWAIW) -> &'a mut W {
795        {
796            self.bit(variant._bits())
797        }
798    }
799    #[doc = "UART clock continues to run in wait mode."]
800    #[inline]
801    pub fn _0(self) -> &'a mut W {
802        self.variant(UARTSWAIW::_0)
803    }
804    #[doc = "UART clock freezes while CPU is in wait mode."]
805    #[inline]
806    pub fn _1(self) -> &'a mut W {
807        self.variant(UARTSWAIW::_1)
808    }
809    #[doc = r" Sets the field bit"]
810    pub fn set_bit(self) -> &'a mut W {
811        self.bit(true)
812    }
813    #[doc = r" Clears the field bit"]
814    pub fn clear_bit(self) -> &'a mut W {
815        self.bit(false)
816    }
817    #[doc = r" Writes raw bits to the field"]
818    #[inline]
819    pub fn bit(self, value: bool) -> &'a mut W {
820        const MASK: bool = true;
821        const OFFSET: u8 = 6;
822        self.w.bits &= !((MASK as u8) << OFFSET);
823        self.w.bits |= ((value & MASK) as u8) << OFFSET;
824        self.w
825    }
826}
827#[doc = "Values that can be written to the field `LOOPS`"]
828pub enum LOOPSW {
829    #[doc = "Normal operation."]
830    _0,
831    #[doc = "Loop mode where transmitter output is internally connected to receiver input. The receiver input is determined by the RSRC bit."]
832    _1,
833}
834impl LOOPSW {
835    #[allow(missing_docs)]
836    #[doc(hidden)]
837    #[inline]
838    pub fn _bits(&self) -> bool {
839        match *self {
840            LOOPSW::_0 => false,
841            LOOPSW::_1 => true,
842        }
843    }
844}
845#[doc = r" Proxy"]
846pub struct _LOOPSW<'a> {
847    w: &'a mut W,
848}
849impl<'a> _LOOPSW<'a> {
850    #[doc = r" Writes `variant` to the field"]
851    #[inline]
852    pub fn variant(self, variant: LOOPSW) -> &'a mut W {
853        {
854            self.bit(variant._bits())
855        }
856    }
857    #[doc = "Normal operation."]
858    #[inline]
859    pub fn _0(self) -> &'a mut W {
860        self.variant(LOOPSW::_0)
861    }
862    #[doc = "Loop mode where transmitter output is internally connected to receiver input. The receiver input is determined by the RSRC bit."]
863    #[inline]
864    pub fn _1(self) -> &'a mut W {
865        self.variant(LOOPSW::_1)
866    }
867    #[doc = r" Sets the field bit"]
868    pub fn set_bit(self) -> &'a mut W {
869        self.bit(true)
870    }
871    #[doc = r" Clears the field bit"]
872    pub fn clear_bit(self) -> &'a mut W {
873        self.bit(false)
874    }
875    #[doc = r" Writes raw bits to the field"]
876    #[inline]
877    pub fn bit(self, value: bool) -> &'a mut W {
878        const MASK: bool = true;
879        const OFFSET: u8 = 7;
880        self.w.bits &= !((MASK as u8) << OFFSET);
881        self.w.bits |= ((value & MASK) as u8) << OFFSET;
882        self.w
883    }
884}
885impl R {
886    #[doc = r" Value of the register as raw bits"]
887    #[inline]
888    pub fn bits(&self) -> u8 {
889        self.bits
890    }
891    #[doc = "Bit 0 - Parity Type"]
892    #[inline]
893    pub fn pt(&self) -> PTR {
894        PTR::_from({
895            const MASK: bool = true;
896            const OFFSET: u8 = 0;
897            ((self.bits >> OFFSET) & MASK as u8) != 0
898        })
899    }
900    #[doc = "Bit 1 - Parity Enable"]
901    #[inline]
902    pub fn pe(&self) -> PER {
903        PER::_from({
904            const MASK: bool = true;
905            const OFFSET: u8 = 1;
906            ((self.bits >> OFFSET) & MASK as u8) != 0
907        })
908    }
909    #[doc = "Bit 2 - Idle Line Type Select"]
910    #[inline]
911    pub fn ilt(&self) -> ILTR {
912        ILTR::_from({
913            const MASK: bool = true;
914            const OFFSET: u8 = 2;
915            ((self.bits >> OFFSET) & MASK as u8) != 0
916        })
917    }
918    #[doc = "Bit 3 - Receiver Wakeup Method Select"]
919    #[inline]
920    pub fn wake(&self) -> WAKER {
921        WAKER::_from({
922            const MASK: bool = true;
923            const OFFSET: u8 = 3;
924            ((self.bits >> OFFSET) & MASK as u8) != 0
925        })
926    }
927    #[doc = "Bit 4 - 9-bit or 8-bit Mode Select"]
928    #[inline]
929    pub fn m(&self) -> MR {
930        MR::_from({
931            const MASK: bool = true;
932            const OFFSET: u8 = 4;
933            ((self.bits >> OFFSET) & MASK as u8) != 0
934        })
935    }
936    #[doc = "Bit 5 - Receiver Source Select"]
937    #[inline]
938    pub fn rsrc(&self) -> RSRCR {
939        RSRCR::_from({
940            const MASK: bool = true;
941            const OFFSET: u8 = 5;
942            ((self.bits >> OFFSET) & MASK as u8) != 0
943        })
944    }
945    #[doc = "Bit 6 - UART Stops in Wait Mode"]
946    #[inline]
947    pub fn uartswai(&self) -> UARTSWAIR {
948        UARTSWAIR::_from({
949            const MASK: bool = true;
950            const OFFSET: u8 = 6;
951            ((self.bits >> OFFSET) & MASK as u8) != 0
952        })
953    }
954    #[doc = "Bit 7 - Loop Mode Select"]
955    #[inline]
956    pub fn loops(&self) -> LOOPSR {
957        LOOPSR::_from({
958            const MASK: bool = true;
959            const OFFSET: u8 = 7;
960            ((self.bits >> OFFSET) & MASK as u8) != 0
961        })
962    }
963}
964impl W {
965    #[doc = r" Reset value of the register"]
966    #[inline]
967    pub fn reset_value() -> W {
968        W { bits: 0 }
969    }
970    #[doc = r" Writes raw bits to the register"]
971    #[inline]
972    pub unsafe fn bits(&mut self, bits: u8) -> &mut Self {
973        self.bits = bits;
974        self
975    }
976    #[doc = "Bit 0 - Parity Type"]
977    #[inline]
978    pub fn pt(&mut self) -> _PTW {
979        _PTW { w: self }
980    }
981    #[doc = "Bit 1 - Parity Enable"]
982    #[inline]
983    pub fn pe(&mut self) -> _PEW {
984        _PEW { w: self }
985    }
986    #[doc = "Bit 2 - Idle Line Type Select"]
987    #[inline]
988    pub fn ilt(&mut self) -> _ILTW {
989        _ILTW { w: self }
990    }
991    #[doc = "Bit 3 - Receiver Wakeup Method Select"]
992    #[inline]
993    pub fn wake(&mut self) -> _WAKEW {
994        _WAKEW { w: self }
995    }
996    #[doc = "Bit 4 - 9-bit or 8-bit Mode Select"]
997    #[inline]
998    pub fn m(&mut self) -> _MW {
999        _MW { w: self }
1000    }
1001    #[doc = "Bit 5 - Receiver Source Select"]
1002    #[inline]
1003    pub fn rsrc(&mut self) -> _RSRCW {
1004        _RSRCW { w: self }
1005    }
1006    #[doc = "Bit 6 - UART Stops in Wait Mode"]
1007    #[inline]
1008    pub fn uartswai(&mut self) -> _UARTSWAIW {
1009        _UARTSWAIW { w: self }
1010    }
1011    #[doc = "Bit 7 - Loop Mode Select"]
1012    #[inline]
1013    pub fn loops(&mut self) -> _LOOPSW {
1014        _LOOPSW { w: self }
1015    }
1016}