pub type R = crate::R<PLL1DIVRrs>;
pub type W = crate::W<PLL1DIVRrs>;
pub type DIVN1_R = crate::FieldReader<u16>;
pub type DIVN1_W<'a, REG> = crate::FieldWriter<'a, REG, 9, u16>;
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
#[derive(Clone, Copy, Debug, PartialEq, Eq)]
#[repr(u8)]
pub enum DIVP1 {
Div1 = 0,
Div2 = 1,
Div4 = 3,
Div6 = 5,
Div8 = 7,
Div10 = 9,
Div12 = 11,
Div14 = 13,
Div16 = 15,
Div18 = 17,
Div20 = 19,
Div22 = 21,
Div24 = 23,
Div26 = 25,
Div28 = 27,
Div30 = 29,
Div32 = 31,
Div34 = 33,
Div36 = 35,
Div38 = 37,
Div40 = 39,
Div42 = 41,
Div44 = 43,
Div46 = 45,
Div48 = 47,
Div50 = 49,
Div52 = 51,
Div54 = 53,
Div56 = 55,
Div58 = 57,
Div60 = 59,
Div62 = 61,
Div64 = 63,
Div66 = 65,
Div68 = 67,
Div70 = 69,
Div72 = 71,
Div74 = 73,
Div76 = 75,
Div78 = 77,
Div80 = 79,
Div82 = 81,
Div84 = 83,
Div86 = 85,
Div88 = 87,
Div90 = 89,
Div92 = 91,
Div94 = 93,
Div96 = 95,
Div98 = 97,
Div100 = 99,
Div102 = 101,
Div104 = 103,
Div106 = 105,
Div108 = 107,
Div110 = 109,
Div112 = 111,
Div114 = 113,
Div116 = 115,
Div118 = 117,
Div120 = 119,
Div122 = 121,
Div124 = 123,
Div126 = 125,
Div128 = 127,
}
impl From<DIVP1> for u8 {
#[inline(always)]
fn from(variant: DIVP1) -> Self {
variant as _
}
}
impl crate::FieldSpec for DIVP1 {
type Ux = u8;
}
impl crate::IsEnum for DIVP1 {}
pub type DIVP1_R = crate::FieldReader<DIVP1>;
impl DIVP1_R {
#[inline(always)]
pub const fn variant(&self) -> Option<DIVP1> {
match self.bits {
0 => Some(DIVP1::Div1),
1 => Some(DIVP1::Div2),
3 => Some(DIVP1::Div4),
5 => Some(DIVP1::Div6),
7 => Some(DIVP1::Div8),
9 => Some(DIVP1::Div10),
11 => Some(DIVP1::Div12),
13 => Some(DIVP1::Div14),
15 => Some(DIVP1::Div16),
17 => Some(DIVP1::Div18),
19 => Some(DIVP1::Div20),
21 => Some(DIVP1::Div22),
23 => Some(DIVP1::Div24),
25 => Some(DIVP1::Div26),
27 => Some(DIVP1::Div28),
29 => Some(DIVP1::Div30),
31 => Some(DIVP1::Div32),
33 => Some(DIVP1::Div34),
35 => Some(DIVP1::Div36),
37 => Some(DIVP1::Div38),
39 => Some(DIVP1::Div40),
41 => Some(DIVP1::Div42),
43 => Some(DIVP1::Div44),
45 => Some(DIVP1::Div46),
47 => Some(DIVP1::Div48),
49 => Some(DIVP1::Div50),
51 => Some(DIVP1::Div52),
53 => Some(DIVP1::Div54),
55 => Some(DIVP1::Div56),
57 => Some(DIVP1::Div58),
59 => Some(DIVP1::Div60),
61 => Some(DIVP1::Div62),
63 => Some(DIVP1::Div64),
65 => Some(DIVP1::Div66),
67 => Some(DIVP1::Div68),
69 => Some(DIVP1::Div70),
71 => Some(DIVP1::Div72),
73 => Some(DIVP1::Div74),
75 => Some(DIVP1::Div76),
77 => Some(DIVP1::Div78),
79 => Some(DIVP1::Div80),
81 => Some(DIVP1::Div82),
83 => Some(DIVP1::Div84),
85 => Some(DIVP1::Div86),
87 => Some(DIVP1::Div88),
89 => Some(DIVP1::Div90),
91 => Some(DIVP1::Div92),
93 => Some(DIVP1::Div94),
95 => Some(DIVP1::Div96),
97 => Some(DIVP1::Div98),
99 => Some(DIVP1::Div100),
101 => Some(DIVP1::Div102),
103 => Some(DIVP1::Div104),
105 => Some(DIVP1::Div106),
107 => Some(DIVP1::Div108),
109 => Some(DIVP1::Div110),
111 => Some(DIVP1::Div112),
113 => Some(DIVP1::Div114),
115 => Some(DIVP1::Div116),
117 => Some(DIVP1::Div118),
119 => Some(DIVP1::Div120),
121 => Some(DIVP1::Div122),
123 => Some(DIVP1::Div124),
125 => Some(DIVP1::Div126),
127 => Some(DIVP1::Div128),
_ => None,
}
}
#[inline(always)]
pub fn is_div1(&self) -> bool {
*self == DIVP1::Div1
}
#[inline(always)]
pub fn is_div2(&self) -> bool {
*self == DIVP1::Div2
}
#[inline(always)]
pub fn is_div4(&self) -> bool {
*self == DIVP1::Div4
}
#[inline(always)]
pub fn is_div6(&self) -> bool {
*self == DIVP1::Div6
}
#[inline(always)]
pub fn is_div8(&self) -> bool {
*self == DIVP1::Div8
}
#[inline(always)]
pub fn is_div10(&self) -> bool {
*self == DIVP1::Div10
}
#[inline(always)]
pub fn is_div12(&self) -> bool {
*self == DIVP1::Div12
}
#[inline(always)]
pub fn is_div14(&self) -> bool {
*self == DIVP1::Div14
}
#[inline(always)]
pub fn is_div16(&self) -> bool {
*self == DIVP1::Div16
}
#[inline(always)]
pub fn is_div18(&self) -> bool {
*self == DIVP1::Div18
}
#[inline(always)]
pub fn is_div20(&self) -> bool {
*self == DIVP1::Div20
}
#[inline(always)]
pub fn is_div22(&self) -> bool {
*self == DIVP1::Div22
}
#[inline(always)]
pub fn is_div24(&self) -> bool {
*self == DIVP1::Div24
}
#[inline(always)]
pub fn is_div26(&self) -> bool {
*self == DIVP1::Div26
}
#[inline(always)]
pub fn is_div28(&self) -> bool {
*self == DIVP1::Div28
}
#[inline(always)]
pub fn is_div30(&self) -> bool {
*self == DIVP1::Div30
}
#[inline(always)]
pub fn is_div32(&self) -> bool {
*self == DIVP1::Div32
}
#[inline(always)]
pub fn is_div34(&self) -> bool {
*self == DIVP1::Div34
}
#[inline(always)]
pub fn is_div36(&self) -> bool {
*self == DIVP1::Div36
}
#[inline(always)]
pub fn is_div38(&self) -> bool {
*self == DIVP1::Div38
}
#[inline(always)]
pub fn is_div40(&self) -> bool {
*self == DIVP1::Div40
}
#[inline(always)]
pub fn is_div42(&self) -> bool {
*self == DIVP1::Div42
}
#[inline(always)]
pub fn is_div44(&self) -> bool {
*self == DIVP1::Div44
}
#[inline(always)]
pub fn is_div46(&self) -> bool {
*self == DIVP1::Div46
}
#[inline(always)]
pub fn is_div48(&self) -> bool {
*self == DIVP1::Div48
}
#[inline(always)]
pub fn is_div50(&self) -> bool {
*self == DIVP1::Div50
}
#[inline(always)]
pub fn is_div52(&self) -> bool {
*self == DIVP1::Div52
}
#[inline(always)]
pub fn is_div54(&self) -> bool {
*self == DIVP1::Div54
}
#[inline(always)]
pub fn is_div56(&self) -> bool {
*self == DIVP1::Div56
}
#[inline(always)]
pub fn is_div58(&self) -> bool {
*self == DIVP1::Div58
}
#[inline(always)]
pub fn is_div60(&self) -> bool {
*self == DIVP1::Div60
}
#[inline(always)]
pub fn is_div62(&self) -> bool {
*self == DIVP1::Div62
}
#[inline(always)]
pub fn is_div64(&self) -> bool {
*self == DIVP1::Div64
}
#[inline(always)]
pub fn is_div66(&self) -> bool {
*self == DIVP1::Div66
}
#[inline(always)]
pub fn is_div68(&self) -> bool {
*self == DIVP1::Div68
}
#[inline(always)]
pub fn is_div70(&self) -> bool {
*self == DIVP1::Div70
}
#[inline(always)]
pub fn is_div72(&self) -> bool {
*self == DIVP1::Div72
}
#[inline(always)]
pub fn is_div74(&self) -> bool {
*self == DIVP1::Div74
}
#[inline(always)]
pub fn is_div76(&self) -> bool {
*self == DIVP1::Div76
}
#[inline(always)]
pub fn is_div78(&self) -> bool {
*self == DIVP1::Div78
}
#[inline(always)]
pub fn is_div80(&self) -> bool {
*self == DIVP1::Div80
}
#[inline(always)]
pub fn is_div82(&self) -> bool {
*self == DIVP1::Div82
}
#[inline(always)]
pub fn is_div84(&self) -> bool {
*self == DIVP1::Div84
}
#[inline(always)]
pub fn is_div86(&self) -> bool {
*self == DIVP1::Div86
}
#[inline(always)]
pub fn is_div88(&self) -> bool {
*self == DIVP1::Div88
}
#[inline(always)]
pub fn is_div90(&self) -> bool {
*self == DIVP1::Div90
}
#[inline(always)]
pub fn is_div92(&self) -> bool {
*self == DIVP1::Div92
}
#[inline(always)]
pub fn is_div94(&self) -> bool {
*self == DIVP1::Div94
}
#[inline(always)]
pub fn is_div96(&self) -> bool {
*self == DIVP1::Div96
}
#[inline(always)]
pub fn is_div98(&self) -> bool {
*self == DIVP1::Div98
}
#[inline(always)]
pub fn is_div100(&self) -> bool {
*self == DIVP1::Div100
}
#[inline(always)]
pub fn is_div102(&self) -> bool {
*self == DIVP1::Div102
}
#[inline(always)]
pub fn is_div104(&self) -> bool {
*self == DIVP1::Div104
}
#[inline(always)]
pub fn is_div106(&self) -> bool {
*self == DIVP1::Div106
}
#[inline(always)]
pub fn is_div108(&self) -> bool {
*self == DIVP1::Div108
}
#[inline(always)]
pub fn is_div110(&self) -> bool {
*self == DIVP1::Div110
}
#[inline(always)]
pub fn is_div112(&self) -> bool {
*self == DIVP1::Div112
}
#[inline(always)]
pub fn is_div114(&self) -> bool {
*self == DIVP1::Div114
}
#[inline(always)]
pub fn is_div116(&self) -> bool {
*self == DIVP1::Div116
}
#[inline(always)]
pub fn is_div118(&self) -> bool {
*self == DIVP1::Div118
}
#[inline(always)]
pub fn is_div120(&self) -> bool {
*self == DIVP1::Div120
}
#[inline(always)]
pub fn is_div122(&self) -> bool {
*self == DIVP1::Div122
}
#[inline(always)]
pub fn is_div124(&self) -> bool {
*self == DIVP1::Div124
}
#[inline(always)]
pub fn is_div126(&self) -> bool {
*self == DIVP1::Div126
}
#[inline(always)]
pub fn is_div128(&self) -> bool {
*self == DIVP1::Div128
}
}
pub type DIVP1_W<'a, REG> = crate::FieldWriter<'a, REG, 7, DIVP1>;
impl<'a, REG> DIVP1_W<'a, REG>
where
REG: crate::Writable + crate::RegisterSpec,
REG::Ux: From<u8>,
{
#[inline(always)]
pub fn div1(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div1)
}
#[inline(always)]
pub fn div2(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div2)
}
#[inline(always)]
pub fn div4(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div4)
}
#[inline(always)]
pub fn div6(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div6)
}
#[inline(always)]
pub fn div8(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div8)
}
#[inline(always)]
pub fn div10(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div10)
}
#[inline(always)]
pub fn div12(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div12)
}
#[inline(always)]
pub fn div14(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div14)
}
#[inline(always)]
pub fn div16(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div16)
}
#[inline(always)]
pub fn div18(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div18)
}
#[inline(always)]
pub fn div20(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div20)
}
#[inline(always)]
pub fn div22(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div22)
}
#[inline(always)]
pub fn div24(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div24)
}
#[inline(always)]
pub fn div26(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div26)
}
#[inline(always)]
pub fn div28(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div28)
}
#[inline(always)]
pub fn div30(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div30)
}
#[inline(always)]
pub fn div32(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div32)
}
#[inline(always)]
pub fn div34(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div34)
}
#[inline(always)]
pub fn div36(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div36)
}
#[inline(always)]
pub fn div38(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div38)
}
#[inline(always)]
pub fn div40(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div40)
}
#[inline(always)]
pub fn div42(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div42)
}
#[inline(always)]
pub fn div44(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div44)
}
#[inline(always)]
pub fn div46(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div46)
}
#[inline(always)]
pub fn div48(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div48)
}
#[inline(always)]
pub fn div50(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div50)
}
#[inline(always)]
pub fn div52(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div52)
}
#[inline(always)]
pub fn div54(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div54)
}
#[inline(always)]
pub fn div56(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div56)
}
#[inline(always)]
pub fn div58(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div58)
}
#[inline(always)]
pub fn div60(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div60)
}
#[inline(always)]
pub fn div62(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div62)
}
#[inline(always)]
pub fn div64(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div64)
}
#[inline(always)]
pub fn div66(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div66)
}
#[inline(always)]
pub fn div68(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div68)
}
#[inline(always)]
pub fn div70(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div70)
}
#[inline(always)]
pub fn div72(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div72)
}
#[inline(always)]
pub fn div74(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div74)
}
#[inline(always)]
pub fn div76(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div76)
}
#[inline(always)]
pub fn div78(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div78)
}
#[inline(always)]
pub fn div80(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div80)
}
#[inline(always)]
pub fn div82(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div82)
}
#[inline(always)]
pub fn div84(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div84)
}
#[inline(always)]
pub fn div86(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div86)
}
#[inline(always)]
pub fn div88(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div88)
}
#[inline(always)]
pub fn div90(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div90)
}
#[inline(always)]
pub fn div92(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div92)
}
#[inline(always)]
pub fn div94(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div94)
}
#[inline(always)]
pub fn div96(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div96)
}
#[inline(always)]
pub fn div98(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div98)
}
#[inline(always)]
pub fn div100(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div100)
}
#[inline(always)]
pub fn div102(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div102)
}
#[inline(always)]
pub fn div104(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div104)
}
#[inline(always)]
pub fn div106(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div106)
}
#[inline(always)]
pub fn div108(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div108)
}
#[inline(always)]
pub fn div110(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div110)
}
#[inline(always)]
pub fn div112(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div112)
}
#[inline(always)]
pub fn div114(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div114)
}
#[inline(always)]
pub fn div116(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div116)
}
#[inline(always)]
pub fn div118(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div118)
}
#[inline(always)]
pub fn div120(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div120)
}
#[inline(always)]
pub fn div122(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div122)
}
#[inline(always)]
pub fn div124(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div124)
}
#[inline(always)]
pub fn div126(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div126)
}
#[inline(always)]
pub fn div128(self) -> &'a mut crate::W<REG> {
self.variant(DIVP1::Div128)
}
}
pub type DIVQ1_R = crate::FieldReader;
pub type DIVQ1_W<'a, REG> = crate::FieldWriter<'a, REG, 7, u8, crate::Safe>;
pub type DIVR1_R = crate::FieldReader;
pub type DIVR1_W<'a, REG> = crate::FieldWriter<'a, REG, 7, u8, crate::Safe>;
impl R {
#[inline(always)]
pub fn divn1(&self) -> DIVN1_R {
DIVN1_R::new((self.bits & 0x01ff) as u16)
}
#[inline(always)]
pub fn divp1(&self) -> DIVP1_R {
DIVP1_R::new(((self.bits >> 9) & 0x7f) as u8)
}
#[inline(always)]
pub fn divq1(&self) -> DIVQ1_R {
DIVQ1_R::new(((self.bits >> 16) & 0x7f) as u8)
}
#[inline(always)]
pub fn divr1(&self) -> DIVR1_R {
DIVR1_R::new(((self.bits >> 24) & 0x7f) as u8)
}
}
impl core::fmt::Debug for R {
fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result {
f.debug_struct("PLL1DIVR")
.field("divn1", &self.divn1())
.field("divp1", &self.divp1())
.field("divq1", &self.divq1())
.field("divr1", &self.divr1())
.finish()
}
}
impl W {
#[inline(always)]
pub fn divn1(&mut self) -> DIVN1_W<PLL1DIVRrs> {
DIVN1_W::new(self, 0)
}
#[inline(always)]
pub fn divp1(&mut self) -> DIVP1_W<PLL1DIVRrs> {
DIVP1_W::new(self, 9)
}
#[inline(always)]
pub fn divq1(&mut self) -> DIVQ1_W<PLL1DIVRrs> {
DIVQ1_W::new(self, 16)
}
#[inline(always)]
pub fn divr1(&mut self) -> DIVR1_W<PLL1DIVRrs> {
DIVR1_W::new(self, 24)
}
}
pub struct PLL1DIVRrs;
impl crate::RegisterSpec for PLL1DIVRrs {
type Ux = u32;
}
impl crate::Readable for PLL1DIVRrs {}
impl crate::Writable for PLL1DIVRrs {
type Safety = crate::Unsafe;
}
impl crate::Resettable for PLL1DIVRrs {
const RESET_VALUE: u32 = 0x0101_0280;
}