atsam3x4e/
usart2.rs

1#[repr(C)]
2#[doc = "Register block"]
3pub struct RegisterBlock {
4    _reserved_0_cr: [u8; 0x04],
5    _reserved_1_mr: [u8; 0x04],
6    _reserved_2_ier: [u8; 0x04],
7    _reserved_3_idr: [u8; 0x04],
8    _reserved_4_imr: [u8; 0x04],
9    _reserved_5_csr: [u8; 0x04],
10    rhr: Rhr,
11    thr: Thr,
12    brgr: Brgr,
13    rtor: Rtor,
14    ttgr: Ttgr,
15    _reserved11: [u8; 0x14],
16    fidi: Fidi,
17    ner: Ner,
18    _reserved13: [u8; 0x04],
19    if_: If,
20    man: Man,
21    linmr: Linmr,
22    linir: Linir,
23    linbrr: Linbrr,
24    _reserved18: [u8; 0x84],
25    wpmr: Wpmr,
26    wpsr: Wpsr,
27    _reserved20: [u8; 0x14],
28    rpr: Rpr,
29    rcr: Rcr,
30    tpr: Tpr,
31    tcr: Tcr,
32    rnpr: Rnpr,
33    rncr: Rncr,
34    tnpr: Tnpr,
35    tncr: Tncr,
36    ptcr: Ptcr,
37    ptsr: Ptsr,
38}
39impl RegisterBlock {
40    #[doc = "0x00 - Control Register"]
41    #[inline(always)]
42    pub const fn spi_mode_cr_spi_mode(&self) -> &SpiModeCrSpiMode {
43        unsafe { &*(self as *const Self).cast::<u8>().add(0).cast() }
44    }
45    #[doc = "0x00 - Control Register"]
46    #[inline(always)]
47    pub const fn cr(&self) -> &Cr {
48        unsafe { &*(self as *const Self).cast::<u8>().add(0).cast() }
49    }
50    #[doc = "0x04 - Mode Register"]
51    #[inline(always)]
52    pub const fn spi_mode_mr_spi_mode(&self) -> &SpiModeMrSpiMode {
53        unsafe { &*(self as *const Self).cast::<u8>().add(4).cast() }
54    }
55    #[doc = "0x04 - Mode Register"]
56    #[inline(always)]
57    pub const fn mr(&self) -> &Mr {
58        unsafe { &*(self as *const Self).cast::<u8>().add(4).cast() }
59    }
60    #[doc = "0x08 - Interrupt Enable Register"]
61    #[inline(always)]
62    pub const fn lin_mode_ier_lin_mode(&self) -> &LinModeIerLinMode {
63        unsafe { &*(self as *const Self).cast::<u8>().add(8).cast() }
64    }
65    #[doc = "0x08 - Interrupt Enable Register"]
66    #[inline(always)]
67    pub const fn spi_mode_ier_spi_mode(&self) -> &SpiModeIerSpiMode {
68        unsafe { &*(self as *const Self).cast::<u8>().add(8).cast() }
69    }
70    #[doc = "0x08 - Interrupt Enable Register"]
71    #[inline(always)]
72    pub const fn ier(&self) -> &Ier {
73        unsafe { &*(self as *const Self).cast::<u8>().add(8).cast() }
74    }
75    #[doc = "0x0c - Interrupt Disable Register"]
76    #[inline(always)]
77    pub const fn lin_mode_idr_lin_mode(&self) -> &LinModeIdrLinMode {
78        unsafe { &*(self as *const Self).cast::<u8>().add(12).cast() }
79    }
80    #[doc = "0x0c - Interrupt Disable Register"]
81    #[inline(always)]
82    pub const fn spi_mode_idr_spi_mode(&self) -> &SpiModeIdrSpiMode {
83        unsafe { &*(self as *const Self).cast::<u8>().add(12).cast() }
84    }
85    #[doc = "0x0c - Interrupt Disable Register"]
86    #[inline(always)]
87    pub const fn idr(&self) -> &Idr {
88        unsafe { &*(self as *const Self).cast::<u8>().add(12).cast() }
89    }
90    #[doc = "0x10 - Interrupt Mask Register"]
91    #[inline(always)]
92    pub const fn lin_mode_imr_lin_mode(&self) -> &LinModeImrLinMode {
93        unsafe { &*(self as *const Self).cast::<u8>().add(16).cast() }
94    }
95    #[doc = "0x10 - Interrupt Mask Register"]
96    #[inline(always)]
97    pub const fn spi_mode_imr_spi_mode(&self) -> &SpiModeImrSpiMode {
98        unsafe { &*(self as *const Self).cast::<u8>().add(16).cast() }
99    }
100    #[doc = "0x10 - Interrupt Mask Register"]
101    #[inline(always)]
102    pub const fn imr(&self) -> &Imr {
103        unsafe { &*(self as *const Self).cast::<u8>().add(16).cast() }
104    }
105    #[doc = "0x14 - Channel Status Register"]
106    #[inline(always)]
107    pub const fn lin_mode_csr_lin_mode(&self) -> &LinModeCsrLinMode {
108        unsafe { &*(self as *const Self).cast::<u8>().add(20).cast() }
109    }
110    #[doc = "0x14 - Channel Status Register"]
111    #[inline(always)]
112    pub const fn spi_mode_csr_spi_mode(&self) -> &SpiModeCsrSpiMode {
113        unsafe { &*(self as *const Self).cast::<u8>().add(20).cast() }
114    }
115    #[doc = "0x14 - Channel Status Register"]
116    #[inline(always)]
117    pub const fn csr(&self) -> &Csr {
118        unsafe { &*(self as *const Self).cast::<u8>().add(20).cast() }
119    }
120    #[doc = "0x18 - Receive Holding Register"]
121    #[inline(always)]
122    pub const fn rhr(&self) -> &Rhr {
123        &self.rhr
124    }
125    #[doc = "0x1c - Transmit Holding Register"]
126    #[inline(always)]
127    pub const fn thr(&self) -> &Thr {
128        &self.thr
129    }
130    #[doc = "0x20 - Baud Rate Generator Register"]
131    #[inline(always)]
132    pub const fn brgr(&self) -> &Brgr {
133        &self.brgr
134    }
135    #[doc = "0x24 - Receiver Time-out Register"]
136    #[inline(always)]
137    pub const fn rtor(&self) -> &Rtor {
138        &self.rtor
139    }
140    #[doc = "0x28 - Transmitter Timeguard Register"]
141    #[inline(always)]
142    pub const fn ttgr(&self) -> &Ttgr {
143        &self.ttgr
144    }
145    #[doc = "0x40 - FI DI Ratio Register"]
146    #[inline(always)]
147    pub const fn fidi(&self) -> &Fidi {
148        &self.fidi
149    }
150    #[doc = "0x44 - Number of Errors Register"]
151    #[inline(always)]
152    pub const fn ner(&self) -> &Ner {
153        &self.ner
154    }
155    #[doc = "0x4c - IrDA Filter Register"]
156    #[inline(always)]
157    pub const fn if_(&self) -> &If {
158        &self.if_
159    }
160    #[doc = "0x50 - Manchester Configuration Register"]
161    #[inline(always)]
162    pub const fn man(&self) -> &Man {
163        &self.man
164    }
165    #[doc = "0x54 - LIN Mode Register"]
166    #[inline(always)]
167    pub const fn linmr(&self) -> &Linmr {
168        &self.linmr
169    }
170    #[doc = "0x58 - LIN Identifier Register"]
171    #[inline(always)]
172    pub const fn linir(&self) -> &Linir {
173        &self.linir
174    }
175    #[doc = "0x5c - LIN Baud Rate Register"]
176    #[inline(always)]
177    pub const fn linbrr(&self) -> &Linbrr {
178        &self.linbrr
179    }
180    #[doc = "0xe4 - Write Protection Mode Register"]
181    #[inline(always)]
182    pub const fn wpmr(&self) -> &Wpmr {
183        &self.wpmr
184    }
185    #[doc = "0xe8 - Write Protection Status Register"]
186    #[inline(always)]
187    pub const fn wpsr(&self) -> &Wpsr {
188        &self.wpsr
189    }
190    #[doc = "0x100 - Receive Pointer Register"]
191    #[inline(always)]
192    pub const fn rpr(&self) -> &Rpr {
193        &self.rpr
194    }
195    #[doc = "0x104 - Receive Counter Register"]
196    #[inline(always)]
197    pub const fn rcr(&self) -> &Rcr {
198        &self.rcr
199    }
200    #[doc = "0x108 - Transmit Pointer Register"]
201    #[inline(always)]
202    pub const fn tpr(&self) -> &Tpr {
203        &self.tpr
204    }
205    #[doc = "0x10c - Transmit Counter Register"]
206    #[inline(always)]
207    pub const fn tcr(&self) -> &Tcr {
208        &self.tcr
209    }
210    #[doc = "0x110 - Receive Next Pointer Register"]
211    #[inline(always)]
212    pub const fn rnpr(&self) -> &Rnpr {
213        &self.rnpr
214    }
215    #[doc = "0x114 - Receive Next Counter Register"]
216    #[inline(always)]
217    pub const fn rncr(&self) -> &Rncr {
218        &self.rncr
219    }
220    #[doc = "0x118 - Transmit Next Pointer Register"]
221    #[inline(always)]
222    pub const fn tnpr(&self) -> &Tnpr {
223        &self.tnpr
224    }
225    #[doc = "0x11c - Transmit Next Counter Register"]
226    #[inline(always)]
227    pub const fn tncr(&self) -> &Tncr {
228        &self.tncr
229    }
230    #[doc = "0x120 - Transfer Control Register"]
231    #[inline(always)]
232    pub const fn ptcr(&self) -> &Ptcr {
233        &self.ptcr
234    }
235    #[doc = "0x124 - Transfer Status Register"]
236    #[inline(always)]
237    pub const fn ptsr(&self) -> &Ptsr {
238        &self.ptsr
239    }
240}
241#[doc = "CR (w) register accessor: Control Register\n\nYou can [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`cr::W`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cr`]
242module"]
243#[doc(alias = "CR")]
244pub type Cr = crate::Reg<cr::CrSpec>;
245#[doc = "Control Register"]
246pub mod cr;
247#[doc = "SPI_MODE_CR_SPI_MODE (w) register accessor: Control Register\n\nYou can [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`spi_mode_cr_spi_mode::W`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@spi_mode_cr_spi_mode`]
248module"]
249#[doc(alias = "SPI_MODE_CR_SPI_MODE")]
250pub type SpiModeCrSpiMode = crate::Reg<spi_mode_cr_spi_mode::SpiModeCrSpiModeSpec>;
251#[doc = "Control Register"]
252pub mod spi_mode_cr_spi_mode;
253#[doc = "MR (rw) register accessor: Mode Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`mr::R`].  You can [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`mr::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@mr`]
254module"]
255#[doc(alias = "MR")]
256pub type Mr = crate::Reg<mr::MrSpec>;
257#[doc = "Mode Register"]
258pub mod mr;
259#[doc = "SPI_MODE_MR_SPI_MODE (rw) register accessor: Mode Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`spi_mode_mr_spi_mode::R`].  You can [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`spi_mode_mr_spi_mode::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@spi_mode_mr_spi_mode`]
260module"]
261#[doc(alias = "SPI_MODE_MR_SPI_MODE")]
262pub type SpiModeMrSpiMode = crate::Reg<spi_mode_mr_spi_mode::SpiModeMrSpiModeSpec>;
263#[doc = "Mode Register"]
264pub mod spi_mode_mr_spi_mode;
265#[doc = "IER (w) register accessor: Interrupt Enable Register\n\nYou can [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`ier::W`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@ier`]
266module"]
267#[doc(alias = "IER")]
268pub type Ier = crate::Reg<ier::IerSpec>;
269#[doc = "Interrupt Enable Register"]
270pub mod ier;
271#[doc = "SPI_MODE_IER_SPI_MODE (w) register accessor: Interrupt Enable Register\n\nYou can [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`spi_mode_ier_spi_mode::W`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@spi_mode_ier_spi_mode`]
272module"]
273#[doc(alias = "SPI_MODE_IER_SPI_MODE")]
274pub type SpiModeIerSpiMode = crate::Reg<spi_mode_ier_spi_mode::SpiModeIerSpiModeSpec>;
275#[doc = "Interrupt Enable Register"]
276pub mod spi_mode_ier_spi_mode;
277#[doc = "LIN_MODE_IER_LIN_MODE (w) register accessor: Interrupt Enable Register\n\nYou can [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`lin_mode_ier_lin_mode::W`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@lin_mode_ier_lin_mode`]
278module"]
279#[doc(alias = "LIN_MODE_IER_LIN_MODE")]
280pub type LinModeIerLinMode = crate::Reg<lin_mode_ier_lin_mode::LinModeIerLinModeSpec>;
281#[doc = "Interrupt Enable Register"]
282pub mod lin_mode_ier_lin_mode;
283#[doc = "IDR (w) register accessor: Interrupt Disable Register\n\nYou can [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`idr::W`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@idr`]
284module"]
285#[doc(alias = "IDR")]
286pub type Idr = crate::Reg<idr::IdrSpec>;
287#[doc = "Interrupt Disable Register"]
288pub mod idr;
289#[doc = "SPI_MODE_IDR_SPI_MODE (w) register accessor: Interrupt Disable Register\n\nYou can [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`spi_mode_idr_spi_mode::W`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@spi_mode_idr_spi_mode`]
290module"]
291#[doc(alias = "SPI_MODE_IDR_SPI_MODE")]
292pub type SpiModeIdrSpiMode = crate::Reg<spi_mode_idr_spi_mode::SpiModeIdrSpiModeSpec>;
293#[doc = "Interrupt Disable Register"]
294pub mod spi_mode_idr_spi_mode;
295#[doc = "LIN_MODE_IDR_LIN_MODE (w) register accessor: Interrupt Disable Register\n\nYou can [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`lin_mode_idr_lin_mode::W`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@lin_mode_idr_lin_mode`]
296module"]
297#[doc(alias = "LIN_MODE_IDR_LIN_MODE")]
298pub type LinModeIdrLinMode = crate::Reg<lin_mode_idr_lin_mode::LinModeIdrLinModeSpec>;
299#[doc = "Interrupt Disable Register"]
300pub mod lin_mode_idr_lin_mode;
301#[doc = "IMR (r) register accessor: Interrupt Mask Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`imr::R`].  See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@imr`]
302module"]
303#[doc(alias = "IMR")]
304pub type Imr = crate::Reg<imr::ImrSpec>;
305#[doc = "Interrupt Mask Register"]
306pub mod imr;
307#[doc = "SPI_MODE_IMR_SPI_MODE (r) register accessor: Interrupt Mask Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`spi_mode_imr_spi_mode::R`].  See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@spi_mode_imr_spi_mode`]
308module"]
309#[doc(alias = "SPI_MODE_IMR_SPI_MODE")]
310pub type SpiModeImrSpiMode = crate::Reg<spi_mode_imr_spi_mode::SpiModeImrSpiModeSpec>;
311#[doc = "Interrupt Mask Register"]
312pub mod spi_mode_imr_spi_mode;
313#[doc = "LIN_MODE_IMR_LIN_MODE (r) register accessor: Interrupt Mask Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`lin_mode_imr_lin_mode::R`].  See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@lin_mode_imr_lin_mode`]
314module"]
315#[doc(alias = "LIN_MODE_IMR_LIN_MODE")]
316pub type LinModeImrLinMode = crate::Reg<lin_mode_imr_lin_mode::LinModeImrLinModeSpec>;
317#[doc = "Interrupt Mask Register"]
318pub mod lin_mode_imr_lin_mode;
319#[doc = "CSR (r) register accessor: Channel Status Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`csr::R`].  See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@csr`]
320module"]
321#[doc(alias = "CSR")]
322pub type Csr = crate::Reg<csr::CsrSpec>;
323#[doc = "Channel Status Register"]
324pub mod csr;
325#[doc = "SPI_MODE_CSR_SPI_MODE (r) register accessor: Channel Status Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`spi_mode_csr_spi_mode::R`].  See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@spi_mode_csr_spi_mode`]
326module"]
327#[doc(alias = "SPI_MODE_CSR_SPI_MODE")]
328pub type SpiModeCsrSpiMode = crate::Reg<spi_mode_csr_spi_mode::SpiModeCsrSpiModeSpec>;
329#[doc = "Channel Status Register"]
330pub mod spi_mode_csr_spi_mode;
331#[doc = "LIN_MODE_CSR_LIN_MODE (r) register accessor: Channel Status Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`lin_mode_csr_lin_mode::R`].  See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@lin_mode_csr_lin_mode`]
332module"]
333#[doc(alias = "LIN_MODE_CSR_LIN_MODE")]
334pub type LinModeCsrLinMode = crate::Reg<lin_mode_csr_lin_mode::LinModeCsrLinModeSpec>;
335#[doc = "Channel Status Register"]
336pub mod lin_mode_csr_lin_mode;
337#[doc = "RHR (r) register accessor: Receive Holding Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`rhr::R`].  See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@rhr`]
338module"]
339#[doc(alias = "RHR")]
340pub type Rhr = crate::Reg<rhr::RhrSpec>;
341#[doc = "Receive Holding Register"]
342pub mod rhr;
343#[doc = "THR (w) register accessor: Transmit Holding Register\n\nYou can [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`thr::W`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@thr`]
344module"]
345#[doc(alias = "THR")]
346pub type Thr = crate::Reg<thr::ThrSpec>;
347#[doc = "Transmit Holding Register"]
348pub mod thr;
349#[doc = "BRGR (rw) register accessor: Baud Rate Generator Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`brgr::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 [`brgr::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@brgr`]
350module"]
351#[doc(alias = "BRGR")]
352pub type Brgr = crate::Reg<brgr::BrgrSpec>;
353#[doc = "Baud Rate Generator Register"]
354pub mod brgr;
355#[doc = "RTOR (rw) register accessor: Receiver Time-out Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`rtor::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 [`rtor::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@rtor`]
356module"]
357#[doc(alias = "RTOR")]
358pub type Rtor = crate::Reg<rtor::RtorSpec>;
359#[doc = "Receiver Time-out Register"]
360pub mod rtor;
361#[doc = "TTGR (rw) register accessor: Transmitter Timeguard Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`ttgr::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 [`ttgr::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@ttgr`]
362module"]
363#[doc(alias = "TTGR")]
364pub type Ttgr = crate::Reg<ttgr::TtgrSpec>;
365#[doc = "Transmitter Timeguard Register"]
366pub mod ttgr;
367#[doc = "FIDI (rw) register accessor: FI DI Ratio Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`fidi::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 [`fidi::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@fidi`]
368module"]
369#[doc(alias = "FIDI")]
370pub type Fidi = crate::Reg<fidi::FidiSpec>;
371#[doc = "FI DI Ratio Register"]
372pub mod fidi;
373#[doc = "NER (r) register accessor: Number of Errors Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`ner::R`].  See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@ner`]
374module"]
375#[doc(alias = "NER")]
376pub type Ner = crate::Reg<ner::NerSpec>;
377#[doc = "Number of Errors Register"]
378pub mod ner;
379#[doc = "IF (rw) register accessor: IrDA Filter Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`if_::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 [`if_::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@if_`]
380module"]
381#[doc(alias = "IF")]
382pub type If = crate::Reg<if_::IfSpec>;
383#[doc = "IrDA Filter Register"]
384pub mod if_;
385#[doc = "MAN (rw) register accessor: Manchester Configuration Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`man::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 [`man::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@man`]
386module"]
387#[doc(alias = "MAN")]
388pub type Man = crate::Reg<man::ManSpec>;
389#[doc = "Manchester Configuration Register"]
390pub mod man;
391#[doc = "LINMR (rw) register accessor: LIN Mode Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`linmr::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 [`linmr::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@linmr`]
392module"]
393#[doc(alias = "LINMR")]
394pub type Linmr = crate::Reg<linmr::LinmrSpec>;
395#[doc = "LIN Mode Register"]
396pub mod linmr;
397#[doc = "LINIR (rw) register accessor: LIN Identifier Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`linir::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 [`linir::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@linir`]
398module"]
399#[doc(alias = "LINIR")]
400pub type Linir = crate::Reg<linir::LinirSpec>;
401#[doc = "LIN Identifier Register"]
402pub mod linir;
403#[doc = "LINBRR (r) register accessor: LIN Baud Rate Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`linbrr::R`].  See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@linbrr`]
404module"]
405#[doc(alias = "LINBRR")]
406pub type Linbrr = crate::Reg<linbrr::LinbrrSpec>;
407#[doc = "LIN Baud Rate Register"]
408pub mod linbrr;
409#[doc = "WPMR (rw) register accessor: Write Protection Mode Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`wpmr::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 [`wpmr::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@wpmr`]
410module"]
411#[doc(alias = "WPMR")]
412pub type Wpmr = crate::Reg<wpmr::WpmrSpec>;
413#[doc = "Write Protection Mode Register"]
414pub mod wpmr;
415#[doc = "WPSR (r) register accessor: Write Protection Status Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`wpsr::R`].  See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@wpsr`]
416module"]
417#[doc(alias = "WPSR")]
418pub type Wpsr = crate::Reg<wpsr::WpsrSpec>;
419#[doc = "Write Protection Status Register"]
420pub mod wpsr;
421#[doc = "RPR (rw) register accessor: Receive Pointer Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`rpr::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 [`rpr::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@rpr`]
422module"]
423#[doc(alias = "RPR")]
424pub type Rpr = crate::Reg<rpr::RprSpec>;
425#[doc = "Receive Pointer Register"]
426pub mod rpr;
427#[doc = "RCR (rw) register accessor: Receive Counter Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`rcr::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 [`rcr::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@rcr`]
428module"]
429#[doc(alias = "RCR")]
430pub type Rcr = crate::Reg<rcr::RcrSpec>;
431#[doc = "Receive Counter Register"]
432pub mod rcr;
433#[doc = "TPR (rw) register accessor: Transmit Pointer Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`tpr::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 [`tpr::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@tpr`]
434module"]
435#[doc(alias = "TPR")]
436pub type Tpr = crate::Reg<tpr::TprSpec>;
437#[doc = "Transmit Pointer Register"]
438pub mod tpr;
439#[doc = "TCR (rw) register accessor: Transmit Counter Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`tcr::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 [`tcr::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@tcr`]
440module"]
441#[doc(alias = "TCR")]
442pub type Tcr = crate::Reg<tcr::TcrSpec>;
443#[doc = "Transmit Counter Register"]
444pub mod tcr;
445#[doc = "RNPR (rw) register accessor: Receive Next Pointer Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`rnpr::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 [`rnpr::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@rnpr`]
446module"]
447#[doc(alias = "RNPR")]
448pub type Rnpr = crate::Reg<rnpr::RnprSpec>;
449#[doc = "Receive Next Pointer Register"]
450pub mod rnpr;
451#[doc = "RNCR (rw) register accessor: Receive Next Counter Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`rncr::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 [`rncr::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@rncr`]
452module"]
453#[doc(alias = "RNCR")]
454pub type Rncr = crate::Reg<rncr::RncrSpec>;
455#[doc = "Receive Next Counter Register"]
456pub mod rncr;
457#[doc = "TNPR (rw) register accessor: Transmit Next Pointer Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`tnpr::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 [`tnpr::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@tnpr`]
458module"]
459#[doc(alias = "TNPR")]
460pub type Tnpr = crate::Reg<tnpr::TnprSpec>;
461#[doc = "Transmit Next Pointer Register"]
462pub mod tnpr;
463#[doc = "TNCR (rw) register accessor: Transmit Next Counter Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`tncr::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 [`tncr::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@tncr`]
464module"]
465#[doc(alias = "TNCR")]
466pub type Tncr = crate::Reg<tncr::TncrSpec>;
467#[doc = "Transmit Next Counter Register"]
468pub mod tncr;
469#[doc = "PTCR (w) register accessor: Transfer Control Register\n\nYou can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`ptcr::W`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@ptcr`]
470module"]
471#[doc(alias = "PTCR")]
472pub type Ptcr = crate::Reg<ptcr::PtcrSpec>;
473#[doc = "Transfer Control Register"]
474pub mod ptcr;
475#[doc = "PTSR (r) register accessor: Transfer Status Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`ptsr::R`].  See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@ptsr`]
476module"]
477#[doc(alias = "PTSR")]
478pub type Ptsr = crate::Reg<ptsr::PtsrSpec>;
479#[doc = "Transfer Status Register"]
480pub mod ptsr;