ADuCM302x 0.1.0

A Peripheral Access Crate for the Analog Devices ADuCM302x series of MCUs
Documentation
#[doc = "Reader of register STAT"]
pub type R = crate::R<u16, super::STAT>;
#[doc = "Reader of field `IRQ`"]
pub type IRQ_R = crate::R<bool, bool>;
#[doc = "Reader of field `CLRIRQ`"]
pub type CLRIRQ_R = crate::R<bool, bool>;
#[doc = "Load Register Write Sync in Progress\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum LOADING_A {
    #[doc = "0: APB and WDT clock domains LOAD values match."]
    LOAD_MATCH = 0,
    #[doc = "1: APB LOAD value is being synchronized to WDT clock domain."]
    LOAD_SYNCING = 1,
}
impl From<LOADING_A> for bool {
    #[inline(always)]
    fn from(variant: LOADING_A) -> Self {
        variant as u8 != 0
    }
}
#[doc = "Reader of field `LOADING`"]
pub type LOADING_R = crate::R<bool, LOADING_A>;
impl LOADING_R {
    #[doc = r"Get enumerated values variant"]
    #[inline(always)]
    pub fn variant(&self) -> LOADING_A {
        match self.bits {
            false => LOADING_A::LOAD_MATCH,
            true => LOADING_A::LOAD_SYNCING,
        }
    }
    #[doc = "Checks if the value of the field is `LOAD_MATCH`"]
    #[inline(always)]
    pub fn is_load_match(&self) -> bool {
        *self == LOADING_A::LOAD_MATCH
    }
    #[doc = "Checks if the value of the field is `LOAD_SYNCING`"]
    #[inline(always)]
    pub fn is_load_syncing(&self) -> bool {
        *self == LOADING_A::LOAD_SYNCING
    }
}
#[doc = "Control Register Write Sync in Progress\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum COUNTING_A {
    #[doc = "0: APB and WDT clock domain CTRL values match"]
    COUNT_MATCH = 0,
    #[doc = "1: APB CTRL register values are being synchronized to WDT clock domain."]
    COUNT_SYNCING = 1,
}
impl From<COUNTING_A> for bool {
    #[inline(always)]
    fn from(variant: COUNTING_A) -> Self {
        variant as u8 != 0
    }
}
#[doc = "Reader of field `COUNTING`"]
pub type COUNTING_R = crate::R<bool, COUNTING_A>;
impl COUNTING_R {
    #[doc = r"Get enumerated values variant"]
    #[inline(always)]
    pub fn variant(&self) -> COUNTING_A {
        match self.bits {
            false => COUNTING_A::COUNT_MATCH,
            true => COUNTING_A::COUNT_SYNCING,
        }
    }
    #[doc = "Checks if the value of the field is `COUNT_MATCH`"]
    #[inline(always)]
    pub fn is_count_match(&self) -> bool {
        *self == COUNTING_A::COUNT_MATCH
    }
    #[doc = "Checks if the value of the field is `COUNT_SYNCING`"]
    #[inline(always)]
    pub fn is_count_syncing(&self) -> bool {
        *self == COUNTING_A::COUNT_SYNCING
    }
}
#[doc = "Reader of field `LOCKED`"]
pub type LOCKED_R = crate::R<bool, bool>;
impl R {
    #[doc = "Bit 0 - WDT Interrupt"]
    #[inline(always)]
    pub fn irq(&self) -> IRQ_R {
        IRQ_R::new((self.bits & 0x01) != 0)
    }
    #[doc = "Bit 1 - Clear Interrupt Register Write Sync in Progress"]
    #[inline(always)]
    pub fn clrirq(&self) -> CLRIRQ_R {
        CLRIRQ_R::new(((self.bits >> 1) & 0x01) != 0)
    }
    #[doc = "Bit 2 - Load Register Write Sync in Progress"]
    #[inline(always)]
    pub fn loading(&self) -> LOADING_R {
        LOADING_R::new(((self.bits >> 2) & 0x01) != 0)
    }
    #[doc = "Bit 3 - Control Register Write Sync in Progress"]
    #[inline(always)]
    pub fn counting(&self) -> COUNTING_R {
        COUNTING_R::new(((self.bits >> 3) & 0x01) != 0)
    }
    #[doc = "Bit 4 - Lock Status Bit"]
    #[inline(always)]
    pub fn locked(&self) -> LOCKED_R {
        LOCKED_R::new(((self.bits >> 4) & 0x01) != 0)
    }
}