stm32f1_staging/stm32f107/
bkp.rs

1#[repr(C)]
2#[derive(Debug)]
3///Register block
4pub struct RegisterBlock {
5    dr: [DR; 10],
6    rtccr: RTCCR,
7    cr: CR,
8    csr: CSR,
9    _reserved4: [u8; 0x08],
10    bkp_dr: [BKP_DR; 32],
11}
12impl RegisterBlock {
13    ///0x00..0x28 - Backup data register (BKP_DR)
14    ///
15    ///<div class="warning">`n` is the index of register in the array. `n == 0` corresponds to `DR1` register.</div>
16    #[inline(always)]
17    pub const fn dr(&self, n: usize) -> &DR {
18        &self.dr[n]
19    }
20    ///Iterator for array of:
21    ///0x00..0x28 - Backup data register (BKP_DR)
22    #[inline(always)]
23    pub fn dr_iter(&self) -> impl Iterator<Item = &DR> {
24        self.dr.iter()
25    }
26    ///0x00 - Backup data register (BKP_DR)
27    #[inline(always)]
28    pub const fn dr1(&self) -> &DR {
29        self.dr(0)
30    }
31    ///0x04 - Backup data register (BKP_DR)
32    #[inline(always)]
33    pub const fn dr2(&self) -> &DR {
34        self.dr(1)
35    }
36    ///0x08 - Backup data register (BKP_DR)
37    #[inline(always)]
38    pub const fn dr3(&self) -> &DR {
39        self.dr(2)
40    }
41    ///0x0c - Backup data register (BKP_DR)
42    #[inline(always)]
43    pub const fn dr4(&self) -> &DR {
44        self.dr(3)
45    }
46    ///0x10 - Backup data register (BKP_DR)
47    #[inline(always)]
48    pub const fn dr5(&self) -> &DR {
49        self.dr(4)
50    }
51    ///0x14 - Backup data register (BKP_DR)
52    #[inline(always)]
53    pub const fn dr6(&self) -> &DR {
54        self.dr(5)
55    }
56    ///0x18 - Backup data register (BKP_DR)
57    #[inline(always)]
58    pub const fn dr7(&self) -> &DR {
59        self.dr(6)
60    }
61    ///0x1c - Backup data register (BKP_DR)
62    #[inline(always)]
63    pub const fn dr8(&self) -> &DR {
64        self.dr(7)
65    }
66    ///0x20 - Backup data register (BKP_DR)
67    #[inline(always)]
68    pub const fn dr9(&self) -> &DR {
69        self.dr(8)
70    }
71    ///0x24 - Backup data register (BKP_DR)
72    #[inline(always)]
73    pub const fn dr10(&self) -> &DR {
74        self.dr(9)
75    }
76    ///0x28 - RTC clock calibration register (BKP_RTCCR)
77    #[inline(always)]
78    pub const fn rtccr(&self) -> &RTCCR {
79        &self.rtccr
80    }
81    ///0x2c - Backup control register (BKP_CR)
82    #[inline(always)]
83    pub const fn cr(&self) -> &CR {
84        &self.cr
85    }
86    ///0x30 - BKP_CSR control/status register
87    #[inline(always)]
88    pub const fn csr(&self) -> &CSR {
89        &self.csr
90    }
91    ///0x3c..0xbc - Backup data register (BKP_DR)
92    ///
93    ///<div class="warning">`n` is the index of register in the array. `n == 0` corresponds to `BKP_DR11` register.</div>
94    #[inline(always)]
95    pub const fn bkp_dr(&self, n: usize) -> &BKP_DR {
96        &self.bkp_dr[n]
97    }
98    ///Iterator for array of:
99    ///0x3c..0xbc - Backup data register (BKP_DR)
100    #[inline(always)]
101    pub fn bkp_dr_iter(&self) -> impl Iterator<Item = &BKP_DR> {
102        self.bkp_dr.iter()
103    }
104    ///0x3c - Backup data register (BKP_DR)
105    #[inline(always)]
106    pub const fn bkp_dr11(&self) -> &BKP_DR {
107        self.bkp_dr(0)
108    }
109    ///0x40 - Backup data register (BKP_DR)
110    #[inline(always)]
111    pub const fn bkp_dr12(&self) -> &BKP_DR {
112        self.bkp_dr(1)
113    }
114    ///0x44 - Backup data register (BKP_DR)
115    #[inline(always)]
116    pub const fn bkp_dr13(&self) -> &BKP_DR {
117        self.bkp_dr(2)
118    }
119    ///0x48 - Backup data register (BKP_DR)
120    #[inline(always)]
121    pub const fn bkp_dr14(&self) -> &BKP_DR {
122        self.bkp_dr(3)
123    }
124    ///0x4c - Backup data register (BKP_DR)
125    #[inline(always)]
126    pub const fn bkp_dr15(&self) -> &BKP_DR {
127        self.bkp_dr(4)
128    }
129    ///0x50 - Backup data register (BKP_DR)
130    #[inline(always)]
131    pub const fn bkp_dr16(&self) -> &BKP_DR {
132        self.bkp_dr(5)
133    }
134    ///0x54 - Backup data register (BKP_DR)
135    #[inline(always)]
136    pub const fn bkp_dr17(&self) -> &BKP_DR {
137        self.bkp_dr(6)
138    }
139    ///0x58 - Backup data register (BKP_DR)
140    #[inline(always)]
141    pub const fn bkp_dr18(&self) -> &BKP_DR {
142        self.bkp_dr(7)
143    }
144    ///0x5c - Backup data register (BKP_DR)
145    #[inline(always)]
146    pub const fn bkp_dr19(&self) -> &BKP_DR {
147        self.bkp_dr(8)
148    }
149    ///0x60 - Backup data register (BKP_DR)
150    #[inline(always)]
151    pub const fn bkp_dr20(&self) -> &BKP_DR {
152        self.bkp_dr(9)
153    }
154    ///0x64 - Backup data register (BKP_DR)
155    #[inline(always)]
156    pub const fn bkp_dr21(&self) -> &BKP_DR {
157        self.bkp_dr(10)
158    }
159    ///0x68 - Backup data register (BKP_DR)
160    #[inline(always)]
161    pub const fn bkp_dr22(&self) -> &BKP_DR {
162        self.bkp_dr(11)
163    }
164    ///0x6c - Backup data register (BKP_DR)
165    #[inline(always)]
166    pub const fn bkp_dr23(&self) -> &BKP_DR {
167        self.bkp_dr(12)
168    }
169    ///0x70 - Backup data register (BKP_DR)
170    #[inline(always)]
171    pub const fn bkp_dr24(&self) -> &BKP_DR {
172        self.bkp_dr(13)
173    }
174    ///0x74 - Backup data register (BKP_DR)
175    #[inline(always)]
176    pub const fn bkp_dr25(&self) -> &BKP_DR {
177        self.bkp_dr(14)
178    }
179    ///0x78 - Backup data register (BKP_DR)
180    #[inline(always)]
181    pub const fn bkp_dr26(&self) -> &BKP_DR {
182        self.bkp_dr(15)
183    }
184    ///0x7c - Backup data register (BKP_DR)
185    #[inline(always)]
186    pub const fn bkp_dr27(&self) -> &BKP_DR {
187        self.bkp_dr(16)
188    }
189    ///0x80 - Backup data register (BKP_DR)
190    #[inline(always)]
191    pub const fn bkp_dr28(&self) -> &BKP_DR {
192        self.bkp_dr(17)
193    }
194    ///0x84 - Backup data register (BKP_DR)
195    #[inline(always)]
196    pub const fn bkp_dr29(&self) -> &BKP_DR {
197        self.bkp_dr(18)
198    }
199    ///0x88 - Backup data register (BKP_DR)
200    #[inline(always)]
201    pub const fn bkp_dr30(&self) -> &BKP_DR {
202        self.bkp_dr(19)
203    }
204    ///0x8c - Backup data register (BKP_DR)
205    #[inline(always)]
206    pub const fn bkp_dr31(&self) -> &BKP_DR {
207        self.bkp_dr(20)
208    }
209    ///0x90 - Backup data register (BKP_DR)
210    #[inline(always)]
211    pub const fn bkp_dr32(&self) -> &BKP_DR {
212        self.bkp_dr(21)
213    }
214    ///0x94 - Backup data register (BKP_DR)
215    #[inline(always)]
216    pub const fn bkp_dr33(&self) -> &BKP_DR {
217        self.bkp_dr(22)
218    }
219    ///0x98 - Backup data register (BKP_DR)
220    #[inline(always)]
221    pub const fn bkp_dr34(&self) -> &BKP_DR {
222        self.bkp_dr(23)
223    }
224    ///0x9c - Backup data register (BKP_DR)
225    #[inline(always)]
226    pub const fn bkp_dr35(&self) -> &BKP_DR {
227        self.bkp_dr(24)
228    }
229    ///0xa0 - Backup data register (BKP_DR)
230    #[inline(always)]
231    pub const fn bkp_dr36(&self) -> &BKP_DR {
232        self.bkp_dr(25)
233    }
234    ///0xa4 - Backup data register (BKP_DR)
235    #[inline(always)]
236    pub const fn bkp_dr37(&self) -> &BKP_DR {
237        self.bkp_dr(26)
238    }
239    ///0xa8 - Backup data register (BKP_DR)
240    #[inline(always)]
241    pub const fn bkp_dr38(&self) -> &BKP_DR {
242        self.bkp_dr(27)
243    }
244    ///0xac - Backup data register (BKP_DR)
245    #[inline(always)]
246    pub const fn bkp_dr39(&self) -> &BKP_DR {
247        self.bkp_dr(28)
248    }
249    ///0xb0 - Backup data register (BKP_DR)
250    #[inline(always)]
251    pub const fn bkp_dr40(&self) -> &BKP_DR {
252        self.bkp_dr(29)
253    }
254    ///0xb4 - Backup data register (BKP_DR)
255    #[inline(always)]
256    pub const fn bkp_dr41(&self) -> &BKP_DR {
257        self.bkp_dr(30)
258    }
259    ///0xb8 - Backup data register (BKP_DR)
260    #[inline(always)]
261    pub const fn bkp_dr42(&self) -> &BKP_DR {
262        self.bkp_dr(31)
263    }
264}
265/**DR (rw) register accessor: Backup data register (BKP_DR)
266
267You can [`read`](crate::Reg::read) this register and get [`dr::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`dr::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
268
269See register [structure](https://stm32-rs.github.io/stm32-rs/STM32F107.html#BKP:DR[1])
270
271For information about available fields see [`mod@dr`] module*/
272pub type DR = crate::Reg<dr::DRrs>;
273///Backup data register (BKP_DR)
274pub mod dr;
275/**BKP_DR (rw) register accessor: Backup data register (BKP_DR)
276
277You can [`read`](crate::Reg::read) this register and get [`bkp_dr::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`bkp_dr::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
278
279See register [structure](https://stm32-rs.github.io/stm32-rs/STM32F107.html#BKP:BKP_DR[11])
280
281For information about available fields see [`mod@bkp_dr`] module*/
282pub type BKP_DR = crate::Reg<bkp_dr::BKP_DRrs>;
283///Backup data register (BKP_DR)
284pub mod bkp_dr;
285/**RTCCR (rw) register accessor: RTC clock calibration register (BKP_RTCCR)
286
287You can [`read`](crate::Reg::read) this register and get [`rtccr::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`rtccr::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
288
289See register [structure](https://stm32-rs.github.io/stm32-rs/STM32F107.html#BKP:RTCCR)
290
291For information about available fields see [`mod@rtccr`] module*/
292pub type RTCCR = crate::Reg<rtccr::RTCCRrs>;
293///RTC clock calibration register (BKP_RTCCR)
294pub mod rtccr;
295/**CR (rw) register accessor: Backup control register (BKP_CR)
296
297You 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).
298
299See register [structure](https://stm32-rs.github.io/stm32-rs/STM32F107.html#BKP:CR)
300
301For information about available fields see [`mod@cr`] module*/
302pub type CR = crate::Reg<cr::CRrs>;
303///Backup control register (BKP_CR)
304pub mod cr;
305/**CSR (rw) register accessor: BKP_CSR control/status register
306
307You can [`read`](crate::Reg::read) this register and get [`csr::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`csr::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).
308
309See register [structure](https://stm32-rs.github.io/stm32-rs/STM32F107.html#BKP:CSR)
310
311For information about available fields see [`mod@csr`] module*/
312pub type CSR = crate::Reg<csr::CSRrs>;
313///BKP_CSR control/status register
314pub mod csr;