mcxa_pac/
cmp0.rs

1#[repr(C)]
2#[cfg_attr(feature = "debug", derive(Debug))]
3#[doc = "Register block"]
4pub struct RegisterBlock {
5    verid: Verid,
6    param: Param,
7    ccr0: Ccr0,
8    ccr1: Ccr1,
9    ccr2: Ccr2,
10    _reserved5: [u8; 0x04],
11    dcr: Dcr,
12    ier: Ier,
13    csr: Csr,
14    rrcr0: Rrcr0,
15    rrcr1: Rrcr1,
16    rrcsr: Rrcsr,
17    rrsr: Rrsr,
18    _reserved12: [u8; 0x04],
19    rrcr2: Rrcr2,
20}
21impl RegisterBlock {
22    #[doc = "0x00 - Version ID"]
23    #[inline(always)]
24    pub const fn verid(&self) -> &Verid {
25        &self.verid
26    }
27    #[doc = "0x04 - Parameter"]
28    #[inline(always)]
29    pub const fn param(&self) -> &Param {
30        &self.param
31    }
32    #[doc = "0x08 - Comparator Control Register 0"]
33    #[inline(always)]
34    pub const fn ccr0(&self) -> &Ccr0 {
35        &self.ccr0
36    }
37    #[doc = "0x0c - Comparator Control Register 1"]
38    #[inline(always)]
39    pub const fn ccr1(&self) -> &Ccr1 {
40        &self.ccr1
41    }
42    #[doc = "0x10 - Comparator Control Register 2"]
43    #[inline(always)]
44    pub const fn ccr2(&self) -> &Ccr2 {
45        &self.ccr2
46    }
47    #[doc = "0x18 - DAC Control"]
48    #[inline(always)]
49    pub const fn dcr(&self) -> &Dcr {
50        &self.dcr
51    }
52    #[doc = "0x1c - Interrupt Enable"]
53    #[inline(always)]
54    pub const fn ier(&self) -> &Ier {
55        &self.ier
56    }
57    #[doc = "0x20 - Comparator Status"]
58    #[inline(always)]
59    pub const fn csr(&self) -> &Csr {
60        &self.csr
61    }
62    #[doc = "0x24 - Round Robin Control Register 0"]
63    #[inline(always)]
64    pub const fn rrcr0(&self) -> &Rrcr0 {
65        &self.rrcr0
66    }
67    #[doc = "0x28 - Round Robin Control Register 1"]
68    #[inline(always)]
69    pub const fn rrcr1(&self) -> &Rrcr1 {
70        &self.rrcr1
71    }
72    #[doc = "0x2c - Round Robin Control and Status"]
73    #[inline(always)]
74    pub const fn rrcsr(&self) -> &Rrcsr {
75        &self.rrcsr
76    }
77    #[doc = "0x30 - Round Robin Status"]
78    #[inline(always)]
79    pub const fn rrsr(&self) -> &Rrsr {
80        &self.rrsr
81    }
82    #[doc = "0x38 - Round Robin Control Register 2"]
83    #[inline(always)]
84    pub const fn rrcr2(&self) -> &Rrcr2 {
85        &self.rrcr2
86    }
87}
88#[doc = "VERID (r) register accessor: Version ID\n\nYou can [`read`](crate::Reg::read) this register and get [`verid::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@verid`] module"]
89#[doc(alias = "VERID")]
90pub type Verid = crate::Reg<verid::VeridSpec>;
91#[doc = "Version ID"]
92pub mod verid;
93#[doc = "PARAM (r) register accessor: Parameter\n\nYou can [`read`](crate::Reg::read) this register and get [`param::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@param`] module"]
94#[doc(alias = "PARAM")]
95pub type Param = crate::Reg<param::ParamSpec>;
96#[doc = "Parameter"]
97pub mod param;
98#[doc = "CCR0 (rw) register accessor: Comparator Control Register 0\n\nYou can [`read`](crate::Reg::read) this register and get [`ccr0::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`ccr0::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@ccr0`] module"]
99#[doc(alias = "CCR0")]
100pub type Ccr0 = crate::Reg<ccr0::Ccr0Spec>;
101#[doc = "Comparator Control Register 0"]
102pub mod ccr0;
103#[doc = "CCR1 (rw) register accessor: Comparator Control Register 1\n\nYou can [`read`](crate::Reg::read) this register and get [`ccr1::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`ccr1::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@ccr1`] module"]
104#[doc(alias = "CCR1")]
105pub type Ccr1 = crate::Reg<ccr1::Ccr1Spec>;
106#[doc = "Comparator Control Register 1"]
107pub mod ccr1;
108#[doc = "CCR2 (rw) register accessor: Comparator Control Register 2\n\nYou can [`read`](crate::Reg::read) this register and get [`ccr2::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`ccr2::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@ccr2`] module"]
109#[doc(alias = "CCR2")]
110pub type Ccr2 = crate::Reg<ccr2::Ccr2Spec>;
111#[doc = "Comparator Control Register 2"]
112pub mod ccr2;
113#[doc = "DCR (rw) register accessor: DAC Control\n\nYou can [`read`](crate::Reg::read) this register and get [`dcr::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`dcr::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@dcr`] module"]
114#[doc(alias = "DCR")]
115pub type Dcr = crate::Reg<dcr::DcrSpec>;
116#[doc = "DAC Control"]
117pub mod dcr;
118#[doc = "IER (rw) register accessor: Interrupt Enable\n\nYou can [`read`](crate::Reg::read) this register and get [`ier::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`ier::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@ier`] module"]
119#[doc(alias = "IER")]
120pub type Ier = crate::Reg<ier::IerSpec>;
121#[doc = "Interrupt Enable"]
122pub mod ier;
123#[doc = "CSR (rw) register accessor: Comparator Status\n\nYou can [`read`](crate::Reg::read) this register and get [`csr::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`csr::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@csr`] module"]
124#[doc(alias = "CSR")]
125pub type Csr = crate::Reg<csr::CsrSpec>;
126#[doc = "Comparator Status"]
127pub mod csr;
128#[doc = "RRCR0 (rw) register accessor: Round Robin Control Register 0\n\nYou can [`read`](crate::Reg::read) this register and get [`rrcr0::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`rrcr0::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@rrcr0`] module"]
129#[doc(alias = "RRCR0")]
130pub type Rrcr0 = crate::Reg<rrcr0::Rrcr0Spec>;
131#[doc = "Round Robin Control Register 0"]
132pub mod rrcr0;
133#[doc = "RRCR1 (rw) register accessor: Round Robin Control Register 1\n\nYou can [`read`](crate::Reg::read) this register and get [`rrcr1::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`rrcr1::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@rrcr1`] module"]
134#[doc(alias = "RRCR1")]
135pub type Rrcr1 = crate::Reg<rrcr1::Rrcr1Spec>;
136#[doc = "Round Robin Control Register 1"]
137pub mod rrcr1;
138#[doc = "RRCSR (rw) register accessor: Round Robin Control and Status\n\nYou can [`read`](crate::Reg::read) this register and get [`rrcsr::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`rrcsr::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@rrcsr`] module"]
139#[doc(alias = "RRCSR")]
140pub type Rrcsr = crate::Reg<rrcsr::RrcsrSpec>;
141#[doc = "Round Robin Control and Status"]
142pub mod rrcsr;
143#[doc = "RRSR (rw) register accessor: Round Robin Status\n\nYou can [`read`](crate::Reg::read) this register and get [`rrsr::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`rrsr::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@rrsr`] module"]
144#[doc(alias = "RRSR")]
145pub type Rrsr = crate::Reg<rrsr::RrsrSpec>;
146#[doc = "Round Robin Status"]
147pub mod rrsr;
148#[doc = "RRCR2 (rw) register accessor: Round Robin Control Register 2\n\nYou can [`read`](crate::Reg::read) this register and get [`rrcr2::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`rrcr2::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@rrcr2`] module"]
149#[doc(alias = "RRCR2")]
150pub type Rrcr2 = crate::Reg<rrcr2::Rrcr2Spec>;
151#[doc = "Round Robin Control Register 2"]
152pub mod rrcr2;