esp32p4/isp/
bf_gau0.rs

1#[doc = "Register `BF_GAU0` reader"]
2pub type R = crate::R<BF_GAU0_SPEC>;
3#[doc = "Register `BF_GAU0` writer"]
4pub type W = crate::W<BF_GAU0_SPEC>;
5#[doc = "Field `GAU_TEMPLATE21` reader - this field configures index 21 of gausian template"]
6pub type GAU_TEMPLATE21_R = crate::FieldReader;
7#[doc = "Field `GAU_TEMPLATE21` writer - this field configures index 21 of gausian template"]
8pub type GAU_TEMPLATE21_W<'a, REG> = crate::FieldWriter<'a, REG, 4>;
9#[doc = "Field `GAU_TEMPLATE20` reader - this field configures index 20 of gausian template"]
10pub type GAU_TEMPLATE20_R = crate::FieldReader;
11#[doc = "Field `GAU_TEMPLATE20` writer - this field configures index 20 of gausian template"]
12pub type GAU_TEMPLATE20_W<'a, REG> = crate::FieldWriter<'a, REG, 4>;
13#[doc = "Field `GAU_TEMPLATE12` reader - this field configures index 12 of gausian template"]
14pub type GAU_TEMPLATE12_R = crate::FieldReader;
15#[doc = "Field `GAU_TEMPLATE12` writer - this field configures index 12 of gausian template"]
16pub type GAU_TEMPLATE12_W<'a, REG> = crate::FieldWriter<'a, REG, 4>;
17#[doc = "Field `GAU_TEMPLATE11` reader - this field configures index 11 of gausian template"]
18pub type GAU_TEMPLATE11_R = crate::FieldReader;
19#[doc = "Field `GAU_TEMPLATE11` writer - this field configures index 11 of gausian template"]
20pub type GAU_TEMPLATE11_W<'a, REG> = crate::FieldWriter<'a, REG, 4>;
21#[doc = "Field `GAU_TEMPLATE10` reader - this field configures index 10 of gausian template"]
22pub type GAU_TEMPLATE10_R = crate::FieldReader;
23#[doc = "Field `GAU_TEMPLATE10` writer - this field configures index 10 of gausian template"]
24pub type GAU_TEMPLATE10_W<'a, REG> = crate::FieldWriter<'a, REG, 4>;
25#[doc = "Field `GAU_TEMPLATE02` reader - this field configures index 02 of gausian template"]
26pub type GAU_TEMPLATE02_R = crate::FieldReader;
27#[doc = "Field `GAU_TEMPLATE02` writer - this field configures index 02 of gausian template"]
28pub type GAU_TEMPLATE02_W<'a, REG> = crate::FieldWriter<'a, REG, 4>;
29#[doc = "Field `GAU_TEMPLATE01` reader - this field configures index 01 of gausian template"]
30pub type GAU_TEMPLATE01_R = crate::FieldReader;
31#[doc = "Field `GAU_TEMPLATE01` writer - this field configures index 01 of gausian template"]
32pub type GAU_TEMPLATE01_W<'a, REG> = crate::FieldWriter<'a, REG, 4>;
33#[doc = "Field `GAU_TEMPLATE00` reader - this field configures index 00 of gausian template"]
34pub type GAU_TEMPLATE00_R = crate::FieldReader;
35#[doc = "Field `GAU_TEMPLATE00` writer - this field configures index 00 of gausian template"]
36pub type GAU_TEMPLATE00_W<'a, REG> = crate::FieldWriter<'a, REG, 4>;
37impl R {
38    #[doc = "Bits 0:3 - this field configures index 21 of gausian template"]
39    #[inline(always)]
40    pub fn gau_template21(&self) -> GAU_TEMPLATE21_R {
41        GAU_TEMPLATE21_R::new((self.bits & 0x0f) as u8)
42    }
43    #[doc = "Bits 4:7 - this field configures index 20 of gausian template"]
44    #[inline(always)]
45    pub fn gau_template20(&self) -> GAU_TEMPLATE20_R {
46        GAU_TEMPLATE20_R::new(((self.bits >> 4) & 0x0f) as u8)
47    }
48    #[doc = "Bits 8:11 - this field configures index 12 of gausian template"]
49    #[inline(always)]
50    pub fn gau_template12(&self) -> GAU_TEMPLATE12_R {
51        GAU_TEMPLATE12_R::new(((self.bits >> 8) & 0x0f) as u8)
52    }
53    #[doc = "Bits 12:15 - this field configures index 11 of gausian template"]
54    #[inline(always)]
55    pub fn gau_template11(&self) -> GAU_TEMPLATE11_R {
56        GAU_TEMPLATE11_R::new(((self.bits >> 12) & 0x0f) as u8)
57    }
58    #[doc = "Bits 16:19 - this field configures index 10 of gausian template"]
59    #[inline(always)]
60    pub fn gau_template10(&self) -> GAU_TEMPLATE10_R {
61        GAU_TEMPLATE10_R::new(((self.bits >> 16) & 0x0f) as u8)
62    }
63    #[doc = "Bits 20:23 - this field configures index 02 of gausian template"]
64    #[inline(always)]
65    pub fn gau_template02(&self) -> GAU_TEMPLATE02_R {
66        GAU_TEMPLATE02_R::new(((self.bits >> 20) & 0x0f) as u8)
67    }
68    #[doc = "Bits 24:27 - this field configures index 01 of gausian template"]
69    #[inline(always)]
70    pub fn gau_template01(&self) -> GAU_TEMPLATE01_R {
71        GAU_TEMPLATE01_R::new(((self.bits >> 24) & 0x0f) as u8)
72    }
73    #[doc = "Bits 28:31 - this field configures index 00 of gausian template"]
74    #[inline(always)]
75    pub fn gau_template00(&self) -> GAU_TEMPLATE00_R {
76        GAU_TEMPLATE00_R::new(((self.bits >> 28) & 0x0f) as u8)
77    }
78}
79#[cfg(feature = "impl-register-debug")]
80impl core::fmt::Debug for R {
81    fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result {
82        f.debug_struct("BF_GAU0")
83            .field(
84                "gau_template21",
85                &format_args!("{}", self.gau_template21().bits()),
86            )
87            .field(
88                "gau_template20",
89                &format_args!("{}", self.gau_template20().bits()),
90            )
91            .field(
92                "gau_template12",
93                &format_args!("{}", self.gau_template12().bits()),
94            )
95            .field(
96                "gau_template11",
97                &format_args!("{}", self.gau_template11().bits()),
98            )
99            .field(
100                "gau_template10",
101                &format_args!("{}", self.gau_template10().bits()),
102            )
103            .field(
104                "gau_template02",
105                &format_args!("{}", self.gau_template02().bits()),
106            )
107            .field(
108                "gau_template01",
109                &format_args!("{}", self.gau_template01().bits()),
110            )
111            .field(
112                "gau_template00",
113                &format_args!("{}", self.gau_template00().bits()),
114            )
115            .finish()
116    }
117}
118#[cfg(feature = "impl-register-debug")]
119impl core::fmt::Debug for crate::generic::Reg<BF_GAU0_SPEC> {
120    fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result {
121        core::fmt::Debug::fmt(&self.read(), f)
122    }
123}
124impl W {
125    #[doc = "Bits 0:3 - this field configures index 21 of gausian template"]
126    #[inline(always)]
127    #[must_use]
128    pub fn gau_template21(&mut self) -> GAU_TEMPLATE21_W<BF_GAU0_SPEC> {
129        GAU_TEMPLATE21_W::new(self, 0)
130    }
131    #[doc = "Bits 4:7 - this field configures index 20 of gausian template"]
132    #[inline(always)]
133    #[must_use]
134    pub fn gau_template20(&mut self) -> GAU_TEMPLATE20_W<BF_GAU0_SPEC> {
135        GAU_TEMPLATE20_W::new(self, 4)
136    }
137    #[doc = "Bits 8:11 - this field configures index 12 of gausian template"]
138    #[inline(always)]
139    #[must_use]
140    pub fn gau_template12(&mut self) -> GAU_TEMPLATE12_W<BF_GAU0_SPEC> {
141        GAU_TEMPLATE12_W::new(self, 8)
142    }
143    #[doc = "Bits 12:15 - this field configures index 11 of gausian template"]
144    #[inline(always)]
145    #[must_use]
146    pub fn gau_template11(&mut self) -> GAU_TEMPLATE11_W<BF_GAU0_SPEC> {
147        GAU_TEMPLATE11_W::new(self, 12)
148    }
149    #[doc = "Bits 16:19 - this field configures index 10 of gausian template"]
150    #[inline(always)]
151    #[must_use]
152    pub fn gau_template10(&mut self) -> GAU_TEMPLATE10_W<BF_GAU0_SPEC> {
153        GAU_TEMPLATE10_W::new(self, 16)
154    }
155    #[doc = "Bits 20:23 - this field configures index 02 of gausian template"]
156    #[inline(always)]
157    #[must_use]
158    pub fn gau_template02(&mut self) -> GAU_TEMPLATE02_W<BF_GAU0_SPEC> {
159        GAU_TEMPLATE02_W::new(self, 20)
160    }
161    #[doc = "Bits 24:27 - this field configures index 01 of gausian template"]
162    #[inline(always)]
163    #[must_use]
164    pub fn gau_template01(&mut self) -> GAU_TEMPLATE01_W<BF_GAU0_SPEC> {
165        GAU_TEMPLATE01_W::new(self, 24)
166    }
167    #[doc = "Bits 28:31 - this field configures index 00 of gausian template"]
168    #[inline(always)]
169    #[must_use]
170    pub fn gau_template00(&mut self) -> GAU_TEMPLATE00_W<BF_GAU0_SPEC> {
171        GAU_TEMPLATE00_W::new(self, 28)
172    }
173}
174#[doc = "bf gau template register 0\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`bf_gau0::R`](R).  You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`bf_gau0::W`](W). You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api)."]
175pub struct BF_GAU0_SPEC;
176impl crate::RegisterSpec for BF_GAU0_SPEC {
177    type Ux = u32;
178}
179#[doc = "`read()` method returns [`bf_gau0::R`](R) reader structure"]
180impl crate::Readable for BF_GAU0_SPEC {}
181#[doc = "`write(|w| ..)` method takes [`bf_gau0::W`](W) writer structure"]
182impl crate::Writable for BF_GAU0_SPEC {
183    type Safety = crate::Unsafe;
184    const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
185    const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
186}
187#[doc = "`reset()` method sets BF_GAU0 to value 0xffff_ffff"]
188impl crate::Resettable for BF_GAU0_SPEC {
189    const RESET_VALUE: u32 = 0xffff_ffff;
190}