xmc4700/
scu_general.rs

1#[repr(C)]
2#[doc = "Register block"]
3pub struct RegisterBlock {
4    id: ID,
5    idchip: IDCHIP,
6    idmanuf: IDMANUF,
7    _reserved3: [u8; 0x04],
8    stcon: STCON,
9    _reserved4: [u8; 0x18],
10    gpr0: GPR0,
11    gpr1: GPR1,
12    _reserved6: [u8; 0x18],
13    ccucon: CCUCON,
14    _reserved7: [u8; 0x3c],
15    dtscon: DTSCON,
16    dtsstat: DTSSTAT,
17    _reserved9: [u8; 0x08],
18    sdmmcdel: SDMMCDEL,
19    g0orcen: G0ORCEN,
20    g1orcen: G1ORCEN,
21    _reserved12: [u8; 0x1c],
22    mirrsts: MIRRSTS,
23    rmacr: RMACR,
24    rmdata: RMDATA,
25}
26impl RegisterBlock {
27    #[doc = "0x00 - SCU Module ID Register"]
28    #[inline(always)]
29    pub const fn id(&self) -> &ID {
30        &self.id
31    }
32    #[doc = "0x04 - Chip ID Register"]
33    #[inline(always)]
34    pub const fn idchip(&self) -> &IDCHIP {
35        &self.idchip
36    }
37    #[doc = "0x08 - Manufactory ID Register"]
38    #[inline(always)]
39    pub const fn idmanuf(&self) -> &IDMANUF {
40        &self.idmanuf
41    }
42    #[doc = "0x10 - Startup Configuration Register"]
43    #[inline(always)]
44    pub const fn stcon(&self) -> &STCON {
45        &self.stcon
46    }
47    #[doc = "0x2c - General Purpose Register 0"]
48    #[inline(always)]
49    pub const fn gpr0(&self) -> &GPR0 {
50        &self.gpr0
51    }
52    #[doc = "0x30 - General Purpose Register 1"]
53    #[inline(always)]
54    pub const fn gpr1(&self) -> &GPR1 {
55        &self.gpr1
56    }
57    #[doc = "0x4c - CCU Control Register"]
58    #[inline(always)]
59    pub const fn ccucon(&self) -> &CCUCON {
60        &self.ccucon
61    }
62    #[doc = "0x8c - Die Temperature Sensor Control Register"]
63    #[inline(always)]
64    pub const fn dtscon(&self) -> &DTSCON {
65        &self.dtscon
66    }
67    #[doc = "0x90 - Die Temperature Sensor Status Register"]
68    #[inline(always)]
69    pub const fn dtsstat(&self) -> &DTSSTAT {
70        &self.dtsstat
71    }
72    #[doc = "0x9c - SD-MMC Delay Control Register"]
73    #[inline(always)]
74    pub const fn sdmmcdel(&self) -> &SDMMCDEL {
75        &self.sdmmcdel
76    }
77    #[doc = "0xa0 - Out of Range Comparator Enable Register 0"]
78    #[inline(always)]
79    pub const fn g0orcen(&self) -> &G0ORCEN {
80        &self.g0orcen
81    }
82    #[doc = "0xa4 - Out of Range Comparator Enable Register 1"]
83    #[inline(always)]
84    pub const fn g1orcen(&self) -> &G1ORCEN {
85        &self.g1orcen
86    }
87    #[doc = "0xc4 - Mirror Write Status Register"]
88    #[inline(always)]
89    pub const fn mirrsts(&self) -> &MIRRSTS {
90        &self.mirrsts
91    }
92    #[doc = "0xc8 - Retention Memory Access Control Register"]
93    #[inline(always)]
94    pub const fn rmacr(&self) -> &RMACR {
95        &self.rmacr
96    }
97    #[doc = "0xcc - Retention Memory Access Data Register"]
98    #[inline(always)]
99    pub const fn rmdata(&self) -> &RMDATA {
100        &self.rmdata
101    }
102}
103#[doc = "ID (r) register accessor: SCU Module ID Register\n\nYou can [`read`](crate::Reg::read) this register and get [`id::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id`]
104module"]
105pub type ID = crate::Reg<id::ID_SPEC>;
106#[doc = "SCU Module ID Register"]
107pub mod id;
108#[doc = "IDCHIP (r) register accessor: Chip ID Register\n\nYou can [`read`](crate::Reg::read) this register and get [`idchip::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@idchip`]
109module"]
110pub type IDCHIP = crate::Reg<idchip::IDCHIP_SPEC>;
111#[doc = "Chip ID Register"]
112pub mod idchip;
113#[doc = "IDMANUF (r) register accessor: Manufactory ID Register\n\nYou can [`read`](crate::Reg::read) this register and get [`idmanuf::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@idmanuf`]
114module"]
115pub type IDMANUF = crate::Reg<idmanuf::IDMANUF_SPEC>;
116#[doc = "Manufactory ID Register"]
117pub mod idmanuf;
118#[doc = "STCON (rw) register accessor: Startup Configuration Register\n\nYou can [`read`](crate::Reg::read) this register and get [`stcon::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`stcon::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@stcon`]
119module"]
120pub type STCON = crate::Reg<stcon::STCON_SPEC>;
121#[doc = "Startup Configuration Register"]
122pub mod stcon;
123#[doc = "GPR0 (rw) register accessor: General Purpose Register 0\n\nYou can [`read`](crate::Reg::read) this register and get [`gpr0::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`gpr0::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@gpr0`]
124module"]
125pub type GPR0 = crate::Reg<gpr0::GPR0_SPEC>;
126#[doc = "General Purpose Register 0"]
127pub mod gpr0;
128#[doc = "GPR1 (rw) register accessor: General Purpose Register 1\n\nYou can [`read`](crate::Reg::read) this register and get [`gpr1::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`gpr1::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@gpr1`]
129module"]
130pub type GPR1 = crate::Reg<gpr1::GPR1_SPEC>;
131#[doc = "General Purpose Register 1"]
132pub mod gpr1;
133#[doc = "CCUCON (rw) register accessor: CCU Control Register\n\nYou can [`read`](crate::Reg::read) this register and get [`ccucon::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`ccucon::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@ccucon`]
134module"]
135pub type CCUCON = crate::Reg<ccucon::CCUCON_SPEC>;
136#[doc = "CCU Control Register"]
137pub mod ccucon;
138#[doc = "DTSCON (rw) register accessor: Die Temperature Sensor Control Register\n\nYou can [`read`](crate::Reg::read) this register and get [`dtscon::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`dtscon::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@dtscon`]
139module"]
140pub type DTSCON = crate::Reg<dtscon::DTSCON_SPEC>;
141#[doc = "Die Temperature Sensor Control Register"]
142pub mod dtscon;
143#[doc = "DTSSTAT (r) register accessor: Die Temperature Sensor Status Register\n\nYou can [`read`](crate::Reg::read) this register and get [`dtsstat::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@dtsstat`]
144module"]
145pub type DTSSTAT = crate::Reg<dtsstat::DTSSTAT_SPEC>;
146#[doc = "Die Temperature Sensor Status Register"]
147pub mod dtsstat;
148#[doc = "SDMMCDEL (rw) register accessor: SD-MMC Delay Control Register\n\nYou can [`read`](crate::Reg::read) this register and get [`sdmmcdel::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`sdmmcdel::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@sdmmcdel`]
149module"]
150pub type SDMMCDEL = crate::Reg<sdmmcdel::SDMMCDEL_SPEC>;
151#[doc = "SD-MMC Delay Control Register"]
152pub mod sdmmcdel;
153#[doc = "G0ORCEN (rw) register accessor: Out of Range Comparator Enable Register 0\n\nYou can [`read`](crate::Reg::read) this register and get [`g0orcen::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`g0orcen::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@g0orcen`]
154module"]
155pub type G0ORCEN = crate::Reg<g0orcen::G0ORCEN_SPEC>;
156#[doc = "Out of Range Comparator Enable Register 0"]
157pub mod g0orcen;
158#[doc = "G1ORCEN (rw) register accessor: Out of Range Comparator Enable Register 1\n\nYou can [`read`](crate::Reg::read) this register and get [`g1orcen::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`g1orcen::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@g1orcen`]
159module"]
160pub type G1ORCEN = crate::Reg<g1orcen::G1ORCEN_SPEC>;
161#[doc = "Out of Range Comparator Enable Register 1"]
162pub mod g1orcen;
163#[doc = "MIRRSTS (r) register accessor: Mirror Write Status Register\n\nYou can [`read`](crate::Reg::read) this register and get [`mirrsts::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@mirrsts`]
164module"]
165pub type MIRRSTS = crate::Reg<mirrsts::MIRRSTS_SPEC>;
166#[doc = "Mirror Write Status Register"]
167pub mod mirrsts;
168#[doc = "RMACR (rw) register accessor: Retention Memory Access Control Register\n\nYou can [`read`](crate::Reg::read) this register and get [`rmacr::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`rmacr::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@rmacr`]
169module"]
170pub type RMACR = crate::Reg<rmacr::RMACR_SPEC>;
171#[doc = "Retention Memory Access Control Register"]
172pub mod rmacr;
173#[doc = "RMDATA (rw) register accessor: Retention Memory Access Data Register\n\nYou can [`read`](crate::Reg::read) this register and get [`rmdata::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`rmdata::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@rmdata`]
174module"]
175pub type RMDATA = crate::Reg<rmdata::RMDATA_SPEC>;
176#[doc = "Retention Memory Access Data Register"]
177pub mod rmdata;