1#[repr(C)]
2#[cfg_attr(feature = "debug", derive(Debug))]
3#[doc = "Register block"]
4pub struct RegisterBlock {
5 ver: Ver,
6 par: Par,
7 _reserved2: [u8; 0x18],
8 tr: [Tr; 4],
9 _reserved3: [u8; 0x10],
10 rr: [Rr; 4],
11 _reserved4: [u8; 0x10],
12 sr: Sr,
13 cr: Cr,
14}
15impl RegisterBlock {
16 #[doc = "0x00 - Version ID Register"]
17 #[inline(always)]
18 pub const fn ver(&self) -> &Ver {
19 &self.ver
20 }
21 #[doc = "0x04 - Use Parameter register to determine the parameter settings of MUA."]
22 #[inline(always)]
23 pub const fn par(&self) -> &Par {
24 &self.par
25 }
26 #[doc = "0x20..0x30 - Transmit Register"]
27 #[inline(always)]
28 pub const fn tr(&self, n: usize) -> &Tr {
29 &self.tr[n]
30 }
31 #[doc = "Iterator for array of:"]
32 #[doc = "0x20..0x30 - Transmit Register"]
33 #[inline(always)]
34 pub fn tr_iter(&self) -> impl Iterator<Item = &Tr> {
35 self.tr.iter()
36 }
37 #[doc = "0x40..0x50 - Receive Register."]
38 #[inline(always)]
39 pub const fn rr(&self, n: usize) -> &Rr {
40 &self.rr[n]
41 }
42 #[doc = "Iterator for array of:"]
43 #[doc = "0x40..0x50 - Receive Register."]
44 #[inline(always)]
45 pub fn rr_iter(&self) -> impl Iterator<Item = &Rr> {
46 self.rr.iter()
47 }
48 #[doc = "0x60 - Status Register"]
49 #[inline(always)]
50 pub const fn sr(&self) -> &Sr {
51 &self.sr
52 }
53 #[doc = "0x64 - Control Register"]
54 #[inline(always)]
55 pub const fn cr(&self) -> &Cr {
56 &self.cr
57 }
58}
59#[doc = "VER (r) register accessor: Version ID Register\n\nYou can [`read`](crate::Reg::read) this register and get [`ver::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@ver`]
60module"]
61#[doc(alias = "VER")]
62pub type Ver = crate::Reg<ver::VerSpec>;
63#[doc = "Version ID Register"]
64pub mod ver;
65#[doc = "PAR (r) register accessor: Use Parameter register to determine the parameter settings of MUA.\n\nYou can [`read`](crate::Reg::read) this register and get [`par::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@par`]
66module"]
67#[doc(alias = "PAR")]
68pub type Par = crate::Reg<par::ParSpec>;
69#[doc = "Use Parameter register to determine the parameter settings of MUA."]
70pub mod par;
71#[doc = "TR (rw) register accessor: Transmit Register\n\nYou can [`read`](crate::Reg::read) this register and get [`tr::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`tr::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@tr`]
72module"]
73#[doc(alias = "TR")]
74pub type Tr = crate::Reg<tr::TrSpec>;
75#[doc = "Transmit Register"]
76pub mod tr;
77#[doc = "RR (rw) register accessor: Receive Register.\n\nYou can [`read`](crate::Reg::read) this register and get [`rr::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`rr::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@rr`]
78module"]
79#[doc(alias = "RR")]
80pub type Rr = crate::Reg<rr::RrSpec>;
81#[doc = "Receive Register."]
82pub mod rr;
83#[doc = "SR (rw) register accessor: Status Register\n\nYou can [`read`](crate::Reg::read) this register and get [`sr::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`sr::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@sr`]
84module"]
85#[doc(alias = "SR")]
86pub type Sr = crate::Reg<sr::SrSpec>;
87#[doc = "Status Register"]
88pub mod sr;
89#[doc = "CR (rw) register accessor: Control Register\n\nYou can [`read`](crate::Reg::read) this register and get [`cr::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`cr::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@cr`]
90module"]
91#[doc(alias = "CR")]
92pub type Cr = crate::Reg<cr::CrSpec>;
93#[doc = "Control Register"]
94pub mod cr;