1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184
#[doc = "Register `UCSRA` reader"] pub struct R(crate::R<UCSRA_SPEC>); impl core::ops::Deref for R { type Target = crate::R<UCSRA_SPEC>; #[inline(always)] fn deref(&self) -> &Self::Target { &self.0 } } impl core::convert::From<crate::R<UCSRA_SPEC>> for R { fn from(reader: crate::R<UCSRA_SPEC>) -> Self { R(reader) } } #[doc = "Field `MPCM` reader - Multi-processor Communication Mode"] pub struct MPCM_R(crate::FieldReader<bool, bool>); impl MPCM_R { pub(crate) fn new(bits: bool) -> Self { MPCM_R(crate::FieldReader::new(bits)) } } impl core::ops::Deref for MPCM_R { type Target = crate::FieldReader<bool, bool>; #[inline(always)] fn deref(&self) -> &Self::Target { &self.0 } } #[doc = "Field `U2X` reader - Double the USART transmission speed"] pub struct U2X_R(crate::FieldReader<bool, bool>); impl U2X_R { pub(crate) fn new(bits: bool) -> Self { U2X_R(crate::FieldReader::new(bits)) } } impl core::ops::Deref for U2X_R { type Target = crate::FieldReader<bool, bool>; #[inline(always)] fn deref(&self) -> &Self::Target { &self.0 } } #[doc = "Field `UPE` reader - Parity Error"] pub struct UPE_R(crate::FieldReader<bool, bool>); impl UPE_R { pub(crate) fn new(bits: bool) -> Self { UPE_R(crate::FieldReader::new(bits)) } } impl core::ops::Deref for UPE_R { type Target = crate::FieldReader<bool, bool>; #[inline(always)] fn deref(&self) -> &Self::Target { &self.0 } } #[doc = "Field `DOR` reader - Data overRun"] pub struct DOR_R(crate::FieldReader<bool, bool>); impl DOR_R { pub(crate) fn new(bits: bool) -> Self { DOR_R(crate::FieldReader::new(bits)) } } impl core::ops::Deref for DOR_R { type Target = crate::FieldReader<bool, bool>; #[inline(always)] fn deref(&self) -> &Self::Target { &self.0 } } #[doc = "Field `FE` reader - Framing Error"] pub struct FE_R(crate::FieldReader<bool, bool>); impl FE_R { pub(crate) fn new(bits: bool) -> Self { FE_R(crate::FieldReader::new(bits)) } } impl core::ops::Deref for FE_R { type Target = crate::FieldReader<bool, bool>; #[inline(always)] fn deref(&self) -> &Self::Target { &self.0 } } #[doc = "Field `UDRE` reader - USART Data Register Empty"] pub struct UDRE_R(crate::FieldReader<bool, bool>); impl UDRE_R { pub(crate) fn new(bits: bool) -> Self { UDRE_R(crate::FieldReader::new(bits)) } } impl core::ops::Deref for UDRE_R { type Target = crate::FieldReader<bool, bool>; #[inline(always)] fn deref(&self) -> &Self::Target { &self.0 } } #[doc = "Field `TXC` reader - USART Transmitt Complete"] pub struct TXC_R(crate::FieldReader<bool, bool>); impl TXC_R { pub(crate) fn new(bits: bool) -> Self { TXC_R(crate::FieldReader::new(bits)) } } impl core::ops::Deref for TXC_R { type Target = crate::FieldReader<bool, bool>; #[inline(always)] fn deref(&self) -> &Self::Target { &self.0 } } #[doc = "Field `RXC` reader - USART Receive Complete"] pub struct RXC_R(crate::FieldReader<bool, bool>); impl RXC_R { pub(crate) fn new(bits: bool) -> Self { RXC_R(crate::FieldReader::new(bits)) } } impl core::ops::Deref for RXC_R { type Target = crate::FieldReader<bool, bool>; #[inline(always)] fn deref(&self) -> &Self::Target { &self.0 } } impl R { #[doc = "Bit 0 - Multi-processor Communication Mode"] #[inline(always)] pub fn mpcm(&self) -> MPCM_R { MPCM_R::new((self.bits & 0x01) != 0) } #[doc = "Bit 1 - Double the USART transmission speed"] #[inline(always)] pub fn u2x(&self) -> U2X_R { U2X_R::new(((self.bits >> 1) & 0x01) != 0) } #[doc = "Bit 2 - Parity Error"] #[inline(always)] pub fn upe(&self) -> UPE_R { UPE_R::new(((self.bits >> 2) & 0x01) != 0) } #[doc = "Bit 3 - Data overRun"] #[inline(always)] pub fn dor(&self) -> DOR_R { DOR_R::new(((self.bits >> 3) & 0x01) != 0) } #[doc = "Bit 4 - Framing Error"] #[inline(always)] pub fn fe(&self) -> FE_R { FE_R::new(((self.bits >> 4) & 0x01) != 0) } #[doc = "Bit 5 - USART Data Register Empty"] #[inline(always)] pub fn udre(&self) -> UDRE_R { UDRE_R::new(((self.bits >> 5) & 0x01) != 0) } #[doc = "Bit 6 - USART Transmitt Complete"] #[inline(always)] pub fn txc(&self) -> TXC_R { TXC_R::new(((self.bits >> 6) & 0x01) != 0) } #[doc = "Bit 7 - USART Receive Complete"] #[inline(always)] pub fn rxc(&self) -> RXC_R { RXC_R::new(((self.bits >> 7) & 0x01) != 0) } } #[doc = "USART Control and Status Register A\n\nThis register you can [`read`](crate::generic::Reg::read). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [ucsra](index.html) module"] pub struct UCSRA_SPEC; impl crate::RegisterSpec for UCSRA_SPEC { type Ux = u8; } #[doc = "`read()` method returns [ucsra::R](R) reader structure"] impl crate::Readable for UCSRA_SPEC { type Reader = R; } #[doc = "`reset()` method sets UCSRA to value 0"] impl crate::Resettable for UCSRA_SPEC { #[inline(always)] fn reset_value() -> Self::Ux { 0 } }