1#[repr(C)]
2#[doc = "Register block"]
3pub struct RegisterBlock {
4 ctrl: Ctrl,
5 status: Status,
6 data: Data,
7 intr: Intr,
8 limit: [Limit; 4],
9}
10impl RegisterBlock {
11 #[doc = "0x00 - ADC Control"]
12 #[inline(always)]
13 pub const fn ctrl(&self) -> &Ctrl {
14 &self.ctrl
15 }
16 #[doc = "0x04 - ADC Status"]
17 #[inline(always)]
18 pub const fn status(&self) -> &Status {
19 &self.status
20 }
21 #[doc = "0x08 - ADC Output Data"]
22 #[inline(always)]
23 pub const fn data(&self) -> &Data {
24 &self.data
25 }
26 #[doc = "0x0c - ADC Interrupt Control Register"]
27 #[inline(always)]
28 pub const fn intr(&self) -> &Intr {
29 &self.intr
30 }
31 #[doc = "0x10..0x20 - ADC Limit"]
32 #[inline(always)]
33 pub const fn limit(&self, n: usize) -> &Limit {
34 &self.limit[n]
35 }
36 #[doc = "Iterator for array of:"]
37 #[doc = "0x10..0x20 - ADC Limit"]
38 #[inline(always)]
39 pub fn limit_iter(&self) -> impl Iterator<Item = &Limit> {
40 self.limit.iter()
41 }
42}
43#[doc = "CTRL (rw) register accessor: ADC 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`]
44module"]
45#[doc(alias = "CTRL")]
46pub type Ctrl = crate::Reg<ctrl::CtrlSpec>;
47#[doc = "ADC Control"]
48pub mod ctrl;
49#[doc = "STATUS (rw) register accessor: ADC Status\n\nYou can [`read`](crate::Reg::read) this register and get [`status::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`status::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@status`]
50module"]
51#[doc(alias = "STATUS")]
52pub type Status = crate::Reg<status::StatusSpec>;
53#[doc = "ADC Status"]
54pub mod status;
55#[doc = "DATA (rw) register accessor: ADC Output Data\n\nYou can [`read`](crate::Reg::read) this register and get [`data::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data::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@data`]
56module"]
57#[doc(alias = "DATA")]
58pub type Data = crate::Reg<data::DataSpec>;
59#[doc = "ADC Output Data"]
60pub mod data;
61#[doc = "INTR (rw) register accessor: ADC Interrupt Control Register\n\nYou can [`read`](crate::Reg::read) this register and get [`intr::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`intr::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@intr`]
62module"]
63#[doc(alias = "INTR")]
64pub type Intr = crate::Reg<intr::IntrSpec>;
65#[doc = "ADC Interrupt Control Register"]
66pub mod intr;
67#[doc = "LIMIT (rw) register accessor: ADC Limit\n\nYou can [`read`](crate::Reg::read) this register and get [`limit::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`limit::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@limit`]
68module"]
69#[doc(alias = "LIMIT")]
70pub type Limit = crate::Reg<limit::LimitSpec>;
71#[doc = "ADC Limit"]
72pub mod limit;