cc430f5137 0.1.0

Peripheral access API for CC430F5137 microcontroller
#[doc = "Register `PMMRIE` reader"]
pub type R = crate::R<PmmrieSpec>;
#[doc = "Register `PMMRIE` writer"]
pub type W = crate::W<PmmrieSpec>;
#[doc = "Field `SVSMLDLYIE` reader - SVS and SVM low side Delay expired interrupt enable"]
pub type SvsmldlyieR = crate::BitReader;
#[doc = "Field `SVSMLDLYIE` writer - SVS and SVM low side Delay expired interrupt enable"]
pub type SvsmldlyieW<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `SVMLIE` reader - SVM low side interrupt enable"]
pub type SvmlieR = crate::BitReader;
#[doc = "Field `SVMLIE` writer - SVM low side interrupt enable"]
pub type SvmlieW<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `SVMLVLRIE` reader - SVM low side Voltage Level Reached interrupt enable"]
pub type SvmlvlrieR = crate::BitReader;
#[doc = "Field `SVMLVLRIE` writer - SVM low side Voltage Level Reached interrupt enable"]
pub type SvmlvlrieW<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `SVSMHDLYIE` reader - SVS and SVM high side Delay expired interrupt enable"]
pub type SvsmhdlyieR = crate::BitReader;
#[doc = "Field `SVSMHDLYIE` writer - SVS and SVM high side Delay expired interrupt enable"]
pub type SvsmhdlyieW<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `SVMHIE` reader - SVM high side interrupt enable"]
pub type SvmhieR = crate::BitReader;
#[doc = "Field `SVMHIE` writer - SVM high side interrupt enable"]
pub type SvmhieW<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `SVMHVLRIE` reader - SVM high side Voltage Level Reached interrupt enable"]
pub type SvmhvlrieR = crate::BitReader;
#[doc = "Field `SVMHVLRIE` writer - SVM high side Voltage Level Reached interrupt enable"]
pub type SvmhvlrieW<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `SVSLPE` reader - SVS low side POR enable"]
pub type SvslpeR = crate::BitReader;
#[doc = "Field `SVSLPE` writer - SVS low side POR enable"]
pub type SvslpeW<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `SVMLVLRPE` reader - SVM low side Voltage Level reached POR enable"]
pub type SvmlvlrpeR = crate::BitReader;
#[doc = "Field `SVMLVLRPE` writer - SVM low side Voltage Level reached POR enable"]
pub type SvmlvlrpeW<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `SVSHPE` reader - SVS high side POR enable"]
pub type SvshpeR = crate::BitReader;
#[doc = "Field `SVSHPE` writer - SVS high side POR enable"]
pub type SvshpeW<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `SVMHVLRPE` reader - SVM high side Voltage Level reached POR enable"]
pub type SvmhvlrpeR = crate::BitReader;
#[doc = "Field `SVMHVLRPE` writer - SVM high side Voltage Level reached POR enable"]
pub type SvmhvlrpeW<'a, REG> = crate::BitWriter<'a, REG>;
impl R {
    #[doc = "Bit 0 - SVS and SVM low side Delay expired interrupt enable"]
    #[inline(always)]
    pub fn svsmldlyie(&self) -> SvsmldlyieR {
        SvsmldlyieR::new((self.bits & 1) != 0)
    }
    #[doc = "Bit 1 - SVM low side interrupt enable"]
    #[inline(always)]
    pub fn svmlie(&self) -> SvmlieR {
        SvmlieR::new(((self.bits >> 1) & 1) != 0)
    }
    #[doc = "Bit 2 - SVM low side Voltage Level Reached interrupt enable"]
    #[inline(always)]
    pub fn svmlvlrie(&self) -> SvmlvlrieR {
        SvmlvlrieR::new(((self.bits >> 2) & 1) != 0)
    }
    #[doc = "Bit 4 - SVS and SVM high side Delay expired interrupt enable"]
    #[inline(always)]
    pub fn svsmhdlyie(&self) -> SvsmhdlyieR {
        SvsmhdlyieR::new(((self.bits >> 4) & 1) != 0)
    }
    #[doc = "Bit 5 - SVM high side interrupt enable"]
    #[inline(always)]
    pub fn svmhie(&self) -> SvmhieR {
        SvmhieR::new(((self.bits >> 5) & 1) != 0)
    }
    #[doc = "Bit 6 - SVM high side Voltage Level Reached interrupt enable"]
    #[inline(always)]
    pub fn svmhvlrie(&self) -> SvmhvlrieR {
        SvmhvlrieR::new(((self.bits >> 6) & 1) != 0)
    }
    #[doc = "Bit 8 - SVS low side POR enable"]
    #[inline(always)]
    pub fn svslpe(&self) -> SvslpeR {
        SvslpeR::new(((self.bits >> 8) & 1) != 0)
    }
    #[doc = "Bit 9 - SVM low side Voltage Level reached POR enable"]
    #[inline(always)]
    pub fn svmlvlrpe(&self) -> SvmlvlrpeR {
        SvmlvlrpeR::new(((self.bits >> 9) & 1) != 0)
    }
    #[doc = "Bit 12 - SVS high side POR enable"]
    #[inline(always)]
    pub fn svshpe(&self) -> SvshpeR {
        SvshpeR::new(((self.bits >> 12) & 1) != 0)
    }
    #[doc = "Bit 13 - SVM high side Voltage Level reached POR enable"]
    #[inline(always)]
    pub fn svmhvlrpe(&self) -> SvmhvlrpeR {
        SvmhvlrpeR::new(((self.bits >> 13) & 1) != 0)
    }
}
impl W {
    #[doc = "Bit 0 - SVS and SVM low side Delay expired interrupt enable"]
    #[inline(always)]
    pub fn svsmldlyie(&mut self) -> SvsmldlyieW<'_, PmmrieSpec> {
        SvsmldlyieW::new(self, 0)
    }
    #[doc = "Bit 1 - SVM low side interrupt enable"]
    #[inline(always)]
    pub fn svmlie(&mut self) -> SvmlieW<'_, PmmrieSpec> {
        SvmlieW::new(self, 1)
    }
    #[doc = "Bit 2 - SVM low side Voltage Level Reached interrupt enable"]
    #[inline(always)]
    pub fn svmlvlrie(&mut self) -> SvmlvlrieW<'_, PmmrieSpec> {
        SvmlvlrieW::new(self, 2)
    }
    #[doc = "Bit 4 - SVS and SVM high side Delay expired interrupt enable"]
    #[inline(always)]
    pub fn svsmhdlyie(&mut self) -> SvsmhdlyieW<'_, PmmrieSpec> {
        SvsmhdlyieW::new(self, 4)
    }
    #[doc = "Bit 5 - SVM high side interrupt enable"]
    #[inline(always)]
    pub fn svmhie(&mut self) -> SvmhieW<'_, PmmrieSpec> {
        SvmhieW::new(self, 5)
    }
    #[doc = "Bit 6 - SVM high side Voltage Level Reached interrupt enable"]
    #[inline(always)]
    pub fn svmhvlrie(&mut self) -> SvmhvlrieW<'_, PmmrieSpec> {
        SvmhvlrieW::new(self, 6)
    }
    #[doc = "Bit 8 - SVS low side POR enable"]
    #[inline(always)]
    pub fn svslpe(&mut self) -> SvslpeW<'_, PmmrieSpec> {
        SvslpeW::new(self, 8)
    }
    #[doc = "Bit 9 - SVM low side Voltage Level reached POR enable"]
    #[inline(always)]
    pub fn svmlvlrpe(&mut self) -> SvmlvlrpeW<'_, PmmrieSpec> {
        SvmlvlrpeW::new(self, 9)
    }
    #[doc = "Bit 12 - SVS high side POR enable"]
    #[inline(always)]
    pub fn svshpe(&mut self) -> SvshpeW<'_, PmmrieSpec> {
        SvshpeW::new(self, 12)
    }
    #[doc = "Bit 13 - SVM high side Voltage Level reached POR enable"]
    #[inline(always)]
    pub fn svmhvlrpe(&mut self) -> SvmhvlrpeW<'_, PmmrieSpec> {
        SvmhvlrpeW::new(self, 13)
    }
}
#[doc = "PMM and RESET Interrupt Enable\n\nYou can [`read`](crate::Reg::read) this register and get [`pmmrie::R`](R). You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`pmmrie::W`](W). You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api)."]
pub struct PmmrieSpec;
impl crate::RegisterSpec for PmmrieSpec {
    type Ux = u16;
}
#[doc = "`read()` method returns [`pmmrie::R`](R) reader structure"]
impl crate::Readable for PmmrieSpec {}
#[doc = "`write(|w| ..)` method takes [`pmmrie::W`](W) writer structure"]
impl crate::Writable for PmmrieSpec {
    type Safety = crate::Unsafe;
}
#[doc = "`reset()` method sets PMMRIE to value 0"]
impl crate::Resettable for PmmrieSpec {}