1#![allow(clippy::identity_op)]
21#![allow(clippy::module_inception)]
22#![allow(clippy::derivable_impls)]
23#[allow(unused_imports)]
24use crate::common::sealed;
25#[allow(unused_imports)]
26use crate::common::*;
27#[doc = r"TIMER1 registers"]
28unsafe impl ::core::marker::Send for super::Timer1 {}
29unsafe impl ::core::marker::Sync for super::Timer1 {}
30impl super::Timer1 {
31 #[allow(unused)]
32 #[inline(always)]
33 pub(crate) const fn _svd2pac_as_ptr(&self) -> *mut u8 {
34 self.ptr
35 }
36
37 #[doc = "Capture Timer value for event on GPIO1"]
38 #[inline(always)]
39 pub const fn captim_capture_gpio1_reg(
40 &self,
41 ) -> &'static crate::common::Reg<self::CaptimCaptureGpio1Reg_SPEC, crate::common::RW> {
42 unsafe {
43 crate::common::Reg::<self::CaptimCaptureGpio1Reg_SPEC, crate::common::RW>::from_ptr(
44 self._svd2pac_as_ptr().add(16usize),
45 )
46 }
47 }
48
49 #[doc = "Capture Timer value for event on GPIO2"]
50 #[inline(always)]
51 pub const fn captim_capture_gpio2_reg(
52 &self,
53 ) -> &'static crate::common::Reg<self::CaptimCaptureGpio2Reg_SPEC, crate::common::RW> {
54 unsafe {
55 crate::common::Reg::<self::CaptimCaptureGpio2Reg_SPEC, crate::common::RW>::from_ptr(
56 self._svd2pac_as_ptr().add(18usize),
57 )
58 }
59 }
60
61 #[doc = "Capture Timer control register"]
62 #[inline(always)]
63 pub const fn captim_ctrl_reg(
64 &self,
65 ) -> &'static crate::common::Reg<self::CaptimCtrlReg_SPEC, crate::common::RW> {
66 unsafe {
67 crate::common::Reg::<self::CaptimCtrlReg_SPEC, crate::common::RW>::from_ptr(
68 self._svd2pac_as_ptr().add(0usize),
69 )
70 }
71 }
72
73 #[doc = "Capture Timer gpio1 selection"]
74 #[inline(always)]
75 pub const fn captim_gpio1_conf_reg(
76 &self,
77 ) -> &'static crate::common::Reg<self::CaptimGpio1ConfReg_SPEC, crate::common::RW> {
78 unsafe {
79 crate::common::Reg::<self::CaptimGpio1ConfReg_SPEC, crate::common::RW>::from_ptr(
80 self._svd2pac_as_ptr().add(6usize),
81 )
82 }
83 }
84
85 #[doc = "Capture Timer gpio2 selection"]
86 #[inline(always)]
87 pub const fn captim_gpio2_conf_reg(
88 &self,
89 ) -> &'static crate::common::Reg<self::CaptimGpio2ConfReg_SPEC, crate::common::RW> {
90 unsafe {
91 crate::common::Reg::<self::CaptimGpio2ConfReg_SPEC, crate::common::RW>::from_ptr(
92 self._svd2pac_as_ptr().add(8usize),
93 )
94 }
95 }
96
97 #[doc = "Capture Timer prescaler value"]
98 #[inline(always)]
99 pub const fn captim_prescaler_reg(
100 &self,
101 ) -> &'static crate::common::Reg<self::CaptimPrescalerReg_SPEC, crate::common::RW> {
102 unsafe {
103 crate::common::Reg::<self::CaptimPrescalerReg_SPEC, crate::common::RW>::from_ptr(
104 self._svd2pac_as_ptr().add(14usize),
105 )
106 }
107 }
108
109 #[doc = "Capture Timer interrupt status register"]
110 #[inline(always)]
111 pub const fn captim_prescaler_val_reg(
112 &self,
113 ) -> &'static crate::common::Reg<self::CaptimPrescalerValReg_SPEC, crate::common::RW> {
114 unsafe {
115 crate::common::Reg::<self::CaptimPrescalerValReg_SPEC, crate::common::RW>::from_ptr(
116 self._svd2pac_as_ptr().add(20usize),
117 )
118 }
119 }
120
121 #[doc = "Capture Timer pwm dc register"]
122 #[inline(always)]
123 pub const fn captim_pwm_dc_reg(
124 &self,
125 ) -> &'static crate::common::Reg<self::CaptimPwmDcReg_SPEC, crate::common::RW> {
126 unsafe {
127 crate::common::Reg::<self::CaptimPwmDcReg_SPEC, crate::common::RW>::from_ptr(
128 self._svd2pac_as_ptr().add(24usize),
129 )
130 }
131 }
132
133 #[doc = "Capture Timer pwm frequency register. PWM5 period is defined by the reference clock frequency multiplied by this value."]
134 #[inline(always)]
135 pub const fn captim_pwm_freq_reg(
136 &self,
137 ) -> &'static crate::common::Reg<self::CaptimPwmFreqReg_SPEC, crate::common::RW> {
138 unsafe {
139 crate::common::Reg::<self::CaptimPwmFreqReg_SPEC, crate::common::RW>::from_ptr(
140 self._svd2pac_as_ptr().add(22usize),
141 )
142 }
143 }
144
145 #[doc = "Capture Timer reload value and Delay in shot mode"]
146 #[inline(always)]
147 pub const fn captim_reload_reg(
148 &self,
149 ) -> &'static crate::common::Reg<self::CaptimReloadReg_SPEC, crate::common::RW> {
150 unsafe {
151 crate::common::Reg::<self::CaptimReloadReg_SPEC, crate::common::RW>::from_ptr(
152 self._svd2pac_as_ptr().add(10usize),
153 )
154 }
155 }
156
157 #[doc = "Capture Timer Shot duration in shot mode"]
158 #[inline(always)]
159 pub const fn captim_shotwidth_reg(
160 &self,
161 ) -> &'static crate::common::Reg<self::CaptimShotwidthReg_SPEC, crate::common::RW> {
162 unsafe {
163 crate::common::Reg::<self::CaptimShotwidthReg_SPEC, crate::common::RW>::from_ptr(
164 self._svd2pac_as_ptr().add(12usize),
165 )
166 }
167 }
168
169 #[doc = "Capture Timer status register"]
170 #[inline(always)]
171 pub const fn captim_status_reg(
172 &self,
173 ) -> &'static crate::common::Reg<self::CaptimStatusReg_SPEC, crate::common::RW> {
174 unsafe {
175 crate::common::Reg::<self::CaptimStatusReg_SPEC, crate::common::RW>::from_ptr(
176 self._svd2pac_as_ptr().add(4usize),
177 )
178 }
179 }
180
181 #[doc = "Capture Timer counter value"]
182 #[inline(always)]
183 pub const fn captim_timer_val_reg(
184 &self,
185 ) -> &'static crate::common::Reg<self::CaptimTimerValReg_SPEC, crate::common::RW> {
186 unsafe {
187 crate::common::Reg::<self::CaptimTimerValReg_SPEC, crate::common::RW>::from_ptr(
188 self._svd2pac_as_ptr().add(2usize),
189 )
190 }
191 }
192}
193#[doc(hidden)]
194#[derive(Copy, Clone, Eq, PartialEq)]
195pub struct CaptimCaptureGpio1Reg_SPEC;
196impl crate::sealed::RegSpec for CaptimCaptureGpio1Reg_SPEC {
197 type DataType = u16;
198}
199
200#[doc = "Capture Timer value for event on GPIO1"]
201pub type CaptimCaptureGpio1Reg = crate::RegValueT<CaptimCaptureGpio1Reg_SPEC>;
202
203impl CaptimCaptureGpio1Reg {
204 #[doc = "Gives the Capture time for event on GPIO1"]
205 #[inline(always)]
206 pub fn captim_capture_gpio1(
207 self,
208 ) -> crate::common::RegisterField<
209 0,
210 0xffff,
211 1,
212 0,
213 u16,
214 u16,
215 CaptimCaptureGpio1Reg_SPEC,
216 crate::common::R,
217 > {
218 crate::common::RegisterField::<
219 0,
220 0xffff,
221 1,
222 0,
223 u16,
224 u16,
225 CaptimCaptureGpio1Reg_SPEC,
226 crate::common::R,
227 >::from_register(self, 0)
228 }
229}
230impl ::core::default::Default for CaptimCaptureGpio1Reg {
231 #[inline(always)]
232 fn default() -> CaptimCaptureGpio1Reg {
233 <crate::RegValueT<CaptimCaptureGpio1Reg_SPEC> as RegisterValue<_>>::new(0)
234 }
235}
236
237#[doc(hidden)]
238#[derive(Copy, Clone, Eq, PartialEq)]
239pub struct CaptimCaptureGpio2Reg_SPEC;
240impl crate::sealed::RegSpec for CaptimCaptureGpio2Reg_SPEC {
241 type DataType = u16;
242}
243
244#[doc = "Capture Timer value for event on GPIO2"]
245pub type CaptimCaptureGpio2Reg = crate::RegValueT<CaptimCaptureGpio2Reg_SPEC>;
246
247impl CaptimCaptureGpio2Reg {
248 #[doc = "Gives the Capture time for event on GPIO2"]
249 #[inline(always)]
250 pub fn captim_capture_gpio2(
251 self,
252 ) -> crate::common::RegisterField<
253 0,
254 0xffff,
255 1,
256 0,
257 u16,
258 u16,
259 CaptimCaptureGpio2Reg_SPEC,
260 crate::common::R,
261 > {
262 crate::common::RegisterField::<
263 0,
264 0xffff,
265 1,
266 0,
267 u16,
268 u16,
269 CaptimCaptureGpio2Reg_SPEC,
270 crate::common::R,
271 >::from_register(self, 0)
272 }
273}
274impl ::core::default::Default for CaptimCaptureGpio2Reg {
275 #[inline(always)]
276 fn default() -> CaptimCaptureGpio2Reg {
277 <crate::RegValueT<CaptimCaptureGpio2Reg_SPEC> as RegisterValue<_>>::new(0)
278 }
279}
280
281#[doc(hidden)]
282#[derive(Copy, Clone, Eq, PartialEq)]
283pub struct CaptimCtrlReg_SPEC;
284impl crate::sealed::RegSpec for CaptimCtrlReg_SPEC {
285 type DataType = u16;
286}
287
288#[doc = "Capture Timer control register"]
289pub type CaptimCtrlReg = crate::RegValueT<CaptimCtrlReg_SPEC>;
290
291impl CaptimCtrlReg {
292 #[doc = "\'1\' When Capture Timer use the system clock else use the clock 32KHz"]
293 #[inline(always)]
294 pub fn captim_sys_clk_en(
295 self,
296 ) -> crate::common::RegisterFieldBool<7, 1, 0, CaptimCtrlReg_SPEC, crate::common::RW> {
297 crate::common::RegisterFieldBool::<7,1,0,CaptimCtrlReg_SPEC,crate::common::RW>::from_register(self,0)
298 }
299
300 #[doc = "Only when timer counts up, if it is \'1\' timer does not zero when reaches to reload value. it is zero only when it has the max value."]
301 #[inline(always)]
302 pub fn captim_free_run_mode_en(
303 self,
304 ) -> crate::common::RegisterFieldBool<6, 1, 0, CaptimCtrlReg_SPEC, crate::common::RW> {
305 crate::common::RegisterFieldBool::<6,1,0,CaptimCtrlReg_SPEC,crate::common::RW>::from_register(self,0)
306 }
307
308 #[doc = "\'1\' When Capture timer IRQ unmask, \'0\' masked"]
309 #[inline(always)]
310 pub fn captim_irq_en(
311 self,
312 ) -> crate::common::RegisterFieldBool<5, 1, 0, CaptimCtrlReg_SPEC, crate::common::RW> {
313 crate::common::RegisterFieldBool::<5,1,0,CaptimCtrlReg_SPEC,crate::common::RW>::from_register(self,0)
314 }
315
316 #[doc = "\'1\' When Input1 event type is falling edge, \'0\' rising edge"]
317 #[inline(always)]
318 pub fn captim_in2_event_fall_en(
319 self,
320 ) -> crate::common::RegisterFieldBool<4, 1, 0, CaptimCtrlReg_SPEC, crate::common::RW> {
321 crate::common::RegisterFieldBool::<4,1,0,CaptimCtrlReg_SPEC,crate::common::RW>::from_register(self,0)
322 }
323
324 #[doc = "\'1\' When Input2 event type is falling edge, \'0\' rising edge"]
325 #[inline(always)]
326 pub fn captim_in1_event_fall_en(
327 self,
328 ) -> crate::common::RegisterFieldBool<3, 1, 0, CaptimCtrlReg_SPEC, crate::common::RW> {
329 crate::common::RegisterFieldBool::<3,1,0,CaptimCtrlReg_SPEC,crate::common::RW>::from_register(self,0)
330 }
331
332 #[doc = "\'1\' when timer counts down, \'0\' count up"]
333 #[inline(always)]
334 pub fn captim_count_down_en(
335 self,
336 ) -> crate::common::RegisterFieldBool<2, 1, 0, CaptimCtrlReg_SPEC, crate::common::RW> {
337 crate::common::RegisterFieldBool::<2,1,0,CaptimCtrlReg_SPEC,crate::common::RW>::from_register(self,0)
338 }
339
340 #[doc = "\'1\' Capture Timer in OneShot mode, \'0\' Capture/Timer mode"]
341 #[inline(always)]
342 pub fn captim_oneshot_mode_en(
343 self,
344 ) -> crate::common::RegisterFieldBool<1, 1, 0, CaptimCtrlReg_SPEC, crate::common::RW> {
345 crate::common::RegisterFieldBool::<1,1,0,CaptimCtrlReg_SPEC,crate::common::RW>::from_register(self,0)
346 }
347
348 #[doc = "\'1\' Capture Timer enabled, else disabled"]
349 #[inline(always)]
350 pub fn captim_en(
351 self,
352 ) -> crate::common::RegisterFieldBool<0, 1, 0, CaptimCtrlReg_SPEC, crate::common::RW> {
353 crate::common::RegisterFieldBool::<0,1,0,CaptimCtrlReg_SPEC,crate::common::RW>::from_register(self,0)
354 }
355}
356impl ::core::default::Default for CaptimCtrlReg {
357 #[inline(always)]
358 fn default() -> CaptimCtrlReg {
359 <crate::RegValueT<CaptimCtrlReg_SPEC> as RegisterValue<_>>::new(0)
360 }
361}
362
363#[doc(hidden)]
364#[derive(Copy, Clone, Eq, PartialEq)]
365pub struct CaptimGpio1ConfReg_SPEC;
366impl crate::sealed::RegSpec for CaptimGpio1ConfReg_SPEC {
367 type DataType = u16;
368}
369
370#[doc = "Capture Timer gpio1 selection"]
371pub type CaptimGpio1ConfReg = crate::RegValueT<CaptimGpio1ConfReg_SPEC>;
372
373impl CaptimGpio1ConfReg {
374 #[doc = "Select one of the 37 GPIOs as IN1, Valid value 0-37. 1 for P00 .. 37 for P47. When 0 Disable input"]
375 #[inline(always)]
376 pub fn captim_gpio1_conf(
377 self,
378 ) -> crate::common::RegisterField<
379 0,
380 0x3f,
381 1,
382 0,
383 u8,
384 u8,
385 CaptimGpio1ConfReg_SPEC,
386 crate::common::RW,
387 > {
388 crate::common::RegisterField::<
389 0,
390 0x3f,
391 1,
392 0,
393 u8,
394 u8,
395 CaptimGpio1ConfReg_SPEC,
396 crate::common::RW,
397 >::from_register(self, 0)
398 }
399}
400impl ::core::default::Default for CaptimGpio1ConfReg {
401 #[inline(always)]
402 fn default() -> CaptimGpio1ConfReg {
403 <crate::RegValueT<CaptimGpio1ConfReg_SPEC> as RegisterValue<_>>::new(0)
404 }
405}
406
407#[doc(hidden)]
408#[derive(Copy, Clone, Eq, PartialEq)]
409pub struct CaptimGpio2ConfReg_SPEC;
410impl crate::sealed::RegSpec for CaptimGpio2ConfReg_SPEC {
411 type DataType = u16;
412}
413
414#[doc = "Capture Timer gpio2 selection"]
415pub type CaptimGpio2ConfReg = crate::RegValueT<CaptimGpio2ConfReg_SPEC>;
416
417impl CaptimGpio2ConfReg {
418 #[doc = "Select one of the 37 GPIOs as IN2, Valid value 0-37. 1 for P00 .. 37 for P47. When 0 Disable input"]
419 #[inline(always)]
420 pub fn captim_gpio2_conf(
421 self,
422 ) -> crate::common::RegisterField<
423 0,
424 0x3f,
425 1,
426 0,
427 u8,
428 u8,
429 CaptimGpio2ConfReg_SPEC,
430 crate::common::RW,
431 > {
432 crate::common::RegisterField::<
433 0,
434 0x3f,
435 1,
436 0,
437 u8,
438 u8,
439 CaptimGpio2ConfReg_SPEC,
440 crate::common::RW,
441 >::from_register(self, 0)
442 }
443}
444impl ::core::default::Default for CaptimGpio2ConfReg {
445 #[inline(always)]
446 fn default() -> CaptimGpio2ConfReg {
447 <crate::RegValueT<CaptimGpio2ConfReg_SPEC> as RegisterValue<_>>::new(0)
448 }
449}
450
451#[doc(hidden)]
452#[derive(Copy, Clone, Eq, PartialEq)]
453pub struct CaptimPrescalerReg_SPEC;
454impl crate::sealed::RegSpec for CaptimPrescalerReg_SPEC {
455 type DataType = u16;
456}
457
458#[doc = "Capture Timer prescaler value"]
459pub type CaptimPrescalerReg = crate::RegValueT<CaptimPrescalerReg_SPEC>;
460
461impl CaptimPrescalerReg {
462 #[doc = "Define the timer count frequncy. Freq = Freq_clock / (value+1)"]
463 #[inline(always)]
464 pub fn captim_prescaler(
465 self,
466 ) -> crate::common::RegisterField<
467 0,
468 0xffff,
469 1,
470 0,
471 u16,
472 u16,
473 CaptimPrescalerReg_SPEC,
474 crate::common::RW,
475 > {
476 crate::common::RegisterField::<
477 0,
478 0xffff,
479 1,
480 0,
481 u16,
482 u16,
483 CaptimPrescalerReg_SPEC,
484 crate::common::RW,
485 >::from_register(self, 0)
486 }
487}
488impl ::core::default::Default for CaptimPrescalerReg {
489 #[inline(always)]
490 fn default() -> CaptimPrescalerReg {
491 <crate::RegValueT<CaptimPrescalerReg_SPEC> as RegisterValue<_>>::new(0)
492 }
493}
494
495#[doc(hidden)]
496#[derive(Copy, Clone, Eq, PartialEq)]
497pub struct CaptimPrescalerValReg_SPEC;
498impl crate::sealed::RegSpec for CaptimPrescalerValReg_SPEC {
499 type DataType = u16;
500}
501
502#[doc = "Capture Timer interrupt status register"]
503pub type CaptimPrescalerValReg = crate::RegValueT<CaptimPrescalerValReg_SPEC>;
504
505impl CaptimPrescalerValReg {
506 #[doc = "Gives the current prescaler value"]
507 #[inline(always)]
508 pub fn captim_prescaler_val(
509 self,
510 ) -> crate::common::RegisterField<
511 0,
512 0xffff,
513 1,
514 0,
515 u16,
516 u16,
517 CaptimPrescalerValReg_SPEC,
518 crate::common::R,
519 > {
520 crate::common::RegisterField::<
521 0,
522 0xffff,
523 1,
524 0,
525 u16,
526 u16,
527 CaptimPrescalerValReg_SPEC,
528 crate::common::R,
529 >::from_register(self, 0)
530 }
531}
532impl ::core::default::Default for CaptimPrescalerValReg {
533 #[inline(always)]
534 fn default() -> CaptimPrescalerValReg {
535 <crate::RegValueT<CaptimPrescalerValReg_SPEC> as RegisterValue<_>>::new(0)
536 }
537}
538
539#[doc(hidden)]
540#[derive(Copy, Clone, Eq, PartialEq)]
541pub struct CaptimPwmDcReg_SPEC;
542impl crate::sealed::RegSpec for CaptimPwmDcReg_SPEC {
543 type DataType = u16;
544}
545
546#[doc = "Capture Timer pwm dc register"]
547pub type CaptimPwmDcReg = crate::RegValueT<CaptimPwmDcReg_SPEC>;
548
549impl CaptimPwmDcReg {
550 #[doc = "Define the PWM duty cyucle = pwm_dc / ( pwm_freq+1)"]
551 #[inline(always)]
552 pub fn captim_pwm_dc(
553 self,
554 ) -> crate::common::RegisterField<
555 0,
556 0xffff,
557 1,
558 0,
559 u16,
560 u16,
561 CaptimPwmDcReg_SPEC,
562 crate::common::RW,
563 > {
564 crate::common::RegisterField::<
565 0,
566 0xffff,
567 1,
568 0,
569 u16,
570 u16,
571 CaptimPwmDcReg_SPEC,
572 crate::common::RW,
573 >::from_register(self, 0)
574 }
575}
576impl ::core::default::Default for CaptimPwmDcReg {
577 #[inline(always)]
578 fn default() -> CaptimPwmDcReg {
579 <crate::RegValueT<CaptimPwmDcReg_SPEC> as RegisterValue<_>>::new(0)
580 }
581}
582
583#[doc(hidden)]
584#[derive(Copy, Clone, Eq, PartialEq)]
585pub struct CaptimPwmFreqReg_SPEC;
586impl crate::sealed::RegSpec for CaptimPwmFreqReg_SPEC {
587 type DataType = u16;
588}
589
590#[doc = "Capture Timer pwm frequency register. PWM5 period is defined by the reference clock frequency multiplied by this value."]
591pub type CaptimPwmFreqReg = crate::RegValueT<CaptimPwmFreqReg_SPEC>;
592
593impl CaptimPwmFreqReg {
594 #[doc = "Define the PWM frequency. = prescaler frequency / (value+1)"]
595 #[inline(always)]
596 pub fn captim_pwm_freq(
597 self,
598 ) -> crate::common::RegisterField<
599 0,
600 0xffff,
601 1,
602 0,
603 u16,
604 u16,
605 CaptimPwmFreqReg_SPEC,
606 crate::common::RW,
607 > {
608 crate::common::RegisterField::<
609 0,
610 0xffff,
611 1,
612 0,
613 u16,
614 u16,
615 CaptimPwmFreqReg_SPEC,
616 crate::common::RW,
617 >::from_register(self, 0)
618 }
619}
620impl ::core::default::Default for CaptimPwmFreqReg {
621 #[inline(always)]
622 fn default() -> CaptimPwmFreqReg {
623 <crate::RegValueT<CaptimPwmFreqReg_SPEC> as RegisterValue<_>>::new(0)
624 }
625}
626
627#[doc(hidden)]
628#[derive(Copy, Clone, Eq, PartialEq)]
629pub struct CaptimReloadReg_SPEC;
630impl crate::sealed::RegSpec for CaptimReloadReg_SPEC {
631 type DataType = u16;
632}
633
634#[doc = "Capture Timer reload value and Delay in shot mode"]
635pub type CaptimReloadReg = crate::RegValueT<CaptimReloadReg_SPEC>;
636
637impl CaptimReloadReg {
638 #[doc = "Reload or max value in timer mode, Delay phase duration in oneshot mode. Actual delay is the register value plus synchronization time (3 clock cycles)"]
639 #[inline(always)]
640 pub fn captim_reload(
641 self,
642 ) -> crate::common::RegisterField<
643 0,
644 0xffff,
645 1,
646 0,
647 u16,
648 u16,
649 CaptimReloadReg_SPEC,
650 crate::common::RW,
651 > {
652 crate::common::RegisterField::<
653 0,
654 0xffff,
655 1,
656 0,
657 u16,
658 u16,
659 CaptimReloadReg_SPEC,
660 crate::common::RW,
661 >::from_register(self, 0)
662 }
663}
664impl ::core::default::Default for CaptimReloadReg {
665 #[inline(always)]
666 fn default() -> CaptimReloadReg {
667 <crate::RegValueT<CaptimReloadReg_SPEC> as RegisterValue<_>>::new(0)
668 }
669}
670
671#[doc(hidden)]
672#[derive(Copy, Clone, Eq, PartialEq)]
673pub struct CaptimShotwidthReg_SPEC;
674impl crate::sealed::RegSpec for CaptimShotwidthReg_SPEC {
675 type DataType = u16;
676}
677
678#[doc = "Capture Timer Shot duration in shot mode"]
679pub type CaptimShotwidthReg = crate::RegValueT<CaptimShotwidthReg_SPEC>;
680
681impl CaptimShotwidthReg {
682 #[doc = "Shot phase duration in oneshot mode"]
683 #[inline(always)]
684 pub fn captim_shotwidth(
685 self,
686 ) -> crate::common::RegisterField<
687 0,
688 0xffff,
689 1,
690 0,
691 u16,
692 u16,
693 CaptimShotwidthReg_SPEC,
694 crate::common::RW,
695 > {
696 crate::common::RegisterField::<
697 0,
698 0xffff,
699 1,
700 0,
701 u16,
702 u16,
703 CaptimShotwidthReg_SPEC,
704 crate::common::RW,
705 >::from_register(self, 0)
706 }
707}
708impl ::core::default::Default for CaptimShotwidthReg {
709 #[inline(always)]
710 fn default() -> CaptimShotwidthReg {
711 <crate::RegValueT<CaptimShotwidthReg_SPEC> as RegisterValue<_>>::new(0)
712 }
713}
714
715#[doc(hidden)]
716#[derive(Copy, Clone, Eq, PartialEq)]
717pub struct CaptimStatusReg_SPEC;
718impl crate::sealed::RegSpec for CaptimStatusReg_SPEC {
719 type DataType = u16;
720}
721
722#[doc = "Capture Timer status register"]
723pub type CaptimStatusReg = crate::RegValueT<CaptimStatusReg_SPEC>;
724
725impl CaptimStatusReg {
726 #[doc = "0 : Wait for event, 1 : Delay phase, 2 : Start Shot, 3 : Shot phase"]
727 #[inline(always)]
728 pub fn captim_oneshot_phase(
729 self,
730 ) -> crate::common::RegisterField<2, 0x3, 1, 0, u8, u8, CaptimStatusReg_SPEC, crate::common::R>
731 {
732 crate::common::RegisterField::<2,0x3,1,0,u8,u8,CaptimStatusReg_SPEC,crate::common::R>::from_register(self,0)
733 }
734
735 #[doc = "Gives the logic level of the IN1"]
736 #[inline(always)]
737 pub fn captim_in2_state(
738 self,
739 ) -> crate::common::RegisterFieldBool<1, 1, 0, CaptimStatusReg_SPEC, crate::common::R> {
740 crate::common::RegisterFieldBool::<1,1,0,CaptimStatusReg_SPEC,crate::common::R>::from_register(self,0)
741 }
742
743 #[doc = "Gives the logic level of the IN2"]
744 #[inline(always)]
745 pub fn captim_in1_state(
746 self,
747 ) -> crate::common::RegisterFieldBool<0, 1, 0, CaptimStatusReg_SPEC, crate::common::R> {
748 crate::common::RegisterFieldBool::<0,1,0,CaptimStatusReg_SPEC,crate::common::R>::from_register(self,0)
749 }
750}
751impl ::core::default::Default for CaptimStatusReg {
752 #[inline(always)]
753 fn default() -> CaptimStatusReg {
754 <crate::RegValueT<CaptimStatusReg_SPEC> as RegisterValue<_>>::new(0)
755 }
756}
757
758#[doc(hidden)]
759#[derive(Copy, Clone, Eq, PartialEq)]
760pub struct CaptimTimerValReg_SPEC;
761impl crate::sealed::RegSpec for CaptimTimerValReg_SPEC {
762 type DataType = u16;
763}
764
765#[doc = "Capture Timer counter value"]
766pub type CaptimTimerValReg = crate::RegValueT<CaptimTimerValReg_SPEC>;
767
768impl CaptimTimerValReg {
769 #[doc = "Gives the current timer value"]
770 #[inline(always)]
771 pub fn captim_timer_value(
772 self,
773 ) -> crate::common::RegisterField<
774 0,
775 0xffff,
776 1,
777 0,
778 u16,
779 u16,
780 CaptimTimerValReg_SPEC,
781 crate::common::R,
782 > {
783 crate::common::RegisterField::<
784 0,
785 0xffff,
786 1,
787 0,
788 u16,
789 u16,
790 CaptimTimerValReg_SPEC,
791 crate::common::R,
792 >::from_register(self, 0)
793 }
794}
795impl ::core::default::Default for CaptimTimerValReg {
796 #[inline(always)]
797 fn default() -> CaptimTimerValReg {
798 <crate::RegValueT<CaptimTimerValReg_SPEC> as RegisterValue<_>>::new(0)
799 }
800}