1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
#[doc = r"Register block"]
#[repr(C)]
pub struct RegisterBlock {
    _reserved_0_usart0: [u8; 0x04],
    #[doc = "0x04 - USART0_IER"]
    pub usart0_ier: USART0_IER,
    #[doc = "0x08 - USART0_IIR"]
    pub usart0_iir: USART0_IIR,
    #[doc = "0x0c - USART0_FCR"]
    pub usart0_fcr: USART0_FCR,
    #[doc = "0x10 - USART0_LCR"]
    pub usart0_lcr: USART0_LCR,
    #[doc = "0x14 - USART0_MODCR"]
    pub usart0_modcr: USART0_MODCR,
    #[doc = "0x18 - USART0_LSR"]
    pub usart0_lsr: USART0_LSR,
    #[doc = "0x1c - USART0_MODSR"]
    pub usart0_modsr: USART0_MODSR,
    #[doc = "0x20 - USART0_TPR"]
    pub usart0_tpr: USART0_TPR,
    #[doc = "0x24 - USART0_MDR"]
    pub usart0_mdr: USART0_MDR,
    #[doc = "0x28 - USART0_IrDACR"]
    pub usart0_ir_dacr: USART0_IR_DACR,
    #[doc = "0x2c - USART0_RS485CR"]
    pub usart0_rs485cr: USART0_RS485CR,
    #[doc = "0x30 - USART0_SYNCR"]
    pub usart0_syncr: USART0_SYNCR,
    #[doc = "0x34 - USART0_FSR"]
    pub usart0_fsr: USART0_FSR,
    #[doc = "0x38 - USART0_DLR"]
    pub usart0_dlr: USART0_DLR,
    _reserved15: [u8; 0x04],
    #[doc = "0x40 - USART0_DEGTSTR"]
    pub usart0_degtstr: USART0_DEGTSTR,
}
impl RegisterBlock {
    #[doc = "0x00 - USART0_TBR"]
    #[inline(always)]
    pub const fn usart0_usart0_tbr(&self) -> &USART0_USART0_TBR {
        unsafe { &*(self as *const Self).cast::<u8>().add(0usize).cast() }
    }
    #[doc = "0x00 - USART0_RBR"]
    #[inline(always)]
    pub const fn usart0_rbr(&self) -> &USART0_RBR {
        unsafe { &*(self as *const Self).cast::<u8>().add(0usize).cast() }
    }
}
#[doc = "USART0_RBR (rw) register accessor: an alias for `Reg<USART0_RBR_SPEC>`"]
pub type USART0_RBR = crate::Reg<usart0_rbr::USART0_RBR_SPEC>;
#[doc = "USART0_RBR"]
pub mod usart0_rbr;
#[doc = "USART0_USART0_TBR (rw) register accessor: an alias for `Reg<USART0_USART0_TBR_SPEC>`"]
pub type USART0_USART0_TBR = crate::Reg<usart0_usart0_tbr::USART0_USART0_TBR_SPEC>;
#[doc = "USART0_TBR"]
pub mod usart0_usart0_tbr;
#[doc = "USART0_IER (rw) register accessor: an alias for `Reg<USART0_IER_SPEC>`"]
pub type USART0_IER = crate::Reg<usart0_ier::USART0_IER_SPEC>;
#[doc = "USART0_IER"]
pub mod usart0_ier;
#[doc = "USART0_IIR (rw) register accessor: an alias for `Reg<USART0_IIR_SPEC>`"]
pub type USART0_IIR = crate::Reg<usart0_iir::USART0_IIR_SPEC>;
#[doc = "USART0_IIR"]
pub mod usart0_iir;
#[doc = "USART0_FCR (rw) register accessor: an alias for `Reg<USART0_FCR_SPEC>`"]
pub type USART0_FCR = crate::Reg<usart0_fcr::USART0_FCR_SPEC>;
#[doc = "USART0_FCR"]
pub mod usart0_fcr;
#[doc = "USART0_LCR (rw) register accessor: an alias for `Reg<USART0_LCR_SPEC>`"]
pub type USART0_LCR = crate::Reg<usart0_lcr::USART0_LCR_SPEC>;
#[doc = "USART0_LCR"]
pub mod usart0_lcr;
#[doc = "USART0_MODCR (rw) register accessor: an alias for `Reg<USART0_MODCR_SPEC>`"]
pub type USART0_MODCR = crate::Reg<usart0_modcr::USART0_MODCR_SPEC>;
#[doc = "USART0_MODCR"]
pub mod usart0_modcr;
#[doc = "USART0_LSR (rw) register accessor: an alias for `Reg<USART0_LSR_SPEC>`"]
pub type USART0_LSR = crate::Reg<usart0_lsr::USART0_LSR_SPEC>;
#[doc = "USART0_LSR"]
pub mod usart0_lsr;
#[doc = "USART0_MODSR (rw) register accessor: an alias for `Reg<USART0_MODSR_SPEC>`"]
pub type USART0_MODSR = crate::Reg<usart0_modsr::USART0_MODSR_SPEC>;
#[doc = "USART0_MODSR"]
pub mod usart0_modsr;
#[doc = "USART0_TPR (rw) register accessor: an alias for `Reg<USART0_TPR_SPEC>`"]
pub type USART0_TPR = crate::Reg<usart0_tpr::USART0_TPR_SPEC>;
#[doc = "USART0_TPR"]
pub mod usart0_tpr;
#[doc = "USART0_MDR (rw) register accessor: an alias for `Reg<USART0_MDR_SPEC>`"]
pub type USART0_MDR = crate::Reg<usart0_mdr::USART0_MDR_SPEC>;
#[doc = "USART0_MDR"]
pub mod usart0_mdr;
#[doc = "USART0_IrDACR (rw) register accessor: an alias for `Reg<USART0_IR_DACR_SPEC>`"]
pub type USART0_IR_DACR = crate::Reg<usart0_ir_dacr::USART0_IR_DACR_SPEC>;
#[doc = "USART0_IrDACR"]
pub mod usart0_ir_dacr;
#[doc = "USART0_RS485CR (rw) register accessor: an alias for `Reg<USART0_RS485CR_SPEC>`"]
pub type USART0_RS485CR = crate::Reg<usart0_rs485cr::USART0_RS485CR_SPEC>;
#[doc = "USART0_RS485CR"]
pub mod usart0_rs485cr;
#[doc = "USART0_SYNCR (rw) register accessor: an alias for `Reg<USART0_SYNCR_SPEC>`"]
pub type USART0_SYNCR = crate::Reg<usart0_syncr::USART0_SYNCR_SPEC>;
#[doc = "USART0_SYNCR"]
pub mod usart0_syncr;
#[doc = "USART0_FSR (rw) register accessor: an alias for `Reg<USART0_FSR_SPEC>`"]
pub type USART0_FSR = crate::Reg<usart0_fsr::USART0_FSR_SPEC>;
#[doc = "USART0_FSR"]
pub mod usart0_fsr;
#[doc = "USART0_DLR (rw) register accessor: an alias for `Reg<USART0_DLR_SPEC>`"]
pub type USART0_DLR = crate::Reg<usart0_dlr::USART0_DLR_SPEC>;
#[doc = "USART0_DLR"]
pub mod usart0_dlr;
#[doc = "USART0_DEGTSTR (rw) register accessor: an alias for `Reg<USART0_DEGTSTR_SPEC>`"]
pub type USART0_DEGTSTR = crate::Reg<usart0_degtstr::USART0_DEGTSTR_SPEC>;
#[doc = "USART0_DEGTSTR"]
pub mod usart0_degtstr;