stm32h5/stm32h562/tim1/
ccmr3_output.rs1pub type R = crate::R<CCMR3_OUTPUTrs>;
3pub type W = crate::W<CCMR3_OUTPUTrs>;
5pub use super::ccmr1_output::OC1CE;
7pub use super::ccmr1_output::OC1FE;
9pub use super::ccmr1_output::OC1M;
11pub use super::ccmr1_output::OC1M_3;
13pub use super::ccmr1_output::OC1PE;
15pub use super::ccmr1_output::OCCE_R;
17pub use super::ccmr1_output::OCCE_W;
19pub use super::ccmr1_output::OCFE_R;
21pub use super::ccmr1_output::OCFE_W;
23pub use super::ccmr1_output::OCM_3_R;
25pub use super::ccmr1_output::OCM_3_W;
27pub use super::ccmr1_output::OCM_R;
29pub use super::ccmr1_output::OCM_W;
31pub use super::ccmr1_output::OCPE_R;
33pub use super::ccmr1_output::OCPE_W;
35impl R {
36 #[inline(always)]
40 pub fn ocfe(&self, n: u8) -> OCFE_R {
41 #[allow(clippy::no_effect)]
42 [(); 2][n as usize];
43 OCFE_R::new(((self.bits >> (n * 8 + 2)) & 1) != 0)
44 }
45 #[inline(always)]
48 pub fn ocfe_iter(&self) -> impl Iterator<Item = OCFE_R> + '_ {
49 (0..2).map(move |n| OCFE_R::new(((self.bits >> (n * 8 + 2)) & 1) != 0))
50 }
51 #[inline(always)]
53 pub fn oc5fe(&self) -> OCFE_R {
54 OCFE_R::new(((self.bits >> 2) & 1) != 0)
55 }
56 #[inline(always)]
58 pub fn oc6fe(&self) -> OCFE_R {
59 OCFE_R::new(((self.bits >> 10) & 1) != 0)
60 }
61 #[inline(always)]
65 pub fn ocpe(&self, n: u8) -> OCPE_R {
66 #[allow(clippy::no_effect)]
67 [(); 2][n as usize];
68 OCPE_R::new(((self.bits >> (n * 8 + 3)) & 1) != 0)
69 }
70 #[inline(always)]
73 pub fn ocpe_iter(&self) -> impl Iterator<Item = OCPE_R> + '_ {
74 (0..2).map(move |n| OCPE_R::new(((self.bits >> (n * 8 + 3)) & 1) != 0))
75 }
76 #[inline(always)]
78 pub fn oc5pe(&self) -> OCPE_R {
79 OCPE_R::new(((self.bits >> 3) & 1) != 0)
80 }
81 #[inline(always)]
83 pub fn oc6pe(&self) -> OCPE_R {
84 OCPE_R::new(((self.bits >> 11) & 1) != 0)
85 }
86 #[inline(always)]
90 pub fn ocm(&self, n: u8) -> OCM_R {
91 #[allow(clippy::no_effect)]
92 [(); 2][n as usize];
93 OCM_R::new(((self.bits >> (n * 8 + 4)) & 7) as u8)
94 }
95 #[inline(always)]
98 pub fn ocm_iter(&self) -> impl Iterator<Item = OCM_R> + '_ {
99 (0..2).map(move |n| OCM_R::new(((self.bits >> (n * 8 + 4)) & 7) as u8))
100 }
101 #[inline(always)]
103 pub fn oc5m(&self) -> OCM_R {
104 OCM_R::new(((self.bits >> 4) & 7) as u8)
105 }
106 #[inline(always)]
108 pub fn oc6m(&self) -> OCM_R {
109 OCM_R::new(((self.bits >> 12) & 7) as u8)
110 }
111 #[inline(always)]
115 pub fn occe(&self, n: u8) -> OCCE_R {
116 #[allow(clippy::no_effect)]
117 [(); 2][n as usize];
118 OCCE_R::new(((self.bits >> (n * 8 + 7)) & 1) != 0)
119 }
120 #[inline(always)]
123 pub fn occe_iter(&self) -> impl Iterator<Item = OCCE_R> + '_ {
124 (0..2).map(move |n| OCCE_R::new(((self.bits >> (n * 8 + 7)) & 1) != 0))
125 }
126 #[inline(always)]
128 pub fn oc5ce(&self) -> OCCE_R {
129 OCCE_R::new(((self.bits >> 7) & 1) != 0)
130 }
131 #[inline(always)]
133 pub fn oc6ce(&self) -> OCCE_R {
134 OCCE_R::new(((self.bits >> 15) & 1) != 0)
135 }
136 #[inline(always)]
140 pub fn ocm_3(&self, n: u8) -> OCM_3_R {
141 #[allow(clippy::no_effect)]
142 [(); 2][n as usize];
143 OCM_3_R::new(((self.bits >> (n * 8 + 16)) & 1) != 0)
144 }
145 #[inline(always)]
148 pub fn ocm_3_iter(&self) -> impl Iterator<Item = OCM_3_R> + '_ {
149 (0..2).map(move |n| OCM_3_R::new(((self.bits >> (n * 8 + 16)) & 1) != 0))
150 }
151 #[inline(always)]
153 pub fn oc5m_3(&self) -> OCM_3_R {
154 OCM_3_R::new(((self.bits >> 16) & 1) != 0)
155 }
156 #[inline(always)]
158 pub fn oc6m_3(&self) -> OCM_3_R {
159 OCM_3_R::new(((self.bits >> 24) & 1) != 0)
160 }
161}
162impl core::fmt::Debug for R {
163 fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result {
164 f.debug_struct("CCMR3_Output")
165 .field("oc5fe", &self.oc5fe())
166 .field("oc6fe", &self.oc6fe())
167 .field("oc5pe", &self.oc5pe())
168 .field("oc6pe", &self.oc6pe())
169 .field("oc5m", &self.oc5m())
170 .field("oc6m", &self.oc6m())
171 .field("oc5ce", &self.oc5ce())
172 .field("oc6ce", &self.oc6ce())
173 .field("oc5m_3", &self.oc5m_3())
174 .field("oc6m_3", &self.oc6m_3())
175 .finish()
176 }
177}
178impl W {
179 #[inline(always)]
183 pub fn ocfe(&mut self, n: u8) -> OCFE_W<CCMR3_OUTPUTrs> {
184 #[allow(clippy::no_effect)]
185 [(); 2][n as usize];
186 OCFE_W::new(self, n * 8 + 2)
187 }
188 #[inline(always)]
190 pub fn oc5fe(&mut self) -> OCFE_W<CCMR3_OUTPUTrs> {
191 OCFE_W::new(self, 2)
192 }
193 #[inline(always)]
195 pub fn oc6fe(&mut self) -> OCFE_W<CCMR3_OUTPUTrs> {
196 OCFE_W::new(self, 10)
197 }
198 #[inline(always)]
202 pub fn ocpe(&mut self, n: u8) -> OCPE_W<CCMR3_OUTPUTrs> {
203 #[allow(clippy::no_effect)]
204 [(); 2][n as usize];
205 OCPE_W::new(self, n * 8 + 3)
206 }
207 #[inline(always)]
209 pub fn oc5pe(&mut self) -> OCPE_W<CCMR3_OUTPUTrs> {
210 OCPE_W::new(self, 3)
211 }
212 #[inline(always)]
214 pub fn oc6pe(&mut self) -> OCPE_W<CCMR3_OUTPUTrs> {
215 OCPE_W::new(self, 11)
216 }
217 #[inline(always)]
221 pub fn ocm(&mut self, n: u8) -> OCM_W<CCMR3_OUTPUTrs> {
222 #[allow(clippy::no_effect)]
223 [(); 2][n as usize];
224 OCM_W::new(self, n * 8 + 4)
225 }
226 #[inline(always)]
228 pub fn oc5m(&mut self) -> OCM_W<CCMR3_OUTPUTrs> {
229 OCM_W::new(self, 4)
230 }
231 #[inline(always)]
233 pub fn oc6m(&mut self) -> OCM_W<CCMR3_OUTPUTrs> {
234 OCM_W::new(self, 12)
235 }
236 #[inline(always)]
240 pub fn occe(&mut self, n: u8) -> OCCE_W<CCMR3_OUTPUTrs> {
241 #[allow(clippy::no_effect)]
242 [(); 2][n as usize];
243 OCCE_W::new(self, n * 8 + 7)
244 }
245 #[inline(always)]
247 pub fn oc5ce(&mut self) -> OCCE_W<CCMR3_OUTPUTrs> {
248 OCCE_W::new(self, 7)
249 }
250 #[inline(always)]
252 pub fn oc6ce(&mut self) -> OCCE_W<CCMR3_OUTPUTrs> {
253 OCCE_W::new(self, 15)
254 }
255 #[inline(always)]
259 pub fn ocm_3(&mut self, n: u8) -> OCM_3_W<CCMR3_OUTPUTrs> {
260 #[allow(clippy::no_effect)]
261 [(); 2][n as usize];
262 OCM_3_W::new(self, n * 8 + 16)
263 }
264 #[inline(always)]
266 pub fn oc5m_3(&mut self) -> OCM_3_W<CCMR3_OUTPUTrs> {
267 OCM_3_W::new(self, 16)
268 }
269 #[inline(always)]
271 pub fn oc6m_3(&mut self) -> OCM_3_W<CCMR3_OUTPUTrs> {
272 OCM_3_W::new(self, 24)
273 }
274}
275pub struct CCMR3_OUTPUTrs;
281impl crate::RegisterSpec for CCMR3_OUTPUTrs {
282 type Ux = u32;
283}
284impl crate::Readable for CCMR3_OUTPUTrs {}
286impl crate::Writable for CCMR3_OUTPUTrs {
288 type Safety = crate::Unsafe;
289}
290impl crate::Resettable for CCMR3_OUTPUTrs {}