mk66f18 0.2.0

Peripheral access API for MK66F18 microcontrollers
Documentation
#[doc = "Reader of register USB1_VBUS_DET_STAT"]
pub type R = crate::R<u32, super::USB1_VBUS_DET_STAT>;
#[doc = "Session End indicator\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum SESSEND_A {
    #[doc = "0: The VBUS voltage is above the Session Valid threshold"]
    _0,
    #[doc = "1: The VBUS voltage is below the Session Valid threshold"]
    _1,
}
impl From<SESSEND_A> for bool {
    #[inline(always)]
    fn from(variant: SESSEND_A) -> Self {
        match variant {
            SESSEND_A::_0 => false,
            SESSEND_A::_1 => true,
        }
    }
}
#[doc = "Reader of field `SESSEND`"]
pub type SESSEND_R = crate::R<bool, SESSEND_A>;
impl SESSEND_R {
    #[doc = r"Get enumerated values variant"]
    #[inline(always)]
    pub fn variant(&self) -> SESSEND_A {
        match self.bits {
            false => SESSEND_A::_0,
            true => SESSEND_A::_1,
        }
    }
    #[doc = "Checks if the value of the field is `_0`"]
    #[inline(always)]
    pub fn is_0(&self) -> bool {
        *self == SESSEND_A::_0
    }
    #[doc = "Checks if the value of the field is `_1`"]
    #[inline(always)]
    pub fn is_1(&self) -> bool {
        *self == SESSEND_A::_1
    }
}
#[doc = "B-Device Session Valid status\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum BVALID_A {
    #[doc = "0: The VBUS voltage is below the Session Valid threshold"]
    _0,
    #[doc = "1: The VBUS voltage is above the Session Valid threshold"]
    _1,
}
impl From<BVALID_A> for bool {
    #[inline(always)]
    fn from(variant: BVALID_A) -> Self {
        match variant {
            BVALID_A::_0 => false,
            BVALID_A::_1 => true,
        }
    }
}
#[doc = "Reader of field `BVALID`"]
pub type BVALID_R = crate::R<bool, BVALID_A>;
impl BVALID_R {
    #[doc = r"Get enumerated values variant"]
    #[inline(always)]
    pub fn variant(&self) -> BVALID_A {
        match self.bits {
            false => BVALID_A::_0,
            true => BVALID_A::_1,
        }
    }
    #[doc = "Checks if the value of the field is `_0`"]
    #[inline(always)]
    pub fn is_0(&self) -> bool {
        *self == BVALID_A::_0
    }
    #[doc = "Checks if the value of the field is `_1`"]
    #[inline(always)]
    pub fn is_1(&self) -> bool {
        *self == BVALID_A::_1
    }
}
#[doc = "A-Device Session Valid status\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum AVALID_A {
    #[doc = "0: The VBUS voltage is below the Session Valid threshold"]
    _0,
    #[doc = "1: The VBUS voltage is above the Session Valid threshold"]
    _1,
}
impl From<AVALID_A> for bool {
    #[inline(always)]
    fn from(variant: AVALID_A) -> Self {
        match variant {
            AVALID_A::_0 => false,
            AVALID_A::_1 => true,
        }
    }
}
#[doc = "Reader of field `AVALID`"]
pub type AVALID_R = crate::R<bool, AVALID_A>;
impl AVALID_R {
    #[doc = r"Get enumerated values variant"]
    #[inline(always)]
    pub fn variant(&self) -> AVALID_A {
        match self.bits {
            false => AVALID_A::_0,
            true => AVALID_A::_1,
        }
    }
    #[doc = "Checks if the value of the field is `_0`"]
    #[inline(always)]
    pub fn is_0(&self) -> bool {
        *self == AVALID_A::_0
    }
    #[doc = "Checks if the value of the field is `_1`"]
    #[inline(always)]
    pub fn is_1(&self) -> bool {
        *self == AVALID_A::_1
    }
}
#[doc = "VBUS voltage status\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum VBUS_VALID_A {
    #[doc = "0: VBUS is below the comparator threshold"]
    _0,
    #[doc = "1: VBUS is above the comparator threshold"]
    _1,
}
impl From<VBUS_VALID_A> for bool {
    #[inline(always)]
    fn from(variant: VBUS_VALID_A) -> Self {
        match variant {
            VBUS_VALID_A::_0 => false,
            VBUS_VALID_A::_1 => true,
        }
    }
}
#[doc = "Reader of field `VBUS_VALID`"]
pub type VBUS_VALID_R = crate::R<bool, VBUS_VALID_A>;
impl VBUS_VALID_R {
    #[doc = r"Get enumerated values variant"]
    #[inline(always)]
    pub fn variant(&self) -> VBUS_VALID_A {
        match self.bits {
            false => VBUS_VALID_A::_0,
            true => VBUS_VALID_A::_1,
        }
    }
    #[doc = "Checks if the value of the field is `_0`"]
    #[inline(always)]
    pub fn is_0(&self) -> bool {
        *self == VBUS_VALID_A::_0
    }
    #[doc = "Checks if the value of the field is `_1`"]
    #[inline(always)]
    pub fn is_1(&self) -> bool {
        *self == VBUS_VALID_A::_1
    }
}
#[doc = "VBUS_VALID_3V detector status\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum VBUS_VALID_3V_A {
    #[doc = "0: VBUS voltage is below VBUS_VALID_3V threshold"]
    _0,
    #[doc = "1: VBUS voltage is above VBUS_VALID_3V threshold"]
    _1,
}
impl From<VBUS_VALID_3V_A> for bool {
    #[inline(always)]
    fn from(variant: VBUS_VALID_3V_A) -> Self {
        match variant {
            VBUS_VALID_3V_A::_0 => false,
            VBUS_VALID_3V_A::_1 => true,
        }
    }
}
#[doc = "Reader of field `VBUS_VALID_3V`"]
pub type VBUS_VALID_3V_R = crate::R<bool, VBUS_VALID_3V_A>;
impl VBUS_VALID_3V_R {
    #[doc = r"Get enumerated values variant"]
    #[inline(always)]
    pub fn variant(&self) -> VBUS_VALID_3V_A {
        match self.bits {
            false => VBUS_VALID_3V_A::_0,
            true => VBUS_VALID_3V_A::_1,
        }
    }
    #[doc = "Checks if the value of the field is `_0`"]
    #[inline(always)]
    pub fn is_0(&self) -> bool {
        *self == VBUS_VALID_3V_A::_0
    }
    #[doc = "Checks if the value of the field is `_1`"]
    #[inline(always)]
    pub fn is_1(&self) -> bool {
        *self == VBUS_VALID_3V_A::_1
    }
}
impl R {
    #[doc = "Bit 0 - Session End indicator"]
    #[inline(always)]
    pub fn sessend(&self) -> SESSEND_R {
        SESSEND_R::new((self.bits & 0x01) != 0)
    }
    #[doc = "Bit 1 - B-Device Session Valid status"]
    #[inline(always)]
    pub fn bvalid(&self) -> BVALID_R {
        BVALID_R::new(((self.bits >> 1) & 0x01) != 0)
    }
    #[doc = "Bit 2 - A-Device Session Valid status"]
    #[inline(always)]
    pub fn avalid(&self) -> AVALID_R {
        AVALID_R::new(((self.bits >> 2) & 0x01) != 0)
    }
    #[doc = "Bit 3 - VBUS voltage status"]
    #[inline(always)]
    pub fn vbus_valid(&self) -> VBUS_VALID_R {
        VBUS_VALID_R::new(((self.bits >> 3) & 0x01) != 0)
    }
    #[doc = "Bit 4 - VBUS_VALID_3V detector status"]
    #[inline(always)]
    pub fn vbus_valid_3v(&self) -> VBUS_VALID_3V_R {
        VBUS_VALID_3V_R::new(((self.bits >> 4) & 0x01) != 0)
    }
}