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
#[doc = "Reader of register PIN"] pub type R = crate::R<u32, super::PIN>; #[doc = "Port \\[A/B/C/D/E\\] Pin Values. Reflects the actual status of the respective GPIO pin\n\nValue on reset: 0"] #[derive(Clone, Copy, Debug, PartialEq)] pub enum PIN_A { #[doc = "0: Pin\\[n\\] status is low"] LOW = 0, #[doc = "1: Pin\\[n\\] status is high"] HIGH = 1, } impl From<PIN_A> for bool { #[inline(always)] fn from(variant: PIN_A) -> Self { variant as u8 != 0 } } #[doc = "Reader of field `PIN[%s]`"] pub type PIN_R = crate::R<bool, PIN_A>; impl PIN_R { #[doc = r"Get enumerated values variant"] #[inline(always)] pub fn variant(&self) -> PIN_A { match self.bits { false => PIN_A::LOW, true => PIN_A::HIGH, } } #[doc = "Checks if the value of the field is `LOW`"] #[inline(always)] pub fn is_low(&self) -> bool { *self == PIN_A::LOW } #[doc = "Checks if the value of the field is `HIGH`"] #[inline(always)] pub fn is_high(&self) -> bool { *self == PIN_A::HIGH } } impl R { #[doc = "Port \\[A/B/C/D/E\\] Pin Values. Reflects the actual status of the respective GPIO pin"] #[inline(always)] pub unsafe fn pin(&self, n: usize) -> PIN_R { PIN_R::new(((self.bits >> n) & 0x01) != 0) } #[doc = "Bit 0 - Port \\[A/B/C/D/E\\] Pin Values. Reflects the actual status of the respective GPIO pin"] #[inline(always)] pub fn pin0(&self) -> PIN_R { PIN_R::new((self.bits & 0x01) != 0) } #[doc = "Bit 1 - Port \\[A/B/C/D/E\\] Pin Values. Reflects the actual status of the respective GPIO pin"] #[inline(always)] pub fn pin1(&self) -> PIN_R { PIN_R::new(((self.bits >> 1) & 0x01) != 0) } #[doc = "Bit 2 - Port \\[A/B/C/D/E\\] Pin Values. Reflects the actual status of the respective GPIO pin"] #[inline(always)] pub fn pin2(&self) -> PIN_R { PIN_R::new(((self.bits >> 2) & 0x01) != 0) } #[doc = "Bit 3 - Port \\[A/B/C/D/E\\] Pin Values. Reflects the actual status of the respective GPIO pin"] #[inline(always)] pub fn pin3(&self) -> PIN_R { PIN_R::new(((self.bits >> 3) & 0x01) != 0) } #[doc = "Bit 4 - Port \\[A/B/C/D/E\\] Pin Values. Reflects the actual status of the respective GPIO pin"] #[inline(always)] pub fn pin4(&self) -> PIN_R { PIN_R::new(((self.bits >> 4) & 0x01) != 0) } #[doc = "Bit 5 - Port \\[A/B/C/D/E\\] Pin Values. Reflects the actual status of the respective GPIO pin"] #[inline(always)] pub fn pin5(&self) -> PIN_R { PIN_R::new(((self.bits >> 5) & 0x01) != 0) } #[doc = "Bit 6 - Port \\[A/B/C/D/E\\] Pin Values. Reflects the actual status of the respective GPIO pin"] #[inline(always)] pub fn pin6(&self) -> PIN_R { PIN_R::new(((self.bits >> 6) & 0x01) != 0) } #[doc = "Bit 7 - Port \\[A/B/C/D/E\\] Pin Values. Reflects the actual status of the respective GPIO pin"] #[inline(always)] pub fn pin7(&self) -> PIN_R { PIN_R::new(((self.bits >> 7) & 0x01) != 0) } #[doc = "Bit 8 - Port \\[A/B/C/D/E\\] Pin Values. Reflects the actual status of the respective GPIO pin"] #[inline(always)] pub fn pin8(&self) -> PIN_R { PIN_R::new(((self.bits >> 8) & 0x01) != 0) } #[doc = "Bit 9 - Port \\[A/B/C/D/E\\] Pin Values. Reflects the actual status of the respective GPIO pin"] #[inline(always)] pub fn pin9(&self) -> PIN_R { PIN_R::new(((self.bits >> 9) & 0x01) != 0) } #[doc = "Bit 10 - Port \\[A/B/C/D/E\\] Pin Values. Reflects the actual status of the respective GPIO pin"] #[inline(always)] pub fn pin10(&self) -> PIN_R { PIN_R::new(((self.bits >> 10) & 0x01) != 0) } #[doc = "Bit 11 - Port \\[A/B/C/D/E\\] Pin Values. Reflects the actual status of the respective GPIO pin"] #[inline(always)] pub fn pin11(&self) -> PIN_R { PIN_R::new(((self.bits >> 11) & 0x01) != 0) } #[doc = "Bit 12 - Port \\[A/B/C/D/E\\] Pin Values. Reflects the actual status of the respective GPIO pin"] #[inline(always)] pub fn pin12(&self) -> PIN_R { PIN_R::new(((self.bits >> 12) & 0x01) != 0) } #[doc = "Bit 13 - Port \\[A/B/C/D/E\\] Pin Values. Reflects the actual status of the respective GPIO pin"] #[inline(always)] pub fn pin13(&self) -> PIN_R { PIN_R::new(((self.bits >> 13) & 0x01) != 0) } #[doc = "Bit 14 - Port \\[A/B/C/D/E\\] Pin Values. Reflects the actual status of the respective GPIO pin"] #[inline(always)] pub fn pin14(&self) -> PIN_R { PIN_R::new(((self.bits >> 14) & 0x01) != 0) } #[doc = "Bit 15 - Port \\[A/B/C/D/E\\] Pin Values. Reflects the actual status of the respective GPIO pin"] #[inline(always)] pub fn pin15(&self) -> PIN_R { PIN_R::new(((self.bits >> 15) & 0x01) != 0) } }