1#[repr(C)]
2#[doc = "GROUP\\[%s\\]"]
3#[doc(alias = "GROUP")]
4pub struct Group {
5 dir: Dir,
6 dirclr: Dirclr,
7 dirset: Dirset,
8 dirtgl: Dirtgl,
9 out: Out,
10 outclr: Outclr,
11 outset: Outset,
12 outtgl: Outtgl,
13 in_: In,
14 ctrl: Ctrl,
15 wrconfig: Wrconfig,
16 evctrl: Evctrl,
17 pmux: [Pmux; 16],
18 pincfg: [Pincfg; 32],
19}
20impl Group {
21#[doc = "0x00 - Data Direction"]
22 #[inline(always)]
23pub const fn dir(&self) -> &Dir {
24&self.dir
25 }
26#[doc = "0x04 - Data Direction Clear"]
27 #[inline(always)]
28pub const fn dirclr(&self) -> &Dirclr {
29&self.dirclr
30 }
31#[doc = "0x08 - Data Direction Set"]
32 #[inline(always)]
33pub const fn dirset(&self) -> &Dirset {
34&self.dirset
35 }
36#[doc = "0x0c - Data Direction Toggle"]
37 #[inline(always)]
38pub const fn dirtgl(&self) -> &Dirtgl {
39&self.dirtgl
40 }
41#[doc = "0x10 - Data Output Value"]
42 #[inline(always)]
43pub const fn out(&self) -> &Out {
44&self.out
45 }
46#[doc = "0x14 - Data Output Value Clear"]
47 #[inline(always)]
48pub const fn outclr(&self) -> &Outclr {
49&self.outclr
50 }
51#[doc = "0x18 - Data Output Value Set"]
52 #[inline(always)]
53pub const fn outset(&self) -> &Outset {
54&self.outset
55 }
56#[doc = "0x1c - Data Output Value Toggle"]
57 #[inline(always)]
58pub const fn outtgl(&self) -> &Outtgl {
59&self.outtgl
60 }
61#[doc = "0x20 - Data Input Value"]
62 #[inline(always)]
63pub const fn in_(&self) -> &In {
64&self.in_
65 }
66#[doc = "0x24 - Control"]
67 #[inline(always)]
68pub const fn ctrl(&self) -> &Ctrl {
69&self.ctrl
70 }
71#[doc = "0x28 - Write Configuration"]
72 #[inline(always)]
73pub const fn wrconfig(&self) -> &Wrconfig {
74&self.wrconfig
75 }
76#[doc = "0x2c - Event Input Control"]
77 #[inline(always)]
78pub const fn evctrl(&self) -> &Evctrl {
79&self.evctrl
80 }
81#[doc = "0x30..0x40 - Peripheral Multiplexing"]
82 #[inline(always)]
83pub const fn pmux(&self, n: usize) -> &Pmux {
84&self.pmux[n]
85 }
86#[doc = "Iterator for array of:"]
87 #[doc = "0x30..0x40 - Peripheral Multiplexing"]
88 #[inline(always)]
89pub fn pmux_iter(&self) -> impl Iterator<Item = &Pmux> {
90self.pmux.iter()
91 }
92#[doc = "0x40..0x60 - Pin Configuration"]
93 #[inline(always)]
94pub const fn pincfg(&self, n: usize) -> &Pincfg {
95&self.pincfg[n]
96 }
97#[doc = "Iterator for array of:"]
98 #[doc = "0x40..0x60 - Pin Configuration"]
99 #[inline(always)]
100pub fn pincfg_iter(&self) -> impl Iterator<Item = &Pincfg> {
101self.pincfg.iter()
102 }
103}
104#[doc = "DIR (rw) register accessor: Data Direction\n\nYou can [`read`](crate::Reg::read) this register and get [`dir::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`dir::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@dir`]
105module"]
106#[doc(alias = "DIR")]
107pub type Dir = crate::Reg<dir::DirSpec>;
108#[doc = "Data Direction"]
109pub mod dir;
110#[doc = "DIRCLR (rw) register accessor: Data Direction Clear\n\nYou can [`read`](crate::Reg::read) this register and get [`dirclr::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`dirclr::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@dirclr`]
111module"]
112#[doc(alias = "DIRCLR")]
113pub type Dirclr = crate::Reg<dirclr::DirclrSpec>;
114#[doc = "Data Direction Clear"]
115pub mod dirclr;
116#[doc = "DIRSET (rw) register accessor: Data Direction Set\n\nYou can [`read`](crate::Reg::read) this register and get [`dirset::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`dirset::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@dirset`]
117module"]
118#[doc(alias = "DIRSET")]
119pub type Dirset = crate::Reg<dirset::DirsetSpec>;
120#[doc = "Data Direction Set"]
121pub mod dirset;
122#[doc = "DIRTGL (rw) register accessor: Data Direction Toggle\n\nYou can [`read`](crate::Reg::read) this register and get [`dirtgl::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`dirtgl::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@dirtgl`]
123module"]
124#[doc(alias = "DIRTGL")]
125pub type Dirtgl = crate::Reg<dirtgl::DirtglSpec>;
126#[doc = "Data Direction Toggle"]
127pub mod dirtgl;
128#[doc = "OUT (rw) register accessor: Data Output Value\n\nYou can [`read`](crate::Reg::read) this register and get [`out::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`out::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@out`]
129module"]
130#[doc(alias = "OUT")]
131pub type Out = crate::Reg<out::OutSpec>;
132#[doc = "Data Output Value"]
133pub mod out;
134#[doc = "OUTCLR (rw) register accessor: Data Output Value Clear\n\nYou can [`read`](crate::Reg::read) this register and get [`outclr::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`outclr::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@outclr`]
135module"]
136#[doc(alias = "OUTCLR")]
137pub type Outclr = crate::Reg<outclr::OutclrSpec>;
138#[doc = "Data Output Value Clear"]
139pub mod outclr;
140#[doc = "OUTSET (rw) register accessor: Data Output Value Set\n\nYou can [`read`](crate::Reg::read) this register and get [`outset::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`outset::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@outset`]
141module"]
142#[doc(alias = "OUTSET")]
143pub type Outset = crate::Reg<outset::OutsetSpec>;
144#[doc = "Data Output Value Set"]
145pub mod outset;
146#[doc = "OUTTGL (rw) register accessor: Data Output Value Toggle\n\nYou can [`read`](crate::Reg::read) this register and get [`outtgl::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`outtgl::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@outtgl`]
147module"]
148#[doc(alias = "OUTTGL")]
149pub type Outtgl = crate::Reg<outtgl::OuttglSpec>;
150#[doc = "Data Output Value Toggle"]
151pub mod outtgl;
152#[doc = "IN (r) register accessor: Data Input Value\n\nYou can [`read`](crate::Reg::read) this register and get [`in_::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@in_`]
153module"]
154#[doc(alias = "IN")]
155pub type In = crate::Reg<in_::InSpec>;
156#[doc = "Data Input Value"]
157pub mod in_;
158#[doc = "CTRL (rw) register accessor: Control\n\nYou can [`read`](crate::Reg::read) this register and get [`ctrl::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`ctrl::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@ctrl`]
159module"]
160#[doc(alias = "CTRL")]
161pub type Ctrl = crate::Reg<ctrl::CtrlSpec>;
162#[doc = "Control"]
163pub mod ctrl;
164#[doc = "WRCONFIG (w) register accessor: Write Configuration\n\nYou can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`wrconfig::W`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@wrconfig`]
165module"]
166#[doc(alias = "WRCONFIG")]
167pub type Wrconfig = crate::Reg<wrconfig::WrconfigSpec>;
168#[doc = "Write Configuration"]
169pub mod wrconfig;
170#[doc = "EVCTRL (rw) register accessor: Event Input Control\n\nYou can [`read`](crate::Reg::read) this register and get [`evctrl::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`evctrl::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@evctrl`]
171module"]
172#[doc(alias = "EVCTRL")]
173pub type Evctrl = crate::Reg<evctrl::EvctrlSpec>;
174#[doc = "Event Input Control"]
175pub mod evctrl;
176#[doc = "PMUX (rw) register accessor: Peripheral Multiplexing\n\nYou can [`read`](crate::Reg::read) this register and get [`pmux::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`pmux::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@pmux`]
177module"]
178#[doc(alias = "PMUX")]
179pub type Pmux = crate::Reg<pmux::PmuxSpec>;
180#[doc = "Peripheral Multiplexing"]
181pub mod pmux;
182#[doc = "PINCFG (rw) register accessor: Pin Configuration\n\nYou can [`read`](crate::Reg::read) this register and get [`pincfg::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`pincfg::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@pincfg`]
183module"]
184#[doc(alias = "PINCFG")]
185pub type Pincfg = crate::Reg<pincfg::PincfgSpec>;
186#[doc = "Pin Configuration"]
187pub mod pincfg;