efm32tg842_pac/
timer1.rs

1#[doc = r"Register block"]
2#[repr(C)]
3pub struct RegisterBlock {
4    #[doc = "0x00 - Control Register"]
5    pub ctrl: crate::Reg<ctrl::CTRL_SPEC>,
6    #[doc = "0x04 - Command Register"]
7    pub cmd: crate::Reg<cmd::CMD_SPEC>,
8    #[doc = "0x08 - Status Register"]
9    pub status: crate::Reg<status::STATUS_SPEC>,
10    #[doc = "0x0c - Interrupt Enable Register"]
11    pub ien: crate::Reg<ien::IEN_SPEC>,
12    #[doc = "0x10 - Interrupt Flag Register"]
13    pub if_: crate::Reg<if_::IF_SPEC>,
14    #[doc = "0x14 - Interrupt Flag Set Register"]
15    pub ifs: crate::Reg<ifs::IFS_SPEC>,
16    #[doc = "0x18 - Interrupt Flag Clear Register"]
17    pub ifc: crate::Reg<ifc::IFC_SPEC>,
18    #[doc = "0x1c - Counter Top Value Register"]
19    pub top: crate::Reg<top::TOP_SPEC>,
20    #[doc = "0x20 - Counter Top Value Buffer Register"]
21    pub topb: crate::Reg<topb::TOPB_SPEC>,
22    #[doc = "0x24 - Counter Value Register"]
23    pub cnt: crate::Reg<cnt::CNT_SPEC>,
24    #[doc = "0x28 - I/O Routing Register"]
25    pub route: crate::Reg<route::ROUTE_SPEC>,
26    _reserved11: [u8; 0x04],
27    #[doc = "0x30 - CC Channel Control Register"]
28    pub cc0_ctrl: crate::Reg<cc0_ctrl::CC0_CTRL_SPEC>,
29    #[doc = "0x34 - CC Channel Value Register"]
30    pub cc0_ccv: crate::Reg<cc0_ccv::CC0_CCV_SPEC>,
31    #[doc = "0x38 - CC Channel Value Peek Register"]
32    pub cc0_ccvp: crate::Reg<cc0_ccvp::CC0_CCVP_SPEC>,
33    #[doc = "0x3c - CC Channel Buffer Register"]
34    pub cc0_ccvb: crate::Reg<cc0_ccvb::CC0_CCVB_SPEC>,
35    #[doc = "0x40 - CC Channel Control Register"]
36    pub cc1_ctrl: crate::Reg<cc1_ctrl::CC1_CTRL_SPEC>,
37    #[doc = "0x44 - CC Channel Value Register"]
38    pub cc1_ccv: crate::Reg<cc1_ccv::CC1_CCV_SPEC>,
39    #[doc = "0x48 - CC Channel Value Peek Register"]
40    pub cc1_ccvp: crate::Reg<cc1_ccvp::CC1_CCVP_SPEC>,
41    #[doc = "0x4c - CC Channel Buffer Register"]
42    pub cc1_ccvb: crate::Reg<cc1_ccvb::CC1_CCVB_SPEC>,
43    #[doc = "0x50 - CC Channel Control Register"]
44    pub cc2_ctrl: crate::Reg<cc2_ctrl::CC2_CTRL_SPEC>,
45    #[doc = "0x54 - CC Channel Value Register"]
46    pub cc2_ccv: crate::Reg<cc2_ccv::CC2_CCV_SPEC>,
47    #[doc = "0x58 - CC Channel Value Peek Register"]
48    pub cc2_ccvp: crate::Reg<cc2_ccvp::CC2_CCVP_SPEC>,
49    #[doc = "0x5c - CC Channel Buffer Register"]
50    pub cc2_ccvb: crate::Reg<cc2_ccvb::CC2_CCVB_SPEC>,
51}
52#[doc = "CTRL register accessor: an alias for `Reg<CTRL_SPEC>`"]
53pub type CTRL = crate::Reg<ctrl::CTRL_SPEC>;
54#[doc = "Control Register"]
55pub mod ctrl;
56#[doc = "CMD register accessor: an alias for `Reg<CMD_SPEC>`"]
57pub type CMD = crate::Reg<cmd::CMD_SPEC>;
58#[doc = "Command Register"]
59pub mod cmd;
60#[doc = "STATUS register accessor: an alias for `Reg<STATUS_SPEC>`"]
61pub type STATUS = crate::Reg<status::STATUS_SPEC>;
62#[doc = "Status Register"]
63pub mod status;
64#[doc = "IEN register accessor: an alias for `Reg<IEN_SPEC>`"]
65pub type IEN = crate::Reg<ien::IEN_SPEC>;
66#[doc = "Interrupt Enable Register"]
67pub mod ien;
68#[doc = "IF register accessor: an alias for `Reg<IF_SPEC>`"]
69pub type IF = crate::Reg<if_::IF_SPEC>;
70#[doc = "Interrupt Flag Register"]
71pub mod if_;
72#[doc = "IFS register accessor: an alias for `Reg<IFS_SPEC>`"]
73pub type IFS = crate::Reg<ifs::IFS_SPEC>;
74#[doc = "Interrupt Flag Set Register"]
75pub mod ifs;
76#[doc = "IFC register accessor: an alias for `Reg<IFC_SPEC>`"]
77pub type IFC = crate::Reg<ifc::IFC_SPEC>;
78#[doc = "Interrupt Flag Clear Register"]
79pub mod ifc;
80#[doc = "TOP register accessor: an alias for `Reg<TOP_SPEC>`"]
81pub type TOP = crate::Reg<top::TOP_SPEC>;
82#[doc = "Counter Top Value Register"]
83pub mod top;
84#[doc = "TOPB register accessor: an alias for `Reg<TOPB_SPEC>`"]
85pub type TOPB = crate::Reg<topb::TOPB_SPEC>;
86#[doc = "Counter Top Value Buffer Register"]
87pub mod topb;
88#[doc = "CNT register accessor: an alias for `Reg<CNT_SPEC>`"]
89pub type CNT = crate::Reg<cnt::CNT_SPEC>;
90#[doc = "Counter Value Register"]
91pub mod cnt;
92#[doc = "ROUTE register accessor: an alias for `Reg<ROUTE_SPEC>`"]
93pub type ROUTE = crate::Reg<route::ROUTE_SPEC>;
94#[doc = "I/O Routing Register"]
95pub mod route;
96#[doc = "CC0_CTRL register accessor: an alias for `Reg<CC0_CTRL_SPEC>`"]
97pub type CC0_CTRL = crate::Reg<cc0_ctrl::CC0_CTRL_SPEC>;
98#[doc = "CC Channel Control Register"]
99pub mod cc0_ctrl;
100#[doc = "CC0_CCV register accessor: an alias for `Reg<CC0_CCV_SPEC>`"]
101pub type CC0_CCV = crate::Reg<cc0_ccv::CC0_CCV_SPEC>;
102#[doc = "CC Channel Value Register"]
103pub mod cc0_ccv;
104#[doc = "CC0_CCVP register accessor: an alias for `Reg<CC0_CCVP_SPEC>`"]
105pub type CC0_CCVP = crate::Reg<cc0_ccvp::CC0_CCVP_SPEC>;
106#[doc = "CC Channel Value Peek Register"]
107pub mod cc0_ccvp;
108#[doc = "CC0_CCVB register accessor: an alias for `Reg<CC0_CCVB_SPEC>`"]
109pub type CC0_CCVB = crate::Reg<cc0_ccvb::CC0_CCVB_SPEC>;
110#[doc = "CC Channel Buffer Register"]
111pub mod cc0_ccvb;
112#[doc = "CC1_CTRL register accessor: an alias for `Reg<CC1_CTRL_SPEC>`"]
113pub type CC1_CTRL = crate::Reg<cc1_ctrl::CC1_CTRL_SPEC>;
114#[doc = "CC Channel Control Register"]
115pub mod cc1_ctrl;
116#[doc = "CC1_CCV register accessor: an alias for `Reg<CC1_CCV_SPEC>`"]
117pub type CC1_CCV = crate::Reg<cc1_ccv::CC1_CCV_SPEC>;
118#[doc = "CC Channel Value Register"]
119pub mod cc1_ccv;
120#[doc = "CC1_CCVP register accessor: an alias for `Reg<CC1_CCVP_SPEC>`"]
121pub type CC1_CCVP = crate::Reg<cc1_ccvp::CC1_CCVP_SPEC>;
122#[doc = "CC Channel Value Peek Register"]
123pub mod cc1_ccvp;
124#[doc = "CC1_CCVB register accessor: an alias for `Reg<CC1_CCVB_SPEC>`"]
125pub type CC1_CCVB = crate::Reg<cc1_ccvb::CC1_CCVB_SPEC>;
126#[doc = "CC Channel Buffer Register"]
127pub mod cc1_ccvb;
128#[doc = "CC2_CTRL register accessor: an alias for `Reg<CC2_CTRL_SPEC>`"]
129pub type CC2_CTRL = crate::Reg<cc2_ctrl::CC2_CTRL_SPEC>;
130#[doc = "CC Channel Control Register"]
131pub mod cc2_ctrl;
132#[doc = "CC2_CCV register accessor: an alias for `Reg<CC2_CCV_SPEC>`"]
133pub type CC2_CCV = crate::Reg<cc2_ccv::CC2_CCV_SPEC>;
134#[doc = "CC Channel Value Register"]
135pub mod cc2_ccv;
136#[doc = "CC2_CCVP register accessor: an alias for `Reg<CC2_CCVP_SPEC>`"]
137pub type CC2_CCVP = crate::Reg<cc2_ccvp::CC2_CCVP_SPEC>;
138#[doc = "CC Channel Value Peek Register"]
139pub mod cc2_ccvp;
140#[doc = "CC2_CCVB register accessor: an alias for `Reg<CC2_CCVB_SPEC>`"]
141pub type CC2_CCVB = crate::Reg<cc2_ccvb::CC2_CCVB_SPEC>;
142#[doc = "CC Channel Buffer Register"]
143pub mod cc2_ccvb;