pub type R = crate::R<DCDCTIMINGrs>;
pub type W = crate::W<DCDCTIMINGrs>;
pub type LpinitwaitR = crate::FieldReader;
pub type LpinitwaitW<'a, REG> = crate::FieldWriter<'a, REG, 8>;
pub type CompenprchgenR = crate::BitReader;
pub type CompenprchgenW<'a, REG> = crate::BitWriter<'a, REG>;
pub type LnwaitR = crate::FieldReader;
pub type LnwaitW<'a, REG> = crate::FieldWriter<'a, REG, 5>;
pub type BypwaitR = crate::FieldReader;
pub type BypwaitW<'a, REG> = crate::FieldWriter<'a, REG, 8>;
pub type DutyscaleR = crate::FieldReader;
pub type DutyscaleW<'a, REG> = crate::FieldWriter<'a, REG, 2>;
impl R {
#[inline(always)]
pub fn lpinitwait(&self) -> LpinitwaitR {
LpinitwaitR::new((self.bits & 0xff) as u8)
}
#[inline(always)]
pub fn compenprchgen(&self) -> CompenprchgenR {
CompenprchgenR::new(((self.bits >> 11) & 1) != 0)
}
#[inline(always)]
pub fn lnwait(&self) -> LnwaitR {
LnwaitR::new(((self.bits >> 12) & 0x1f) as u8)
}
#[inline(always)]
pub fn bypwait(&self) -> BypwaitR {
BypwaitR::new(((self.bits >> 20) & 0xff) as u8)
}
#[inline(always)]
pub fn dutyscale(&self) -> DutyscaleR {
DutyscaleR::new(((self.bits >> 29) & 3) as u8)
}
}
impl core::fmt::Debug for R {
fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result {
f.debug_struct("DCDCTIMING")
.field("lpinitwait", &self.lpinitwait())
.field("compenprchgen", &self.compenprchgen())
.field("lnwait", &self.lnwait())
.field("bypwait", &self.bypwait())
.field("dutyscale", &self.dutyscale())
.finish()
}
}
impl W {
#[inline(always)]
pub fn lpinitwait(&mut self) -> LpinitwaitW<'_, DCDCTIMINGrs> {
LpinitwaitW::new(self, 0)
}
#[inline(always)]
pub fn compenprchgen(&mut self) -> CompenprchgenW<'_, DCDCTIMINGrs> {
CompenprchgenW::new(self, 11)
}
#[inline(always)]
pub fn lnwait(&mut self) -> LnwaitW<'_, DCDCTIMINGrs> {
LnwaitW::new(self, 12)
}
#[inline(always)]
pub fn bypwait(&mut self) -> BypwaitW<'_, DCDCTIMINGrs> {
BypwaitW::new(self, 20)
}
#[inline(always)]
pub fn dutyscale(&mut self) -> DutyscaleW<'_, DCDCTIMINGrs> {
DutyscaleW::new(self, 29)
}
}
pub struct DCDCTIMINGrs;
impl crate::RegisterSpec for DCDCTIMINGrs {
type Ux = u32;
}
impl crate::Readable for DCDCTIMINGrs {}
impl crate::Writable for DCDCTIMINGrs {
type Safety = crate::Unsafe;
}
impl crate::Resettable for DCDCTIMINGrs {
const RESET_VALUE: u32 = 0x0ff1_f8ff;
}