1#[repr(C)]
2#[doc = "Register block"]
3pub struct RegisterBlock {
4 ctrla: Ctrla,
5 ctrlb: Ctrlb,
6 evctrl: Evctrl,
7 _reserved3: [u8; 0x01],
8 intenclr: Intenclr,
9 intenset: Intenset,
10 intflag: Intflag,
11 status: Status,
12 data: Data,
13 _reserved8: [u8; 0x02],
14 databuf: Databuf,
15}
16impl RegisterBlock {
17 #[doc = "0x00 - Control A"]
18 #[inline(always)]
19 pub const fn ctrla(&self) -> &Ctrla {
20 &self.ctrla
21 }
22 #[doc = "0x01 - Control B"]
23 #[inline(always)]
24 pub const fn ctrlb(&self) -> &Ctrlb {
25 &self.ctrlb
26 }
27 #[doc = "0x02 - Event Control"]
28 #[inline(always)]
29 pub const fn evctrl(&self) -> &Evctrl {
30 &self.evctrl
31 }
32 #[doc = "0x04 - Interrupt Enable Clear"]
33 #[inline(always)]
34 pub const fn intenclr(&self) -> &Intenclr {
35 &self.intenclr
36 }
37 #[doc = "0x05 - Interrupt Enable Set"]
38 #[inline(always)]
39 pub const fn intenset(&self) -> &Intenset {
40 &self.intenset
41 }
42 #[doc = "0x06 - Interrupt Flag Status and Clear"]
43 #[inline(always)]
44 pub const fn intflag(&self) -> &Intflag {
45 &self.intflag
46 }
47 #[doc = "0x07 - Status"]
48 #[inline(always)]
49 pub const fn status(&self) -> &Status {
50 &self.status
51 }
52 #[doc = "0x08 - Data"]
53 #[inline(always)]
54 pub const fn data(&self) -> &Data {
55 &self.data
56 }
57 #[doc = "0x0c - Data Buffer"]
58 #[inline(always)]
59 pub const fn databuf(&self) -> &Databuf {
60 &self.databuf
61 }
62}
63#[doc = "CTRLA (rw) register accessor: Control A\n\nYou can [`read`](crate::Reg::read) this register and get [`ctrla::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`ctrla::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@ctrla`]
64module"]
65#[doc(alias = "CTRLA")]
66pub type Ctrla = crate::Reg<ctrla::CtrlaSpec>;
67#[doc = "Control A"]
68pub mod ctrla;
69#[doc = "CTRLB (rw) register accessor: Control B\n\nYou can [`read`](crate::Reg::read) this register and get [`ctrlb::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`ctrlb::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@ctrlb`]
70module"]
71#[doc(alias = "CTRLB")]
72pub type Ctrlb = crate::Reg<ctrlb::CtrlbSpec>;
73#[doc = "Control B"]
74pub mod ctrlb;
75#[doc = "EVCTRL (rw) register accessor: Event 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`]
76module"]
77#[doc(alias = "EVCTRL")]
78pub type Evctrl = crate::Reg<evctrl::EvctrlSpec>;
79#[doc = "Event Control"]
80pub mod evctrl;
81#[doc = "INTENCLR (rw) register accessor: Interrupt Enable Clear\n\nYou can [`read`](crate::Reg::read) this register and get [`intenclr::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`intenclr::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@intenclr`]
82module"]
83#[doc(alias = "INTENCLR")]
84pub type Intenclr = crate::Reg<intenclr::IntenclrSpec>;
85#[doc = "Interrupt Enable Clear"]
86pub mod intenclr;
87#[doc = "INTENSET (rw) register accessor: Interrupt Enable Set\n\nYou can [`read`](crate::Reg::read) this register and get [`intenset::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`intenset::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@intenset`]
88module"]
89#[doc(alias = "INTENSET")]
90pub type Intenset = crate::Reg<intenset::IntensetSpec>;
91#[doc = "Interrupt Enable Set"]
92pub mod intenset;
93#[doc = "INTFLAG (rw) register accessor: Interrupt Flag Status and Clear\n\nYou can [`read`](crate::Reg::read) this register and get [`intflag::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`intflag::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@intflag`]
94module"]
95#[doc(alias = "INTFLAG")]
96pub type Intflag = crate::Reg<intflag::IntflagSpec>;
97#[doc = "Interrupt Flag Status and Clear"]
98pub mod intflag;
99#[doc = "STATUS (r) register accessor: Status\n\nYou can [`read`](crate::Reg::read) this register and get [`status::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@status`]
100module"]
101#[doc(alias = "STATUS")]
102pub type Status = crate::Reg<status::StatusSpec>;
103#[doc = "Status"]
104pub mod status;
105#[doc = "DATA (rw) register accessor: Data\n\nYou can [`read`](crate::Reg::read) this register and get [`data::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data::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@data`]
106module"]
107#[doc(alias = "DATA")]
108pub type Data = crate::Reg<data::DataSpec>;
109#[doc = "Data"]
110pub mod data;
111#[doc = "DATABUF (rw) register accessor: Data Buffer\n\nYou can [`read`](crate::Reg::read) this register and get [`databuf::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`databuf::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@databuf`]
112module"]
113#[doc(alias = "DATABUF")]
114pub type Databuf = crate::Reg<databuf::DatabufSpec>;
115#[doc = "Data Buffer"]
116pub mod databuf;