1#[repr(C)]
2#[doc = "Register block"]
3pub struct RegisterBlock {
4 ctrl: Ctrl,
5 status: Status,
6 nmictrl: Nmictrl,
7 nmiflag: Nmiflag,
8 evctrl: Evctrl,
9 intenclr: Intenclr,
10 intenset: Intenset,
11 intflag: Intflag,
12 wakeup: Wakeup,
13 config: [Config; 1],
14}
15impl RegisterBlock {
16 #[doc = "0x00 - Control"]
17 #[inline(always)]
18 pub const fn ctrl(&self) -> &Ctrl {
19 &self.ctrl
20 }
21 #[doc = "0x01 - Status"]
22 #[inline(always)]
23 pub const fn status(&self) -> &Status {
24 &self.status
25 }
26 #[doc = "0x02 - Non-Maskable Interrupt Control"]
27 #[inline(always)]
28 pub const fn nmictrl(&self) -> &Nmictrl {
29 &self.nmictrl
30 }
31 #[doc = "0x03 - Non-Maskable Interrupt Flag Status and Clear"]
32 #[inline(always)]
33 pub const fn nmiflag(&self) -> &Nmiflag {
34 &self.nmiflag
35 }
36 #[doc = "0x04 - Event Control"]
37 #[inline(always)]
38 pub const fn evctrl(&self) -> &Evctrl {
39 &self.evctrl
40 }
41 #[doc = "0x08 - Interrupt Enable Clear"]
42 #[inline(always)]
43 pub const fn intenclr(&self) -> &Intenclr {
44 &self.intenclr
45 }
46 #[doc = "0x0c - Interrupt Enable Set"]
47 #[inline(always)]
48 pub const fn intenset(&self) -> &Intenset {
49 &self.intenset
50 }
51 #[doc = "0x10 - Interrupt Flag Status and Clear"]
52 #[inline(always)]
53 pub const fn intflag(&self) -> &Intflag {
54 &self.intflag
55 }
56 #[doc = "0x14 - Wake-Up Enable"]
57 #[inline(always)]
58 pub const fn wakeup(&self) -> &Wakeup {
59 &self.wakeup
60 }
61 #[doc = "0x18 - Configuration n"]
62 #[inline(always)]
63 pub const fn config(&self, n: usize) -> &Config {
64 &self.config[n]
65 }
66 #[doc = "Iterator for array of:"]
67 #[doc = "0x18 - Configuration n"]
68 #[inline(always)]
69 pub fn config_iter(&self) -> impl Iterator<Item = &Config> {
70 self.config.iter()
71 }
72}
73#[doc = "CTRL (rw) register accessor: Control\n\nYou can [`read`](crate::Reg::read) this register and get [`ctrl::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`ctrl::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@ctrl`]
74module"]
75#[doc(alias = "CTRL")]
76pub type Ctrl = crate::Reg<ctrl::CtrlSpec>;
77#[doc = "Control"]
78pub mod ctrl;
79#[doc = "STATUS (r) register accessor: Status\n\nYou can [`read`](crate::Reg::read) this register and get [`status::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@status`]
80module"]
81#[doc(alias = "STATUS")]
82pub type Status = crate::Reg<status::StatusSpec>;
83#[doc = "Status"]
84pub mod status;
85#[doc = "NMICTRL (rw) register accessor: Non-Maskable Interrupt Control\n\nYou can [`read`](crate::Reg::read) this register and get [`nmictrl::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`nmictrl::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@nmictrl`]
86module"]
87#[doc(alias = "NMICTRL")]
88pub type Nmictrl = crate::Reg<nmictrl::NmictrlSpec>;
89#[doc = "Non-Maskable Interrupt Control"]
90pub mod nmictrl;
91#[doc = "NMIFLAG (rw) register accessor: Non-Maskable Interrupt Flag Status and Clear\n\nYou can [`read`](crate::Reg::read) this register and get [`nmiflag::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`nmiflag::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@nmiflag`]
92module"]
93#[doc(alias = "NMIFLAG")]
94pub type Nmiflag = crate::Reg<nmiflag::NmiflagSpec>;
95#[doc = "Non-Maskable Interrupt Flag Status and Clear"]
96pub mod nmiflag;
97#[doc = "EVCTRL (rw) register accessor: Event Control\n\nYou can [`read`](crate::Reg::read) this register and get [`evctrl::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`evctrl::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@evctrl`]
98module"]
99#[doc(alias = "EVCTRL")]
100pub type Evctrl = crate::Reg<evctrl::EvctrlSpec>;
101#[doc = "Event Control"]
102pub mod evctrl;
103#[doc = "INTENCLR (rw) register accessor: Interrupt Enable Clear\n\nYou can [`read`](crate::Reg::read) this register and get [`intenclr::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`intenclr::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@intenclr`]
104module"]
105#[doc(alias = "INTENCLR")]
106pub type Intenclr = crate::Reg<intenclr::IntenclrSpec>;
107#[doc = "Interrupt Enable Clear"]
108pub mod intenclr;
109#[doc = "INTENSET (rw) register accessor: Interrupt Enable Set\n\nYou can [`read`](crate::Reg::read) this register and get [`intenset::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`intenset::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@intenset`]
110module"]
111#[doc(alias = "INTENSET")]
112pub type Intenset = crate::Reg<intenset::IntensetSpec>;
113#[doc = "Interrupt Enable Set"]
114pub mod intenset;
115#[doc = "INTFLAG (rw) register accessor: Interrupt Flag Status and Clear\n\nYou can [`read`](crate::Reg::read) this register and get [`intflag::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`intflag::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@intflag`]
116module"]
117#[doc(alias = "INTFLAG")]
118pub type Intflag = crate::Reg<intflag::IntflagSpec>;
119#[doc = "Interrupt Flag Status and Clear"]
120pub mod intflag;
121#[doc = "WAKEUP (rw) register accessor: Wake-Up Enable\n\nYou can [`read`](crate::Reg::read) this register and get [`wakeup::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`wakeup::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@wakeup`]
122module"]
123#[doc(alias = "WAKEUP")]
124pub type Wakeup = crate::Reg<wakeup::WakeupSpec>;
125#[doc = "Wake-Up Enable"]
126pub mod wakeup;
127#[doc = "CONFIG (rw) register accessor: Configuration n\n\nYou can [`read`](crate::Reg::read) this register and get [`config::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`config::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@config`]
128module"]
129#[doc(alias = "CONFIG")]
130pub type Config = crate::Reg<config::ConfigSpec>;
131#[doc = "Configuration n"]
132pub mod config;