swm341_pac/
uart0.rs

1#[doc = r"Register block"]
2#[repr(C)]
3pub struct RegisterBlock {
4    #[doc = "0x00 - DATA register"]
5    pub data: DATA,
6    #[doc = "0x04 - CTRL register"]
7    pub ctrl: CTRL,
8    #[doc = "0x08 - BAUD register"]
9    pub baud: BAUD,
10    #[doc = "0x0c - FIFO register"]
11    pub fifo: FIFO,
12    #[doc = "0x10 - LINCR register"]
13    pub lincr: LINCR,
14    _reserved_5_ctscr: [u8; 0x04],
15    #[doc = "0x18 - CFG register"]
16    pub cfg: CFG,
17    #[doc = "0x1c - TOCR register"]
18    pub tocr: TOCR,
19}
20impl RegisterBlock {
21    #[doc = "0x14 - RTSCR register"]
22    #[inline(always)]
23    pub fn rtscr(&self) -> &RTSCR {
24        unsafe { &*(((self as *const Self) as *const u8).add(20usize) as *const RTSCR) }
25    }
26    #[doc = "0x14 - CTSCR register"]
27    #[inline(always)]
28    pub fn ctscr(&self) -> &CTSCR {
29        unsafe { &*(((self as *const Self) as *const u8).add(20usize) as *const CTSCR) }
30    }
31}
32#[doc = "DATA (rw) register accessor: an alias for `Reg<DATA_SPEC>`"]
33pub type DATA = crate::Reg<data::DATA_SPEC>;
34#[doc = "DATA register"]
35pub mod data;
36#[doc = "CTRL (rw) register accessor: an alias for `Reg<CTRL_SPEC>`"]
37pub type CTRL = crate::Reg<ctrl::CTRL_SPEC>;
38#[doc = "CTRL register"]
39pub mod ctrl;
40#[doc = "BAUD (rw) register accessor: an alias for `Reg<BAUD_SPEC>`"]
41pub type BAUD = crate::Reg<baud::BAUD_SPEC>;
42#[doc = "BAUD register"]
43pub mod baud;
44#[doc = "FIFO (rw) register accessor: an alias for `Reg<FIFO_SPEC>`"]
45pub type FIFO = crate::Reg<fifo::FIFO_SPEC>;
46#[doc = "FIFO register"]
47pub mod fifo;
48#[doc = "LINCR (rw) register accessor: an alias for `Reg<LINCR_SPEC>`"]
49pub type LINCR = crate::Reg<lincr::LINCR_SPEC>;
50#[doc = "LINCR register"]
51pub mod lincr;
52#[doc = "CTSCR (rw) register accessor: an alias for `Reg<CTSCR_SPEC>`"]
53pub type CTSCR = crate::Reg<ctscr::CTSCR_SPEC>;
54#[doc = "CTSCR register"]
55pub mod ctscr;
56#[doc = "RTSCR (rw) register accessor: an alias for `Reg<RTSCR_SPEC>`"]
57pub type RTSCR = crate::Reg<rtscr::RTSCR_SPEC>;
58#[doc = "RTSCR register"]
59pub mod rtscr;
60#[doc = "CFG (rw) register accessor: an alias for `Reg<CFG_SPEC>`"]
61pub type CFG = crate::Reg<cfg::CFG_SPEC>;
62#[doc = "CFG register"]
63pub mod cfg;
64#[doc = "TOCR (rw) register accessor: an alias for `Reg<TOCR_SPEC>`"]
65pub type TOCR = crate::Reg<tocr::TOCR_SPEC>;
66#[doc = "TOCR register"]
67pub mod tocr;