1#[doc = r"Register block"]
2#[repr(C)]
3pub struct RegisterBlock {
4 dmic_en: DMIC_EN,
5 dmic_sr: DMIC_SR,
6 dmic_ctr: DMIC_CTR,
7 _reserved3: [u8; 0x04],
8 dmic_data: DMIC_DATA,
9 dmic_intc: DMIC_INTC,
10 dmic_ints: DMIC_INTS,
11 dmic_rxfifo_ctr: DMIC_RXFIFO_CTR,
12 dmic_rxfifo_sta: DMIC_RXFIFO_STA,
13 dmic_ch_num: DMIC_CH_NUM,
14 dmic_ch_map: DMIC_CH_MAP,
15 dmic_cnt: DMIC_CNT,
16 data0_data1_vol_ctr: DATA0_DATA1_VOL_CTR,
17 data2_data3_vol_ctr: DATA2_DATA3_VOL_CTR,
18 hpf_en_ctr: HPF_EN_CTR,
19 hpf_coef: HPF_COEF,
20 hpf_gain: HPF_GAIN,
21}
22impl RegisterBlock {
23 #[doc = "0x00 - DMIC Enable Control Register"]
24 #[inline(always)]
25 pub const fn dmic_en(&self) -> &DMIC_EN {
26 &self.dmic_en
27 }
28 #[doc = "0x04 - DMIC Sample Rate Register"]
29 #[inline(always)]
30 pub const fn dmic_sr(&self) -> &DMIC_SR {
31 &self.dmic_sr
32 }
33 #[doc = "0x08 - DMIC Control Register"]
34 #[inline(always)]
35 pub const fn dmic_ctr(&self) -> &DMIC_CTR {
36 &self.dmic_ctr
37 }
38 #[doc = "0x10 - DMIC Data Register"]
39 #[inline(always)]
40 pub const fn dmic_data(&self) -> &DMIC_DATA {
41 &self.dmic_data
42 }
43 #[doc = "0x14 - DMIC Interrupt Control Register"]
44 #[inline(always)]
45 pub const fn dmic_intc(&self) -> &DMIC_INTC {
46 &self.dmic_intc
47 }
48 #[doc = "0x18 - DMIC Interrupt Status Register"]
49 #[inline(always)]
50 pub const fn dmic_ints(&self) -> &DMIC_INTS {
51 &self.dmic_ints
52 }
53 #[doc = "0x1c - DMIC RXFIFO Control Register"]
54 #[inline(always)]
55 pub const fn dmic_rxfifo_ctr(&self) -> &DMIC_RXFIFO_CTR {
56 &self.dmic_rxfifo_ctr
57 }
58 #[doc = "0x20 - DMIC RXFIFO Status Register"]
59 #[inline(always)]
60 pub const fn dmic_rxfifo_sta(&self) -> &DMIC_RXFIFO_STA {
61 &self.dmic_rxfifo_sta
62 }
63 #[doc = "0x24 - DMIC Channel Numbers Register"]
64 #[inline(always)]
65 pub const fn dmic_ch_num(&self) -> &DMIC_CH_NUM {
66 &self.dmic_ch_num
67 }
68 #[doc = "0x28 - DMIC Channel Mapping Register"]
69 #[inline(always)]
70 pub const fn dmic_ch_map(&self) -> &DMIC_CH_MAP {
71 &self.dmic_ch_map
72 }
73 #[doc = "0x2c - DMIC Counter Register"]
74 #[inline(always)]
75 pub const fn dmic_cnt(&self) -> &DMIC_CNT {
76 &self.dmic_cnt
77 }
78 #[doc = "0x30 - Data0 and Data1 Volume Control Register"]
79 #[inline(always)]
80 pub const fn data0_data1_vol_ctr(&self) -> &DATA0_DATA1_VOL_CTR {
81 &self.data0_data1_vol_ctr
82 }
83 #[doc = "0x34 - Data2 And Data3 Volume Control Register"]
84 #[inline(always)]
85 pub const fn data2_data3_vol_ctr(&self) -> &DATA2_DATA3_VOL_CTR {
86 &self.data2_data3_vol_ctr
87 }
88 #[doc = "0x38 - High Pass Filter Enable Control Register"]
89 #[inline(always)]
90 pub const fn hpf_en_ctr(&self) -> &HPF_EN_CTR {
91 &self.hpf_en_ctr
92 }
93 #[doc = "0x3c - High Pass Filter Coefficient Register"]
94 #[inline(always)]
95 pub const fn hpf_coef(&self) -> &HPF_COEF {
96 &self.hpf_coef
97 }
98 #[doc = "0x40 - High Pass Filter Gain Register"]
99 #[inline(always)]
100 pub const fn hpf_gain(&self) -> &HPF_GAIN {
101 &self.hpf_gain
102 }
103}
104#[doc = "dmic_en (rw) register accessor: DMIC Enable Control Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`dmic_en::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 [`dmic_en::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@dmic_en`] module"]
105pub type DMIC_EN = crate::Reg<dmic_en::DMIC_EN_SPEC>;
106#[doc = "DMIC Enable Control Register"]
107pub mod dmic_en;
108#[doc = "dmic_sr (rw) register accessor: DMIC Sample Rate Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`dmic_sr::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 [`dmic_sr::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@dmic_sr`] module"]
109pub type DMIC_SR = crate::Reg<dmic_sr::DMIC_SR_SPEC>;
110#[doc = "DMIC Sample Rate Register"]
111pub mod dmic_sr;
112#[doc = "dmic_ctr (rw) register accessor: DMIC Control Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`dmic_ctr::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 [`dmic_ctr::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@dmic_ctr`] module"]
113pub type DMIC_CTR = crate::Reg<dmic_ctr::DMIC_CTR_SPEC>;
114#[doc = "DMIC Control Register"]
115pub mod dmic_ctr;
116#[doc = "dmic_data (rw) register accessor: DMIC Data Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`dmic_data::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 [`dmic_data::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@dmic_data`] module"]
117pub type DMIC_DATA = crate::Reg<dmic_data::DMIC_DATA_SPEC>;
118#[doc = "DMIC Data Register"]
119pub mod dmic_data;
120#[doc = "dmic_intc (rw) register accessor: DMIC Interrupt Control Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`dmic_intc::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 [`dmic_intc::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@dmic_intc`] module"]
121pub type DMIC_INTC = crate::Reg<dmic_intc::DMIC_INTC_SPEC>;
122#[doc = "DMIC Interrupt Control Register"]
123pub mod dmic_intc;
124#[doc = "dmic_ints (rw) register accessor: DMIC Interrupt Status Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`dmic_ints::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 [`dmic_ints::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@dmic_ints`] module"]
125pub type DMIC_INTS = crate::Reg<dmic_ints::DMIC_INTS_SPEC>;
126#[doc = "DMIC Interrupt Status Register"]
127pub mod dmic_ints;
128#[doc = "dmic_rxfifo_ctr (rw) register accessor: DMIC RXFIFO Control Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`dmic_rxfifo_ctr::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 [`dmic_rxfifo_ctr::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@dmic_rxfifo_ctr`] module"]
129pub type DMIC_RXFIFO_CTR = crate::Reg<dmic_rxfifo_ctr::DMIC_RXFIFO_CTR_SPEC>;
130#[doc = "DMIC RXFIFO Control Register"]
131pub mod dmic_rxfifo_ctr;
132#[doc = "dmic_rxfifo_sta (rw) register accessor: DMIC RXFIFO Status Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`dmic_rxfifo_sta::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 [`dmic_rxfifo_sta::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@dmic_rxfifo_sta`] module"]
133pub type DMIC_RXFIFO_STA = crate::Reg<dmic_rxfifo_sta::DMIC_RXFIFO_STA_SPEC>;
134#[doc = "DMIC RXFIFO Status Register"]
135pub mod dmic_rxfifo_sta;
136#[doc = "dmic_ch_num (rw) register accessor: DMIC Channel Numbers Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`dmic_ch_num::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 [`dmic_ch_num::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@dmic_ch_num`] module"]
137pub type DMIC_CH_NUM = crate::Reg<dmic_ch_num::DMIC_CH_NUM_SPEC>;
138#[doc = "DMIC Channel Numbers Register"]
139pub mod dmic_ch_num;
140#[doc = "dmic_ch_map (rw) register accessor: DMIC Channel Mapping Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`dmic_ch_map::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 [`dmic_ch_map::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@dmic_ch_map`] module"]
141pub type DMIC_CH_MAP = crate::Reg<dmic_ch_map::DMIC_CH_MAP_SPEC>;
142#[doc = "DMIC Channel Mapping Register"]
143pub mod dmic_ch_map;
144#[doc = "dmic_cnt (rw) register accessor: DMIC Counter Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`dmic_cnt::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 [`dmic_cnt::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@dmic_cnt`] module"]
145pub type DMIC_CNT = crate::Reg<dmic_cnt::DMIC_CNT_SPEC>;
146#[doc = "DMIC Counter Register"]
147pub mod dmic_cnt;
148#[doc = "data0_data1_vol_ctr (rw) register accessor: Data0 and Data1 Volume Control Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`data0_data1_vol_ctr::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 [`data0_data1_vol_ctr::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data0_data1_vol_ctr`] module"]
149pub type DATA0_DATA1_VOL_CTR = crate::Reg<data0_data1_vol_ctr::DATA0_DATA1_VOL_CTR_SPEC>;
150#[doc = "Data0 and Data1 Volume Control Register"]
151pub mod data0_data1_vol_ctr;
152#[doc = "data2_data3_vol_ctr (rw) register accessor: Data2 And Data3 Volume Control Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`data2_data3_vol_ctr::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 [`data2_data3_vol_ctr::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data2_data3_vol_ctr`] module"]
153pub type DATA2_DATA3_VOL_CTR = crate::Reg<data2_data3_vol_ctr::DATA2_DATA3_VOL_CTR_SPEC>;
154#[doc = "Data2 And Data3 Volume Control Register"]
155pub mod data2_data3_vol_ctr;
156#[doc = "hpf_en_ctr (rw) register accessor: High Pass Filter Enable Control Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`hpf_en_ctr::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 [`hpf_en_ctr::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@hpf_en_ctr`] module"]
157pub type HPF_EN_CTR = crate::Reg<hpf_en_ctr::HPF_EN_CTR_SPEC>;
158#[doc = "High Pass Filter Enable Control Register"]
159pub mod hpf_en_ctr;
160#[doc = "hpf_coef (rw) register accessor: High Pass Filter Coefficient Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`hpf_coef::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 [`hpf_coef::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@hpf_coef`] module"]
161pub type HPF_COEF = crate::Reg<hpf_coef::HPF_COEF_SPEC>;
162#[doc = "High Pass Filter Coefficient Register"]
163pub mod hpf_coef;
164#[doc = "hpf_gain (rw) register accessor: High Pass Filter Gain Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`hpf_gain::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 [`hpf_gain::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@hpf_gain`] module"]
165pub type HPF_GAIN = crate::Reg<hpf_gain::HPF_GAIN_SPEC>;
166#[doc = "High Pass Filter Gain Register"]
167pub mod hpf_gain;