Skip to main content

ra4m3_pac/
ctsu.rs

1/*
2DISCLAIMER
3This software is supplied by Renesas Electronics Corporation and is only intended for use with Renesas products.
4No other uses are authorized. This software is owned by Renesas Electronics Corporation and is protected under all
5applicable laws, including copyright laws.
6THIS SOFTWARE IS PROVIDED "AS IS" AND RENESAS MAKES NO WARRANTIES REGARDING THIS SOFTWARE, WHETHER EXPRESS, IMPLIED
7OR STATUTORY, INCLUDING BUT NOT LIMITED TO WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
8NON-INFRINGEMENT.  ALL SUCH WARRANTIES ARE EXPRESSLY DISCLAIMED.TO THE MAXIMUM EXTENT PERMITTED NOT PROHIBITED BY
9LAW, NEITHER RENESAS ELECTRONICS CORPORATION NOR ANY OF ITS AFFILIATED COMPANIES SHALL BE LIABLE FOR ANY DIRECT,
10INDIRECT, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES FOR ANY REASON RELATED TO THIS SOFTWARE, EVEN IF RENESAS OR
11ITS AFFILIATES HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
12Renesas reserves the right, without notice, to make changes to this software and to discontinue the availability
13of this software. By using this software, you agree to the additional terms and conditions found by accessing the
14following link:
15http://www.renesas.com/disclaimer
16
17*/
18// Generated from SVD 1.40.00, with svd2pac 0.6.1 on Sun, 15 Mar 2026 07:07:45 +0000
19
20#![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"Capacitive Touch Sensing Unit"]
28unsafe impl ::core::marker::Send for super::Ctsu {}
29unsafe impl ::core::marker::Sync for super::Ctsu {}
30impl super::Ctsu {
31    #[allow(unused)]
32    #[inline(always)]
33    pub(crate) const fn _svd2pac_as_ptr(&self) -> *mut u8 {
34        self.ptr
35    }
36
37    #[doc = "CTSU Control Register 0"]
38    #[inline(always)]
39    pub const fn ctsucr0(
40        &self,
41    ) -> &'static crate::common::Reg<self::Ctsucr0_SPEC, crate::common::RW> {
42        unsafe {
43            crate::common::Reg::<self::Ctsucr0_SPEC, crate::common::RW>::from_ptr(
44                self._svd2pac_as_ptr().add(0usize),
45            )
46        }
47    }
48
49    #[doc = "CTSU Control Register 1"]
50    #[inline(always)]
51    pub const fn ctsucr1(
52        &self,
53    ) -> &'static crate::common::Reg<self::Ctsucr1_SPEC, crate::common::RW> {
54        unsafe {
55            crate::common::Reg::<self::Ctsucr1_SPEC, crate::common::RW>::from_ptr(
56                self._svd2pac_as_ptr().add(1usize),
57            )
58        }
59    }
60
61    #[doc = "CTSU Synchronous Noise Reduction Setting Register"]
62    #[inline(always)]
63    pub const fn ctsusdprs(
64        &self,
65    ) -> &'static crate::common::Reg<self::Ctsusdprs_SPEC, crate::common::RW> {
66        unsafe {
67            crate::common::Reg::<self::Ctsusdprs_SPEC, crate::common::RW>::from_ptr(
68                self._svd2pac_as_ptr().add(2usize),
69            )
70        }
71    }
72
73    #[doc = "CTSU Sensor Stabilization Wait Control Register"]
74    #[inline(always)]
75    pub const fn ctsusst(
76        &self,
77    ) -> &'static crate::common::Reg<self::Ctsusst_SPEC, crate::common::RW> {
78        unsafe {
79            crate::common::Reg::<self::Ctsusst_SPEC, crate::common::RW>::from_ptr(
80                self._svd2pac_as_ptr().add(3usize),
81            )
82        }
83    }
84
85    #[doc = "CTSU Measurement Channel Register 0"]
86    #[inline(always)]
87    pub const fn ctsumch0(
88        &self,
89    ) -> &'static crate::common::Reg<self::Ctsumch0_SPEC, crate::common::RW> {
90        unsafe {
91            crate::common::Reg::<self::Ctsumch0_SPEC, crate::common::RW>::from_ptr(
92                self._svd2pac_as_ptr().add(4usize),
93            )
94        }
95    }
96
97    #[doc = "CTSU Measurement Channel Register 1"]
98    #[inline(always)]
99    pub const fn ctsumch1(
100        &self,
101    ) -> &'static crate::common::Reg<self::Ctsumch1_SPEC, crate::common::R> {
102        unsafe {
103            crate::common::Reg::<self::Ctsumch1_SPEC, crate::common::R>::from_ptr(
104                self._svd2pac_as_ptr().add(5usize),
105            )
106        }
107    }
108
109    #[doc = "CTSU Channel Enable Control Register 0"]
110    #[inline(always)]
111    pub const fn ctsuchac0(
112        &self,
113    ) -> &'static crate::common::Reg<self::Ctsuchac0_SPEC, crate::common::RW> {
114        unsafe {
115            crate::common::Reg::<self::Ctsuchac0_SPEC, crate::common::RW>::from_ptr(
116                self._svd2pac_as_ptr().add(6usize),
117            )
118        }
119    }
120
121    #[doc = "CTSU Channel Enable Control Register 1"]
122    #[inline(always)]
123    pub const fn ctsuchac1(
124        &self,
125    ) -> &'static crate::common::Reg<self::Ctsuchac1_SPEC, crate::common::RW> {
126        unsafe {
127            crate::common::Reg::<self::Ctsuchac1_SPEC, crate::common::RW>::from_ptr(
128                self._svd2pac_as_ptr().add(7usize),
129            )
130        }
131    }
132
133    #[doc = "CTSU Channel Enable Control Register 2"]
134    #[inline(always)]
135    pub const fn ctsuchac2(
136        &self,
137    ) -> &'static crate::common::Reg<self::Ctsuchac2_SPEC, crate::common::RW> {
138        unsafe {
139            crate::common::Reg::<self::Ctsuchac2_SPEC, crate::common::RW>::from_ptr(
140                self._svd2pac_as_ptr().add(8usize),
141            )
142        }
143    }
144
145    #[doc = "CTSU Channel Transmit/Receive Control Register 0"]
146    #[inline(always)]
147    pub const fn ctsuchtrc0(
148        &self,
149    ) -> &'static crate::common::Reg<self::Ctsuchtrc0_SPEC, crate::common::RW> {
150        unsafe {
151            crate::common::Reg::<self::Ctsuchtrc0_SPEC, crate::common::RW>::from_ptr(
152                self._svd2pac_as_ptr().add(11usize),
153            )
154        }
155    }
156
157    #[doc = "CTSU Channel Transmit/Receive Control Register 1"]
158    #[inline(always)]
159    pub const fn ctsuchtrc1(
160        &self,
161    ) -> &'static crate::common::Reg<self::Ctsuchtrc1_SPEC, crate::common::RW> {
162        unsafe {
163            crate::common::Reg::<self::Ctsuchtrc1_SPEC, crate::common::RW>::from_ptr(
164                self._svd2pac_as_ptr().add(12usize),
165            )
166        }
167    }
168
169    #[doc = "CTSU Channel Transmit/Receive Control Register 2"]
170    #[inline(always)]
171    pub const fn ctsuchtrc2(
172        &self,
173    ) -> &'static crate::common::Reg<self::Ctsuchtrc2_SPEC, crate::common::RW> {
174        unsafe {
175            crate::common::Reg::<self::Ctsuchtrc2_SPEC, crate::common::RW>::from_ptr(
176                self._svd2pac_as_ptr().add(13usize),
177            )
178        }
179    }
180
181    #[doc = "CTSU High-Pass Noise Reduction Control Register"]
182    #[inline(always)]
183    pub const fn ctsudclkc(
184        &self,
185    ) -> &'static crate::common::Reg<self::Ctsudclkc_SPEC, crate::common::RW> {
186        unsafe {
187            crate::common::Reg::<self::Ctsudclkc_SPEC, crate::common::RW>::from_ptr(
188                self._svd2pac_as_ptr().add(16usize),
189            )
190        }
191    }
192
193    #[doc = "CTSU Status Register"]
194    #[inline(always)]
195    pub const fn ctsust(
196        &self,
197    ) -> &'static crate::common::Reg<self::Ctsust_SPEC, crate::common::RW> {
198        unsafe {
199            crate::common::Reg::<self::Ctsust_SPEC, crate::common::RW>::from_ptr(
200                self._svd2pac_as_ptr().add(17usize),
201            )
202        }
203    }
204
205    #[doc = "CTSU High-Pass Noise Reduction Spectrum Diffusion Control Register"]
206    #[inline(always)]
207    pub const fn ctsussc(
208        &self,
209    ) -> &'static crate::common::Reg<self::Ctsussc_SPEC, crate::common::RW> {
210        unsafe {
211            crate::common::Reg::<self::Ctsussc_SPEC, crate::common::RW>::from_ptr(
212                self._svd2pac_as_ptr().add(18usize),
213            )
214        }
215    }
216
217    #[doc = "CTSU Sensor Offset Register 0"]
218    #[inline(always)]
219    pub const fn ctsuso0(
220        &self,
221    ) -> &'static crate::common::Reg<self::Ctsuso0_SPEC, crate::common::RW> {
222        unsafe {
223            crate::common::Reg::<self::Ctsuso0_SPEC, crate::common::RW>::from_ptr(
224                self._svd2pac_as_ptr().add(20usize),
225            )
226        }
227    }
228
229    #[doc = "CTSU Sensor Offset Register 1"]
230    #[inline(always)]
231    pub const fn ctsuso1(
232        &self,
233    ) -> &'static crate::common::Reg<self::Ctsuso1_SPEC, crate::common::RW> {
234        unsafe {
235            crate::common::Reg::<self::Ctsuso1_SPEC, crate::common::RW>::from_ptr(
236                self._svd2pac_as_ptr().add(22usize),
237            )
238        }
239    }
240
241    #[doc = "CTSU Sensor Counter"]
242    #[inline(always)]
243    pub const fn ctsusc(&self) -> &'static crate::common::Reg<self::Ctsusc_SPEC, crate::common::R> {
244        unsafe {
245            crate::common::Reg::<self::Ctsusc_SPEC, crate::common::R>::from_ptr(
246                self._svd2pac_as_ptr().add(24usize),
247            )
248        }
249    }
250
251    #[doc = "CTSU Reference Counter"]
252    #[inline(always)]
253    pub const fn ctsurc(&self) -> &'static crate::common::Reg<self::Ctsurc_SPEC, crate::common::R> {
254        unsafe {
255            crate::common::Reg::<self::Ctsurc_SPEC, crate::common::R>::from_ptr(
256                self._svd2pac_as_ptr().add(26usize),
257            )
258        }
259    }
260
261    #[doc = "CTSU Error Status Register"]
262    #[inline(always)]
263    pub const fn ctsuerrs(
264        &self,
265    ) -> &'static crate::common::Reg<self::Ctsuerrs_SPEC, crate::common::RW> {
266        unsafe {
267            crate::common::Reg::<self::Ctsuerrs_SPEC, crate::common::RW>::from_ptr(
268                self._svd2pac_as_ptr().add(28usize),
269            )
270        }
271    }
272
273    #[doc = "CTSU Reference Current Calibration Register"]
274    #[inline(always)]
275    pub const fn ctsutrmr(
276        &self,
277    ) -> &'static crate::common::Reg<self::Ctsutrmr_SPEC, crate::common::RW> {
278        unsafe {
279            crate::common::Reg::<self::Ctsutrmr_SPEC, crate::common::RW>::from_ptr(
280                self._svd2pac_as_ptr().add(32usize),
281            )
282        }
283    }
284}
285#[doc(hidden)]
286#[derive(Copy, Clone, Eq, PartialEq)]
287pub struct Ctsucr0_SPEC;
288impl crate::sealed::RegSpec for Ctsucr0_SPEC {
289    type DataType = u8;
290}
291
292#[doc = "CTSU Control Register 0"]
293pub type Ctsucr0 = crate::RegValueT<Ctsucr0_SPEC>;
294
295impl NoBitfieldReg<Ctsucr0_SPEC> for Ctsucr0 {}
296impl ::core::default::Default for Ctsucr0 {
297    #[inline(always)]
298    fn default() -> Ctsucr0 {
299        <crate::RegValueT<Ctsucr0_SPEC> as RegisterValue<_>>::new(0)
300    }
301}
302
303#[doc(hidden)]
304#[derive(Copy, Clone, Eq, PartialEq)]
305pub struct Ctsucr1_SPEC;
306impl crate::sealed::RegSpec for Ctsucr1_SPEC {
307    type DataType = u8;
308}
309
310#[doc = "CTSU Control Register 1"]
311pub type Ctsucr1 = crate::RegValueT<Ctsucr1_SPEC>;
312
313impl NoBitfieldReg<Ctsucr1_SPEC> for Ctsucr1 {}
314impl ::core::default::Default for Ctsucr1 {
315    #[inline(always)]
316    fn default() -> Ctsucr1 {
317        <crate::RegValueT<Ctsucr1_SPEC> as RegisterValue<_>>::new(0)
318    }
319}
320
321#[doc(hidden)]
322#[derive(Copy, Clone, Eq, PartialEq)]
323pub struct Ctsusdprs_SPEC;
324impl crate::sealed::RegSpec for Ctsusdprs_SPEC {
325    type DataType = u8;
326}
327
328#[doc = "CTSU Synchronous Noise Reduction Setting Register"]
329pub type Ctsusdprs = crate::RegValueT<Ctsusdprs_SPEC>;
330
331impl NoBitfieldReg<Ctsusdprs_SPEC> for Ctsusdprs {}
332impl ::core::default::Default for Ctsusdprs {
333    #[inline(always)]
334    fn default() -> Ctsusdprs {
335        <crate::RegValueT<Ctsusdprs_SPEC> as RegisterValue<_>>::new(0)
336    }
337}
338
339#[doc(hidden)]
340#[derive(Copy, Clone, Eq, PartialEq)]
341pub struct Ctsusst_SPEC;
342impl crate::sealed::RegSpec for Ctsusst_SPEC {
343    type DataType = u8;
344}
345
346#[doc = "CTSU Sensor Stabilization Wait Control Register"]
347pub type Ctsusst = crate::RegValueT<Ctsusst_SPEC>;
348
349impl NoBitfieldReg<Ctsusst_SPEC> for Ctsusst {}
350impl ::core::default::Default for Ctsusst {
351    #[inline(always)]
352    fn default() -> Ctsusst {
353        <crate::RegValueT<Ctsusst_SPEC> as RegisterValue<_>>::new(0)
354    }
355}
356
357#[doc(hidden)]
358#[derive(Copy, Clone, Eq, PartialEq)]
359pub struct Ctsumch0_SPEC;
360impl crate::sealed::RegSpec for Ctsumch0_SPEC {
361    type DataType = u8;
362}
363
364#[doc = "CTSU Measurement Channel Register 0"]
365pub type Ctsumch0 = crate::RegValueT<Ctsumch0_SPEC>;
366
367impl NoBitfieldReg<Ctsumch0_SPEC> for Ctsumch0 {}
368impl ::core::default::Default for Ctsumch0 {
369    #[inline(always)]
370    fn default() -> Ctsumch0 {
371        <crate::RegValueT<Ctsumch0_SPEC> as RegisterValue<_>>::new(31)
372    }
373}
374
375#[doc(hidden)]
376#[derive(Copy, Clone, Eq, PartialEq)]
377pub struct Ctsumch1_SPEC;
378impl crate::sealed::RegSpec for Ctsumch1_SPEC {
379    type DataType = u8;
380}
381
382#[doc = "CTSU Measurement Channel Register 1"]
383pub type Ctsumch1 = crate::RegValueT<Ctsumch1_SPEC>;
384
385impl NoBitfieldReg<Ctsumch1_SPEC> for Ctsumch1 {}
386impl ::core::default::Default for Ctsumch1 {
387    #[inline(always)]
388    fn default() -> Ctsumch1 {
389        <crate::RegValueT<Ctsumch1_SPEC> as RegisterValue<_>>::new(31)
390    }
391}
392
393#[doc(hidden)]
394#[derive(Copy, Clone, Eq, PartialEq)]
395pub struct Ctsuchac0_SPEC;
396impl crate::sealed::RegSpec for Ctsuchac0_SPEC {
397    type DataType = u8;
398}
399
400#[doc = "CTSU Channel Enable Control Register 0"]
401pub type Ctsuchac0 = crate::RegValueT<Ctsuchac0_SPEC>;
402
403impl NoBitfieldReg<Ctsuchac0_SPEC> for Ctsuchac0 {}
404impl ::core::default::Default for Ctsuchac0 {
405    #[inline(always)]
406    fn default() -> Ctsuchac0 {
407        <crate::RegValueT<Ctsuchac0_SPEC> as RegisterValue<_>>::new(0)
408    }
409}
410
411#[doc(hidden)]
412#[derive(Copy, Clone, Eq, PartialEq)]
413pub struct Ctsuchac1_SPEC;
414impl crate::sealed::RegSpec for Ctsuchac1_SPEC {
415    type DataType = u8;
416}
417
418#[doc = "CTSU Channel Enable Control Register 1"]
419pub type Ctsuchac1 = crate::RegValueT<Ctsuchac1_SPEC>;
420
421impl NoBitfieldReg<Ctsuchac1_SPEC> for Ctsuchac1 {}
422impl ::core::default::Default for Ctsuchac1 {
423    #[inline(always)]
424    fn default() -> Ctsuchac1 {
425        <crate::RegValueT<Ctsuchac1_SPEC> as RegisterValue<_>>::new(0)
426    }
427}
428
429#[doc(hidden)]
430#[derive(Copy, Clone, Eq, PartialEq)]
431pub struct Ctsuchac2_SPEC;
432impl crate::sealed::RegSpec for Ctsuchac2_SPEC {
433    type DataType = u8;
434}
435
436#[doc = "CTSU Channel Enable Control Register 2"]
437pub type Ctsuchac2 = crate::RegValueT<Ctsuchac2_SPEC>;
438
439impl NoBitfieldReg<Ctsuchac2_SPEC> for Ctsuchac2 {}
440impl ::core::default::Default for Ctsuchac2 {
441    #[inline(always)]
442    fn default() -> Ctsuchac2 {
443        <crate::RegValueT<Ctsuchac2_SPEC> as RegisterValue<_>>::new(0)
444    }
445}
446
447#[doc(hidden)]
448#[derive(Copy, Clone, Eq, PartialEq)]
449pub struct Ctsuchtrc0_SPEC;
450impl crate::sealed::RegSpec for Ctsuchtrc0_SPEC {
451    type DataType = u8;
452}
453
454#[doc = "CTSU Channel Transmit/Receive Control Register 0"]
455pub type Ctsuchtrc0 = crate::RegValueT<Ctsuchtrc0_SPEC>;
456
457impl NoBitfieldReg<Ctsuchtrc0_SPEC> for Ctsuchtrc0 {}
458impl ::core::default::Default for Ctsuchtrc0 {
459    #[inline(always)]
460    fn default() -> Ctsuchtrc0 {
461        <crate::RegValueT<Ctsuchtrc0_SPEC> as RegisterValue<_>>::new(0)
462    }
463}
464
465#[doc(hidden)]
466#[derive(Copy, Clone, Eq, PartialEq)]
467pub struct Ctsuchtrc1_SPEC;
468impl crate::sealed::RegSpec for Ctsuchtrc1_SPEC {
469    type DataType = u8;
470}
471
472#[doc = "CTSU Channel Transmit/Receive Control Register 1"]
473pub type Ctsuchtrc1 = crate::RegValueT<Ctsuchtrc1_SPEC>;
474
475impl NoBitfieldReg<Ctsuchtrc1_SPEC> for Ctsuchtrc1 {}
476impl ::core::default::Default for Ctsuchtrc1 {
477    #[inline(always)]
478    fn default() -> Ctsuchtrc1 {
479        <crate::RegValueT<Ctsuchtrc1_SPEC> as RegisterValue<_>>::new(0)
480    }
481}
482
483#[doc(hidden)]
484#[derive(Copy, Clone, Eq, PartialEq)]
485pub struct Ctsuchtrc2_SPEC;
486impl crate::sealed::RegSpec for Ctsuchtrc2_SPEC {
487    type DataType = u8;
488}
489
490#[doc = "CTSU Channel Transmit/Receive Control Register 2"]
491pub type Ctsuchtrc2 = crate::RegValueT<Ctsuchtrc2_SPEC>;
492
493impl NoBitfieldReg<Ctsuchtrc2_SPEC> for Ctsuchtrc2 {}
494impl ::core::default::Default for Ctsuchtrc2 {
495    #[inline(always)]
496    fn default() -> Ctsuchtrc2 {
497        <crate::RegValueT<Ctsuchtrc2_SPEC> as RegisterValue<_>>::new(0)
498    }
499}
500
501#[doc(hidden)]
502#[derive(Copy, Clone, Eq, PartialEq)]
503pub struct Ctsudclkc_SPEC;
504impl crate::sealed::RegSpec for Ctsudclkc_SPEC {
505    type DataType = u8;
506}
507
508#[doc = "CTSU High-Pass Noise Reduction Control Register"]
509pub type Ctsudclkc = crate::RegValueT<Ctsudclkc_SPEC>;
510
511impl NoBitfieldReg<Ctsudclkc_SPEC> for Ctsudclkc {}
512impl ::core::default::Default for Ctsudclkc {
513    #[inline(always)]
514    fn default() -> Ctsudclkc {
515        <crate::RegValueT<Ctsudclkc_SPEC> as RegisterValue<_>>::new(0)
516    }
517}
518
519#[doc(hidden)]
520#[derive(Copy, Clone, Eq, PartialEq)]
521pub struct Ctsust_SPEC;
522impl crate::sealed::RegSpec for Ctsust_SPEC {
523    type DataType = u8;
524}
525
526#[doc = "CTSU Status Register"]
527pub type Ctsust = crate::RegValueT<Ctsust_SPEC>;
528
529impl NoBitfieldReg<Ctsust_SPEC> for Ctsust {}
530impl ::core::default::Default for Ctsust {
531    #[inline(always)]
532    fn default() -> Ctsust {
533        <crate::RegValueT<Ctsust_SPEC> as RegisterValue<_>>::new(0)
534    }
535}
536
537#[doc(hidden)]
538#[derive(Copy, Clone, Eq, PartialEq)]
539pub struct Ctsussc_SPEC;
540impl crate::sealed::RegSpec for Ctsussc_SPEC {
541    type DataType = u16;
542}
543
544#[doc = "CTSU High-Pass Noise Reduction Spectrum Diffusion Control Register"]
545pub type Ctsussc = crate::RegValueT<Ctsussc_SPEC>;
546
547impl Ctsussc {
548    #[doc = "CTSU Spectrum Diffusion Frequency Division Setting"]
549    #[inline(always)]
550    pub fn ctsussdiv(
551        self,
552    ) -> crate::common::RegisterField<8, 0xf, 1, 0, u8, u8, Ctsussc_SPEC, crate::common::RW> {
553        crate::common::RegisterField::<8,0xf,1,0,u8,u8,Ctsussc_SPEC,crate::common::RW>::from_register(self,0)
554    }
555}
556impl ::core::default::Default for Ctsussc {
557    #[inline(always)]
558    fn default() -> Ctsussc {
559        <crate::RegValueT<Ctsussc_SPEC> as RegisterValue<_>>::new(0)
560    }
561}
562
563#[doc(hidden)]
564#[derive(Copy, Clone, Eq, PartialEq)]
565pub struct Ctsuso0_SPEC;
566impl crate::sealed::RegSpec for Ctsuso0_SPEC {
567    type DataType = u16;
568}
569
570#[doc = "CTSU Sensor Offset Register 0"]
571pub type Ctsuso0 = crate::RegValueT<Ctsuso0_SPEC>;
572
573impl NoBitfieldReg<Ctsuso0_SPEC> for Ctsuso0 {}
574impl ::core::default::Default for Ctsuso0 {
575    #[inline(always)]
576    fn default() -> Ctsuso0 {
577        <crate::RegValueT<Ctsuso0_SPEC> as RegisterValue<_>>::new(0)
578    }
579}
580
581#[doc(hidden)]
582#[derive(Copy, Clone, Eq, PartialEq)]
583pub struct Ctsuso1_SPEC;
584impl crate::sealed::RegSpec for Ctsuso1_SPEC {
585    type DataType = u16;
586}
587
588#[doc = "CTSU Sensor Offset Register 1"]
589pub type Ctsuso1 = crate::RegValueT<Ctsuso1_SPEC>;
590
591impl NoBitfieldReg<Ctsuso1_SPEC> for Ctsuso1 {}
592impl ::core::default::Default for Ctsuso1 {
593    #[inline(always)]
594    fn default() -> Ctsuso1 {
595        <crate::RegValueT<Ctsuso1_SPEC> as RegisterValue<_>>::new(0)
596    }
597}
598
599#[doc(hidden)]
600#[derive(Copy, Clone, Eq, PartialEq)]
601pub struct Ctsusc_SPEC;
602impl crate::sealed::RegSpec for Ctsusc_SPEC {
603    type DataType = u16;
604}
605
606#[doc = "CTSU Sensor Counter"]
607pub type Ctsusc = crate::RegValueT<Ctsusc_SPEC>;
608
609impl NoBitfieldReg<Ctsusc_SPEC> for Ctsusc {}
610impl ::core::default::Default for Ctsusc {
611    #[inline(always)]
612    fn default() -> Ctsusc {
613        <crate::RegValueT<Ctsusc_SPEC> as RegisterValue<_>>::new(0)
614    }
615}
616
617#[doc(hidden)]
618#[derive(Copy, Clone, Eq, PartialEq)]
619pub struct Ctsurc_SPEC;
620impl crate::sealed::RegSpec for Ctsurc_SPEC {
621    type DataType = u16;
622}
623
624#[doc = "CTSU Reference Counter"]
625pub type Ctsurc = crate::RegValueT<Ctsurc_SPEC>;
626
627impl Ctsurc {
628    #[doc = "CTSU Reference Counter"]
629    #[inline(always)]
630    pub fn ctsurc(
631        self,
632    ) -> crate::common::RegisterField<0, 0xffff, 1, 0, u16, u16, Ctsurc_SPEC, crate::common::R>
633    {
634        crate::common::RegisterField::<0,0xffff,1,0,u16,u16,Ctsurc_SPEC,crate::common::R>::from_register(self,0)
635    }
636}
637impl ::core::default::Default for Ctsurc {
638    #[inline(always)]
639    fn default() -> Ctsurc {
640        <crate::RegValueT<Ctsurc_SPEC> as RegisterValue<_>>::new(0)
641    }
642}
643
644#[doc(hidden)]
645#[derive(Copy, Clone, Eq, PartialEq)]
646pub struct Ctsuerrs_SPEC;
647impl crate::sealed::RegSpec for Ctsuerrs_SPEC {
648    type DataType = u16;
649}
650
651#[doc = "CTSU Error Status Register"]
652pub type Ctsuerrs = crate::RegValueT<Ctsuerrs_SPEC>;
653
654impl Ctsuerrs {
655    #[doc = "Calibration Mode"]
656    #[inline(always)]
657    pub fn ctsuspmd(
658        self,
659    ) -> crate::common::RegisterField<
660        0,
661        0x3,
662        1,
663        0,
664        ctsuerrs::Ctsuspmd,
665        ctsuerrs::Ctsuspmd,
666        Ctsuerrs_SPEC,
667        crate::common::RW,
668    > {
669        crate::common::RegisterField::<
670            0,
671            0x3,
672            1,
673            0,
674            ctsuerrs::Ctsuspmd,
675            ctsuerrs::Ctsuspmd,
676            Ctsuerrs_SPEC,
677            crate::common::RW,
678        >::from_register(self, 0)
679    }
680
681    #[doc = "TS Pin Fixed Output"]
682    #[inline(always)]
683    pub fn ctsutsod(
684        self,
685    ) -> crate::common::RegisterField<
686        2,
687        0x1,
688        1,
689        0,
690        ctsuerrs::Ctsutsod,
691        ctsuerrs::Ctsutsod,
692        Ctsuerrs_SPEC,
693        crate::common::RW,
694    > {
695        crate::common::RegisterField::<
696            2,
697            0x1,
698            1,
699            0,
700            ctsuerrs::Ctsutsod,
701            ctsuerrs::Ctsutsod,
702            Ctsuerrs_SPEC,
703            crate::common::RW,
704        >::from_register(self, 0)
705    }
706
707    #[doc = "Calibration Setting 1"]
708    #[inline(always)]
709    pub fn ctsudrv(
710        self,
711    ) -> crate::common::RegisterField<
712        3,
713        0x1,
714        1,
715        0,
716        ctsuerrs::Ctsudrv,
717        ctsuerrs::Ctsudrv,
718        Ctsuerrs_SPEC,
719        crate::common::RW,
720    > {
721        crate::common::RegisterField::<
722            3,
723            0x1,
724            1,
725            0,
726            ctsuerrs::Ctsudrv,
727            ctsuerrs::Ctsudrv,
728            Ctsuerrs_SPEC,
729            crate::common::RW,
730        >::from_register(self, 0)
731    }
732
733    #[doc = "Calibration Setting 3"]
734    #[inline(always)]
735    pub fn ctsuclksel1(
736        self,
737    ) -> crate::common::RegisterField<
738        6,
739        0x1,
740        1,
741        0,
742        ctsuerrs::Ctsuclksel1,
743        ctsuerrs::Ctsuclksel1,
744        Ctsuerrs_SPEC,
745        crate::common::RW,
746    > {
747        crate::common::RegisterField::<
748            6,
749            0x1,
750            1,
751            0,
752            ctsuerrs::Ctsuclksel1,
753            ctsuerrs::Ctsuclksel1,
754            Ctsuerrs_SPEC,
755            crate::common::RW,
756        >::from_register(self, 0)
757    }
758
759    #[doc = "Calibration Setting 2"]
760    #[inline(always)]
761    pub fn ctsutsoc(
762        self,
763    ) -> crate::common::RegisterField<
764        7,
765        0x1,
766        1,
767        0,
768        ctsuerrs::Ctsutsoc,
769        ctsuerrs::Ctsutsoc,
770        Ctsuerrs_SPEC,
771        crate::common::RW,
772    > {
773        crate::common::RegisterField::<
774            7,
775            0x1,
776            1,
777            0,
778            ctsuerrs::Ctsutsoc,
779            ctsuerrs::Ctsutsoc,
780            Ctsuerrs_SPEC,
781            crate::common::RW,
782        >::from_register(self, 0)
783    }
784
785    #[doc = "TSCAP Voltage Error Monitor"]
786    #[inline(always)]
787    pub fn ctsuicomp(
788        self,
789    ) -> crate::common::RegisterField<
790        15,
791        0x1,
792        1,
793        0,
794        ctsuerrs::Ctsuicomp,
795        ctsuerrs::Ctsuicomp,
796        Ctsuerrs_SPEC,
797        crate::common::R,
798    > {
799        crate::common::RegisterField::<
800            15,
801            0x1,
802            1,
803            0,
804            ctsuerrs::Ctsuicomp,
805            ctsuerrs::Ctsuicomp,
806            Ctsuerrs_SPEC,
807            crate::common::R,
808        >::from_register(self, 0)
809    }
810}
811impl ::core::default::Default for Ctsuerrs {
812    #[inline(always)]
813    fn default() -> Ctsuerrs {
814        <crate::RegValueT<Ctsuerrs_SPEC> as RegisterValue<_>>::new(0)
815    }
816}
817pub mod ctsuerrs {
818
819    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
820    pub struct Ctsuspmd_SPEC;
821    pub type Ctsuspmd = crate::EnumBitfieldStruct<u8, Ctsuspmd_SPEC>;
822    impl Ctsuspmd {
823        #[doc = "Capacitance measurement mode"]
824        pub const _00: Self = Self::new(0);
825
826        #[doc = "Calibration mode"]
827        pub const _10: Self = Self::new(2);
828    }
829    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
830    pub struct Ctsutsod_SPEC;
831    pub type Ctsutsod = crate::EnumBitfieldStruct<u8, Ctsutsod_SPEC>;
832    impl Ctsutsod {
833        #[doc = "Capacitance measurement mode"]
834        pub const _0: Self = Self::new(0);
835
836        #[doc = "TS pins are forced to be high or low"]
837        pub const _1: Self = Self::new(1);
838    }
839    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
840    pub struct Ctsudrv_SPEC;
841    pub type Ctsudrv = crate::EnumBitfieldStruct<u8, Ctsudrv_SPEC>;
842    impl Ctsudrv {
843        #[doc = "Capacitance measurement mode"]
844        pub const _0: Self = Self::new(0);
845
846        #[doc = "Calibration setting 1"]
847        pub const _1: Self = Self::new(1);
848    }
849    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
850    pub struct Ctsuclksel1_SPEC;
851    pub type Ctsuclksel1 = crate::EnumBitfieldStruct<u8, Ctsuclksel1_SPEC>;
852    impl Ctsuclksel1 {
853        #[doc = "Capacitance measurement mode"]
854        pub const _0: Self = Self::new(0);
855
856        #[doc = "Calibration setting 3"]
857        pub const _1: Self = Self::new(1);
858    }
859    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
860    pub struct Ctsutsoc_SPEC;
861    pub type Ctsutsoc = crate::EnumBitfieldStruct<u8, Ctsutsoc_SPEC>;
862    impl Ctsutsoc {
863        #[doc = "Capacitance measurement mode"]
864        pub const _0: Self = Self::new(0);
865
866        #[doc = "Calibration setting 2"]
867        pub const _1: Self = Self::new(1);
868    }
869    #[derive(Clone, Copy, Eq, PartialEq, Ord, PartialOrd)]
870    pub struct Ctsuicomp_SPEC;
871    pub type Ctsuicomp = crate::EnumBitfieldStruct<u8, Ctsuicomp_SPEC>;
872    impl Ctsuicomp {
873        #[doc = "Normal TSCAP voltage"]
874        pub const _0: Self = Self::new(0);
875
876        #[doc = "Abnormal TSCAP voltage"]
877        pub const _1: Self = Self::new(1);
878    }
879}
880#[doc(hidden)]
881#[derive(Copy, Clone, Eq, PartialEq)]
882pub struct Ctsutrmr_SPEC;
883impl crate::sealed::RegSpec for Ctsutrmr_SPEC {
884    type DataType = u8;
885}
886
887#[doc = "CTSU Reference Current Calibration Register"]
888pub type Ctsutrmr = crate::RegValueT<Ctsutrmr_SPEC>;
889
890impl NoBitfieldReg<Ctsutrmr_SPEC> for Ctsutrmr {}
891impl ::core::default::Default for Ctsutrmr {
892    #[inline(always)]
893    fn default() -> Ctsutrmr {
894        <crate::RegValueT<Ctsutrmr_SPEC> as RegisterValue<_>>::new(0)
895    }
896}