1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
#[doc = "Register `TIMDICR` writer"]
pub struct W(crate::W<TIMDICR_SPEC>);
impl core::ops::Deref for W {
    type Target = crate::W<TIMDICR_SPEC>;
    #[inline(always)]
    fn deref(&self) -> &Self::Target {
        &self.0
    }
}
impl core::ops::DerefMut for W {
    #[inline(always)]
    fn deref_mut(&mut self) -> &mut Self::Target {
        &mut self.0
    }
}
impl From<crate::W<TIMDICR_SPEC>> for W {
    #[inline(always)]
    fn from(writer: crate::W<TIMDICR_SPEC>) -> Self {
        W(writer)
    }
}
#[doc = "Field `DLYPRTC` writer - Delayed Protection Flag Clear"]
pub type DLYPRTC_W<'a, const O: u8> = crate::BitWriter<'a, u32, TIMDICR_SPEC, bool, O>;
#[doc = "Field `RSTC` writer - Reset Interrupt flag Clear"]
pub type RSTC_W<'a, const O: u8> = crate::BitWriter<'a, u32, TIMDICR_SPEC, bool, O>;
#[doc = "Field `RSTx2C` writer - Output 2 Reset flag Clear"]
pub type RSTX2C_W<'a, const O: u8> = crate::BitWriter<'a, u32, TIMDICR_SPEC, bool, O>;
#[doc = "Field `SET2xC` writer - Output 2 Set flag Clear"]
pub type SET2XC_W<'a, const O: u8> = crate::BitWriter<'a, u32, TIMDICR_SPEC, bool, O>;
#[doc = "Field `RSTx1C` writer - Output 1 Reset flag Clear"]
pub type RSTX1C_W<'a, const O: u8> = crate::BitWriter<'a, u32, TIMDICR_SPEC, bool, O>;
#[doc = "Field `SET1xC` writer - Output 1 Set flag Clear"]
pub type SET1XC_W<'a, const O: u8> = crate::BitWriter<'a, u32, TIMDICR_SPEC, bool, O>;
#[doc = "Field `CPT2C` writer - Capture2 Interrupt flag Clear"]
pub type CPT2C_W<'a, const O: u8> = crate::BitWriter<'a, u32, TIMDICR_SPEC, bool, O>;
#[doc = "Field `CPT1C` writer - Capture1 Interrupt flag Clear"]
pub type CPT1C_W<'a, const O: u8> = crate::BitWriter<'a, u32, TIMDICR_SPEC, bool, O>;
#[doc = "Field `UPDC` writer - Update Interrupt flag Clear"]
pub type UPDC_W<'a, const O: u8> = crate::BitWriter<'a, u32, TIMDICR_SPEC, bool, O>;
#[doc = "Field `REPC` writer - Repetition Interrupt flag Clear"]
pub type REPC_W<'a, const O: u8> = crate::BitWriter<'a, u32, TIMDICR_SPEC, bool, O>;
#[doc = "Field `CMP4C` writer - Compare 4 Interrupt flag Clear"]
pub type CMP4C_W<'a, const O: u8> = crate::BitWriter<'a, u32, TIMDICR_SPEC, bool, O>;
#[doc = "Field `CMP3C` writer - Compare 3 Interrupt flag Clear"]
pub type CMP3C_W<'a, const O: u8> = crate::BitWriter<'a, u32, TIMDICR_SPEC, bool, O>;
#[doc = "Field `CMP2C` writer - Compare 2 Interrupt flag Clear"]
pub type CMP2C_W<'a, const O: u8> = crate::BitWriter<'a, u32, TIMDICR_SPEC, bool, O>;
#[doc = "Field `CMP1C` writer - Compare 1 Interrupt flag Clear"]
pub type CMP1C_W<'a, const O: u8> = crate::BitWriter<'a, u32, TIMDICR_SPEC, bool, O>;
impl W {
    #[doc = "Bit 14 - Delayed Protection Flag Clear"]
    #[inline(always)]
    pub fn dlyprtc(&mut self) -> DLYPRTC_W<14> {
        DLYPRTC_W::new(self)
    }
    #[doc = "Bit 13 - Reset Interrupt flag Clear"]
    #[inline(always)]
    pub fn rstc(&mut self) -> RSTC_W<13> {
        RSTC_W::new(self)
    }
    #[doc = "Bit 12 - Output 2 Reset flag Clear"]
    #[inline(always)]
    pub fn rstx2c(&mut self) -> RSTX2C_W<12> {
        RSTX2C_W::new(self)
    }
    #[doc = "Bit 11 - Output 2 Set flag Clear"]
    #[inline(always)]
    pub fn set2x_c(&mut self) -> SET2XC_W<11> {
        SET2XC_W::new(self)
    }
    #[doc = "Bit 10 - Output 1 Reset flag Clear"]
    #[inline(always)]
    pub fn rstx1c(&mut self) -> RSTX1C_W<10> {
        RSTX1C_W::new(self)
    }
    #[doc = "Bit 9 - Output 1 Set flag Clear"]
    #[inline(always)]
    pub fn set1x_c(&mut self) -> SET1XC_W<9> {
        SET1XC_W::new(self)
    }
    #[doc = "Bit 8 - Capture2 Interrupt flag Clear"]
    #[inline(always)]
    pub fn cpt2c(&mut self) -> CPT2C_W<8> {
        CPT2C_W::new(self)
    }
    #[doc = "Bit 7 - Capture1 Interrupt flag Clear"]
    #[inline(always)]
    pub fn cpt1c(&mut self) -> CPT1C_W<7> {
        CPT1C_W::new(self)
    }
    #[doc = "Bit 6 - Update Interrupt flag Clear"]
    #[inline(always)]
    pub fn updc(&mut self) -> UPDC_W<6> {
        UPDC_W::new(self)
    }
    #[doc = "Bit 4 - Repetition Interrupt flag Clear"]
    #[inline(always)]
    pub fn repc(&mut self) -> REPC_W<4> {
        REPC_W::new(self)
    }
    #[doc = "Bit 3 - Compare 4 Interrupt flag Clear"]
    #[inline(always)]
    pub fn cmp4c(&mut self) -> CMP4C_W<3> {
        CMP4C_W::new(self)
    }
    #[doc = "Bit 2 - Compare 3 Interrupt flag Clear"]
    #[inline(always)]
    pub fn cmp3c(&mut self) -> CMP3C_W<2> {
        CMP3C_W::new(self)
    }
    #[doc = "Bit 1 - Compare 2 Interrupt flag Clear"]
    #[inline(always)]
    pub fn cmp2c(&mut self) -> CMP2C_W<1> {
        CMP2C_W::new(self)
    }
    #[doc = "Bit 0 - Compare 1 Interrupt flag Clear"]
    #[inline(always)]
    pub fn cmp1c(&mut self) -> CMP1C_W<0> {
        CMP1C_W::new(self)
    }
    #[doc = "Writes raw bits to the register."]
    #[inline(always)]
    pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
        self.0.bits(bits);
        self
    }
}
#[doc = "Timerx Interrupt Clear Register\n\nThis register you can [`write_with_zero`](crate::generic::Reg::write_with_zero), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [timdicr](index.html) module"]
pub struct TIMDICR_SPEC;
impl crate::RegisterSpec for TIMDICR_SPEC {
    type Ux = u32;
}
#[doc = "`write(|w| ..)` method takes [timdicr::W](W) writer structure"]
impl crate::Writable for TIMDICR_SPEC {
    type Writer = W;
}
#[doc = "`reset()` method sets TIMDICR to value 0"]
impl crate::Resettable for TIMDICR_SPEC {
    #[inline(always)]
    fn reset_value() -> Self::Ux {
        0
    }
}