pub type R = crate::R<MCUCRrs>;
pub type W = crate::W<MCUCRrs>;
pub type PDDS_R = crate::BitReader;
pub type PDDS_W<'a, REG> = crate::BitWriter<'a, REG>;
pub type STOPF_R = crate::BitReader;
pub type SBF_R = crate::BitReader;
pub type CSSF_R = crate::BitReader;
pub type CSSF_W<'a, REG> = crate::BitWriter<'a, REG>;
pub type DEEPSLEEP_R = crate::BitReader;
impl R {
        #[inline(always)]
    pub fn pdds(&self) -> PDDS_R {
        PDDS_R::new((self.bits & 1) != 0)
    }
        #[inline(always)]
    pub fn stopf(&self) -> STOPF_R {
        STOPF_R::new(((self.bits >> 5) & 1) != 0)
    }
        #[inline(always)]
    pub fn sbf(&self) -> SBF_R {
        SBF_R::new(((self.bits >> 6) & 1) != 0)
    }
        #[inline(always)]
    pub fn cssf(&self) -> CSSF_R {
        CSSF_R::new(((self.bits >> 9) & 1) != 0)
    }
        #[inline(always)]
    pub fn deepsleep(&self) -> DEEPSLEEP_R {
        DEEPSLEEP_R::new(((self.bits >> 15) & 1) != 0)
    }
}
impl core::fmt::Debug for R {
    fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result {
        f.debug_struct("MCUCR")
            .field("pdds", &self.pdds())
            .field("stopf", &self.stopf())
            .field("sbf", &self.sbf())
            .field("cssf", &self.cssf())
            .field("deepsleep", &self.deepsleep())
            .finish()
    }
}
impl W {
        #[inline(always)]
    pub fn pdds(&mut self) -> PDDS_W<MCUCRrs> {
        PDDS_W::new(self, 0)
    }
        #[inline(always)]
    pub fn cssf(&mut self) -> CSSF_W<MCUCRrs> {
        CSSF_W::new(self, 9)
    }
}
pub struct MCUCRrs;
impl crate::RegisterSpec for MCUCRrs {
    type Ux = u32;
}
impl crate::Readable for MCUCRrs {}
impl crate::Writable for MCUCRrs {
    type Safety = crate::Unsafe;
}
impl crate::Resettable for MCUCRrs {}