1#[doc = r"Register block"]
2#[repr(C)]
3pub struct RegisterBlock {
4 sspcr0: SSPCR0,
5 sspcr1: SSPCR1,
6 sspdr: SSPDR,
7 sspsr: SSPSR,
8 sspcpsr: SSPCPSR,
9 sspimsc: SSPIMSC,
10 sspris: SSPRIS,
11 sspmis: SSPMIS,
12 sspicr: SSPICR,
13 sspdmacr: SSPDMACR,
14 _reserved10: [u8; 0x0fb8],
15 sspperiphid0: SSPPERIPHID0,
16 sspperiphid1: SSPPERIPHID1,
17 sspperiphid2: SSPPERIPHID2,
18 sspperiphid3: SSPPERIPHID3,
19 ssppcellid0: SSPPCELLID0,
20 ssppcellid1: SSPPCELLID1,
21 ssppcellid2: SSPPCELLID2,
22 ssppcellid3: SSPPCELLID3,
23}
24impl RegisterBlock {
25 #[doc = "0x00 - Control register 0, SSPCR0 on page 3-4"]
26 #[inline(always)]
27 pub const fn sspcr0(&self) -> &SSPCR0 {
28 &self.sspcr0
29 }
30 #[doc = "0x04 - Control register 1, SSPCR1 on page 3-5"]
31 #[inline(always)]
32 pub const fn sspcr1(&self) -> &SSPCR1 {
33 &self.sspcr1
34 }
35 #[doc = "0x08 - Data register, SSPDR on page 3-6"]
36 #[inline(always)]
37 pub const fn sspdr(&self) -> &SSPDR {
38 &self.sspdr
39 }
40 #[doc = "0x0c - Status register, SSPSR on page 3-7"]
41 #[inline(always)]
42 pub const fn sspsr(&self) -> &SSPSR {
43 &self.sspsr
44 }
45 #[doc = "0x10 - Clock prescale register, SSPCPSR on page 3-8"]
46 #[inline(always)]
47 pub const fn sspcpsr(&self) -> &SSPCPSR {
48 &self.sspcpsr
49 }
50 #[doc = "0x14 - Interrupt mask set or clear register, SSPIMSC on page 3-9"]
51 #[inline(always)]
52 pub const fn sspimsc(&self) -> &SSPIMSC {
53 &self.sspimsc
54 }
55 #[doc = "0x18 - Raw interrupt status register, SSPRIS on page 3-10"]
56 #[inline(always)]
57 pub const fn sspris(&self) -> &SSPRIS {
58 &self.sspris
59 }
60 #[doc = "0x1c - Masked interrupt status register, SSPMIS on page 3-11"]
61 #[inline(always)]
62 pub const fn sspmis(&self) -> &SSPMIS {
63 &self.sspmis
64 }
65 #[doc = "0x20 - Interrupt clear register, SSPICR on page 3-11"]
66 #[inline(always)]
67 pub const fn sspicr(&self) -> &SSPICR {
68 &self.sspicr
69 }
70 #[doc = "0x24 - DMA control register, SSPDMACR on page 3-12"]
71 #[inline(always)]
72 pub const fn sspdmacr(&self) -> &SSPDMACR {
73 &self.sspdmacr
74 }
75 #[doc = "0xfe0 - Peripheral identification registers, SSPPeriphID0-3 on page 3-13"]
76 #[inline(always)]
77 pub const fn sspperiphid0(&self) -> &SSPPERIPHID0 {
78 &self.sspperiphid0
79 }
80 #[doc = "0xfe4 - Peripheral identification registers, SSPPeriphID0-3 on page 3-13"]
81 #[inline(always)]
82 pub const fn sspperiphid1(&self) -> &SSPPERIPHID1 {
83 &self.sspperiphid1
84 }
85 #[doc = "0xfe8 - Peripheral identification registers, SSPPeriphID0-3 on page 3-13"]
86 #[inline(always)]
87 pub const fn sspperiphid2(&self) -> &SSPPERIPHID2 {
88 &self.sspperiphid2
89 }
90 #[doc = "0xfec - Peripheral identification registers, SSPPeriphID0-3 on page 3-13"]
91 #[inline(always)]
92 pub const fn sspperiphid3(&self) -> &SSPPERIPHID3 {
93 &self.sspperiphid3
94 }
95 #[doc = "0xff0 - PrimeCell identification registers, SSPPCellID0-3 on page 3-16"]
96 #[inline(always)]
97 pub const fn ssppcellid0(&self) -> &SSPPCELLID0 {
98 &self.ssppcellid0
99 }
100 #[doc = "0xff4 - PrimeCell identification registers, SSPPCellID0-3 on page 3-16"]
101 #[inline(always)]
102 pub const fn ssppcellid1(&self) -> &SSPPCELLID1 {
103 &self.ssppcellid1
104 }
105 #[doc = "0xff8 - PrimeCell identification registers, SSPPCellID0-3 on page 3-16"]
106 #[inline(always)]
107 pub const fn ssppcellid2(&self) -> &SSPPCELLID2 {
108 &self.ssppcellid2
109 }
110 #[doc = "0xffc - PrimeCell identification registers, SSPPCellID0-3 on page 3-16"]
111 #[inline(always)]
112 pub const fn ssppcellid3(&self) -> &SSPPCELLID3 {
113 &self.ssppcellid3
114 }
115}
116#[doc = "SSPCR0 (rw) register accessor: Control register 0, SSPCR0 on page 3-4
117
118You can [`read`](crate::generic::Reg::read) this register and get [`sspcr0::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 [`sspcr0::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
119
120For information about available fields see [`mod@sspcr0`]
121module"]
122pub type SSPCR0 = crate::Reg<sspcr0::SSPCR0_SPEC>;
123#[doc = "Control register 0, SSPCR0 on page 3-4"]
124pub mod sspcr0;
125#[doc = "SSPCR1 (rw) register accessor: Control register 1, SSPCR1 on page 3-5
126
127You can [`read`](crate::generic::Reg::read) this register and get [`sspcr1::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 [`sspcr1::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
128
129For information about available fields see [`mod@sspcr1`]
130module"]
131pub type SSPCR1 = crate::Reg<sspcr1::SSPCR1_SPEC>;
132#[doc = "Control register 1, SSPCR1 on page 3-5"]
133pub mod sspcr1;
134#[doc = "SSPDR (rw) register accessor: Data register, SSPDR on page 3-6
135
136You can [`read`](crate::generic::Reg::read) this register and get [`sspdr::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 [`sspdr::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
137
138For information about available fields see [`mod@sspdr`]
139module"]
140pub type SSPDR = crate::Reg<sspdr::SSPDR_SPEC>;
141#[doc = "Data register, SSPDR on page 3-6"]
142pub mod sspdr;
143#[doc = "SSPSR (r) register accessor: Status register, SSPSR on page 3-7
144
145You can [`read`](crate::generic::Reg::read) this register and get [`sspsr::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
146
147For information about available fields see [`mod@sspsr`]
148module"]
149pub type SSPSR = crate::Reg<sspsr::SSPSR_SPEC>;
150#[doc = "Status register, SSPSR on page 3-7"]
151pub mod sspsr;
152#[doc = "SSPCPSR (rw) register accessor: Clock prescale register, SSPCPSR on page 3-8
153
154You can [`read`](crate::generic::Reg::read) this register and get [`sspcpsr::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 [`sspcpsr::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
155
156For information about available fields see [`mod@sspcpsr`]
157module"]
158pub type SSPCPSR = crate::Reg<sspcpsr::SSPCPSR_SPEC>;
159#[doc = "Clock prescale register, SSPCPSR on page 3-8"]
160pub mod sspcpsr;
161#[doc = "SSPIMSC (rw) register accessor: Interrupt mask set or clear register, SSPIMSC on page 3-9
162
163You can [`read`](crate::generic::Reg::read) this register and get [`sspimsc::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 [`sspimsc::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
164
165For information about available fields see [`mod@sspimsc`]
166module"]
167pub type SSPIMSC = crate::Reg<sspimsc::SSPIMSC_SPEC>;
168#[doc = "Interrupt mask set or clear register, SSPIMSC on page 3-9"]
169pub mod sspimsc;
170#[doc = "SSPRIS (r) register accessor: Raw interrupt status register, SSPRIS on page 3-10
171
172You can [`read`](crate::generic::Reg::read) this register and get [`sspris::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
173
174For information about available fields see [`mod@sspris`]
175module"]
176pub type SSPRIS = crate::Reg<sspris::SSPRIS_SPEC>;
177#[doc = "Raw interrupt status register, SSPRIS on page 3-10"]
178pub mod sspris;
179#[doc = "SSPMIS (r) register accessor: Masked interrupt status register, SSPMIS on page 3-11
180
181You can [`read`](crate::generic::Reg::read) this register and get [`sspmis::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
182
183For information about available fields see [`mod@sspmis`]
184module"]
185pub type SSPMIS = crate::Reg<sspmis::SSPMIS_SPEC>;
186#[doc = "Masked interrupt status register, SSPMIS on page 3-11"]
187pub mod sspmis;
188#[doc = "SSPICR (rw) register accessor: Interrupt clear register, SSPICR on page 3-11
189
190You can [`read`](crate::generic::Reg::read) this register and get [`sspicr::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 [`sspicr::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
191
192For information about available fields see [`mod@sspicr`]
193module"]
194pub type SSPICR = crate::Reg<sspicr::SSPICR_SPEC>;
195#[doc = "Interrupt clear register, SSPICR on page 3-11"]
196pub mod sspicr;
197#[doc = "SSPDMACR (rw) register accessor: DMA control register, SSPDMACR on page 3-12
198
199You can [`read`](crate::generic::Reg::read) this register and get [`sspdmacr::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 [`sspdmacr::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
200
201For information about available fields see [`mod@sspdmacr`]
202module"]
203pub type SSPDMACR = crate::Reg<sspdmacr::SSPDMACR_SPEC>;
204#[doc = "DMA control register, SSPDMACR on page 3-12"]
205pub mod sspdmacr;
206#[doc = "SSPPERIPHID0 (r) register accessor: Peripheral identification registers, SSPPeriphID0-3 on page 3-13
207
208You can [`read`](crate::generic::Reg::read) this register and get [`sspperiphid0::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
209
210For information about available fields see [`mod@sspperiphid0`]
211module"]
212pub type SSPPERIPHID0 = crate::Reg<sspperiphid0::SSPPERIPHID0_SPEC>;
213#[doc = "Peripheral identification registers, SSPPeriphID0-3 on page 3-13"]
214pub mod sspperiphid0;
215#[doc = "SSPPERIPHID1 (r) register accessor: Peripheral identification registers, SSPPeriphID0-3 on page 3-13
216
217You can [`read`](crate::generic::Reg::read) this register and get [`sspperiphid1::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
218
219For information about available fields see [`mod@sspperiphid1`]
220module"]
221pub type SSPPERIPHID1 = crate::Reg<sspperiphid1::SSPPERIPHID1_SPEC>;
222#[doc = "Peripheral identification registers, SSPPeriphID0-3 on page 3-13"]
223pub mod sspperiphid1;
224#[doc = "SSPPERIPHID2 (r) register accessor: Peripheral identification registers, SSPPeriphID0-3 on page 3-13
225
226You can [`read`](crate::generic::Reg::read) this register and get [`sspperiphid2::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
227
228For information about available fields see [`mod@sspperiphid2`]
229module"]
230pub type SSPPERIPHID2 = crate::Reg<sspperiphid2::SSPPERIPHID2_SPEC>;
231#[doc = "Peripheral identification registers, SSPPeriphID0-3 on page 3-13"]
232pub mod sspperiphid2;
233#[doc = "SSPPERIPHID3 (r) register accessor: Peripheral identification registers, SSPPeriphID0-3 on page 3-13
234
235You can [`read`](crate::generic::Reg::read) this register and get [`sspperiphid3::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
236
237For information about available fields see [`mod@sspperiphid3`]
238module"]
239pub type SSPPERIPHID3 = crate::Reg<sspperiphid3::SSPPERIPHID3_SPEC>;
240#[doc = "Peripheral identification registers, SSPPeriphID0-3 on page 3-13"]
241pub mod sspperiphid3;
242#[doc = "SSPPCELLID0 (r) register accessor: PrimeCell identification registers, SSPPCellID0-3 on page 3-16
243
244You can [`read`](crate::generic::Reg::read) this register and get [`ssppcellid0::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
245
246For information about available fields see [`mod@ssppcellid0`]
247module"]
248pub type SSPPCELLID0 = crate::Reg<ssppcellid0::SSPPCELLID0_SPEC>;
249#[doc = "PrimeCell identification registers, SSPPCellID0-3 on page 3-16"]
250pub mod ssppcellid0;
251#[doc = "SSPPCELLID1 (r) register accessor: PrimeCell identification registers, SSPPCellID0-3 on page 3-16
252
253You can [`read`](crate::generic::Reg::read) this register and get [`ssppcellid1::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
254
255For information about available fields see [`mod@ssppcellid1`]
256module"]
257pub type SSPPCELLID1 = crate::Reg<ssppcellid1::SSPPCELLID1_SPEC>;
258#[doc = "PrimeCell identification registers, SSPPCellID0-3 on page 3-16"]
259pub mod ssppcellid1;
260#[doc = "SSPPCELLID2 (r) register accessor: PrimeCell identification registers, SSPPCellID0-3 on page 3-16
261
262You can [`read`](crate::generic::Reg::read) this register and get [`ssppcellid2::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
263
264For information about available fields see [`mod@ssppcellid2`]
265module"]
266pub type SSPPCELLID2 = crate::Reg<ssppcellid2::SSPPCELLID2_SPEC>;
267#[doc = "PrimeCell identification registers, SSPPCellID0-3 on page 3-16"]
268pub mod ssppcellid2;
269#[doc = "SSPPCELLID3 (r) register accessor: PrimeCell identification registers, SSPPCellID0-3 on page 3-16
270
271You can [`read`](crate::generic::Reg::read) this register and get [`ssppcellid3::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
272
273For information about available fields see [`mod@ssppcellid3`]
274module"]
275pub type SSPPCELLID3 = crate::Reg<ssppcellid3::SSPPCELLID3_SPEC>;
276#[doc = "PrimeCell identification registers, SSPPCellID0-3 on page 3-16"]
277pub mod ssppcellid3;