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
#[doc = r" Value to write to the register"] pub struct W { bits: u32, } impl super::CR { #[doc = r" Writes to the register"] #[inline] pub fn write<F>(&self, f: F) where F: FnOnce(&mut W) -> &mut W, { let bits = self.register.get(); let mut w = W { bits: bits }; f(&mut w); self.register.set(w.bits); } } #[doc = r" Proxy"] pub struct _WDRSTTW<'a> { w: &'a mut W, } impl<'a> _WDRSTTW<'a> { #[doc = r" Sets the field bit"] pub fn set_bit(self) -> &'a mut W { self.bit(true) } #[doc = r" Clears the field bit"] pub fn clear_bit(self) -> &'a mut W { self.bit(false) } #[doc = r" Writes raw bits to the field"] #[inline] pub fn bit(self, value: bool) -> &'a mut W { const MASK: bool = true; const OFFSET: u8 = 0; self.w.bits &= !((MASK as u32) << OFFSET); self.w.bits |= ((value & MASK) as u32) << OFFSET; self.w } } #[doc = "Values that can be written to the field `KEY`"] pub enum KEYW { #[doc = "Writing any other value in this field aborts the write operation."] PASSWD, } impl KEYW { #[allow(missing_docs)] #[doc(hidden)] #[inline] pub fn _bits(&self) -> u8 { match *self { KEYW::PASSWD => 165, } } } #[doc = r" Proxy"] pub struct _KEYW<'a> { w: &'a mut W, } impl<'a> _KEYW<'a> { #[doc = r" Writes `variant` to the field"] #[inline] pub fn variant(self, variant: KEYW) -> &'a mut W { unsafe { self.bits(variant._bits()) } } #[doc = "Writing any other value in this field aborts the write operation."] #[inline] pub fn passwd(self) -> &'a mut W { self.variant(KEYW::PASSWD) } #[doc = r" Writes raw bits to the field"] #[inline] pub unsafe fn bits(self, value: u8) -> &'a mut W { const MASK: u8 = 255; const OFFSET: u8 = 24; self.w.bits &= !((MASK as u32) << OFFSET); self.w.bits |= ((value & MASK) as u32) << OFFSET; self.w } } impl W { #[doc = "Bit 0 - Watchdog Restart"] #[inline] pub fn wdrstt(&mut self) -> _WDRSTTW { _WDRSTTW { w: self } } #[doc = "Bits 24:31 - Password."] #[inline] pub fn key(&mut self) -> _KEYW { _KEYW { w: self } } }