atsamd51j/
pac.rs

1#[repr(C)]
2#[doc = "Register block"]
3pub struct RegisterBlock {
4    wrctrl: Wrctrl,
5    evctrl: Evctrl,
6    _reserved2: [u8; 0x03],
7    intenclr: Intenclr,
8    intenset: Intenset,
9    _reserved4: [u8; 0x06],
10    intflagahb: Intflagahb,
11    intflaga: Intflaga,
12    intflagb: Intflagb,
13    intflagc: Intflagc,
14    intflagd: Intflagd,
15    _reserved9: [u8; 0x10],
16    statusa: Statusa,
17    statusb: Statusb,
18    statusc: Statusc,
19    statusd: Statusd,
20}
21impl RegisterBlock {
22    #[doc = "0x00 - Write control"]
23    #[inline(always)]
24    pub const fn wrctrl(&self) -> &Wrctrl {
25        &self.wrctrl
26    }
27    #[doc = "0x04 - Event control"]
28    #[inline(always)]
29    pub const fn evctrl(&self) -> &Evctrl {
30        &self.evctrl
31    }
32    #[doc = "0x08 - Interrupt enable clear"]
33    #[inline(always)]
34    pub const fn intenclr(&self) -> &Intenclr {
35        &self.intenclr
36    }
37    #[doc = "0x09 - Interrupt enable set"]
38    #[inline(always)]
39    pub const fn intenset(&self) -> &Intenset {
40        &self.intenset
41    }
42    #[doc = "0x10 - Bridge interrupt flag status"]
43    #[inline(always)]
44    pub const fn intflagahb(&self) -> &Intflagahb {
45        &self.intflagahb
46    }
47    #[doc = "0x14 - Peripheral interrupt flag status - Bridge A"]
48    #[inline(always)]
49    pub const fn intflaga(&self) -> &Intflaga {
50        &self.intflaga
51    }
52    #[doc = "0x18 - Peripheral interrupt flag status - Bridge B"]
53    #[inline(always)]
54    pub const fn intflagb(&self) -> &Intflagb {
55        &self.intflagb
56    }
57    #[doc = "0x1c - Peripheral interrupt flag status - Bridge C"]
58    #[inline(always)]
59    pub const fn intflagc(&self) -> &Intflagc {
60        &self.intflagc
61    }
62    #[doc = "0x20 - Peripheral interrupt flag status - Bridge D"]
63    #[inline(always)]
64    pub const fn intflagd(&self) -> &Intflagd {
65        &self.intflagd
66    }
67    #[doc = "0x34 - Peripheral write protection status - Bridge A"]
68    #[inline(always)]
69    pub const fn statusa(&self) -> &Statusa {
70        &self.statusa
71    }
72    #[doc = "0x38 - Peripheral write protection status - Bridge B"]
73    #[inline(always)]
74    pub const fn statusb(&self) -> &Statusb {
75        &self.statusb
76    }
77    #[doc = "0x3c - Peripheral write protection status - Bridge C"]
78    #[inline(always)]
79    pub const fn statusc(&self) -> &Statusc {
80        &self.statusc
81    }
82    #[doc = "0x40 - Peripheral write protection status - Bridge D"]
83    #[inline(always)]
84    pub const fn statusd(&self) -> &Statusd {
85        &self.statusd
86    }
87}
88#[doc = "WRCTRL (rw) register accessor: Write control\n\nYou can [`read`](crate::Reg::read) this register and get [`wrctrl::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`wrctrl::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@wrctrl`]
89module"]
90#[doc(alias = "WRCTRL")]
91pub type Wrctrl = crate::Reg<wrctrl::WrctrlSpec>;
92#[doc = "Write control"]
93pub mod wrctrl;
94#[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`]
95module"]
96#[doc(alias = "EVCTRL")]
97pub type Evctrl = crate::Reg<evctrl::EvctrlSpec>;
98#[doc = "Event control"]
99pub mod evctrl;
100#[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`]
101module"]
102#[doc(alias = "INTENCLR")]
103pub type Intenclr = crate::Reg<intenclr::IntenclrSpec>;
104#[doc = "Interrupt enable clear"]
105pub mod intenclr;
106#[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`]
107module"]
108#[doc(alias = "INTENSET")]
109pub type Intenset = crate::Reg<intenset::IntensetSpec>;
110#[doc = "Interrupt enable set"]
111pub mod intenset;
112#[doc = "INTFLAGAHB (rw) register accessor: Bridge interrupt flag status\n\nYou can [`read`](crate::Reg::read) this register and get [`intflagahb::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`intflagahb::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@intflagahb`]
113module"]
114#[doc(alias = "INTFLAGAHB")]
115pub type Intflagahb = crate::Reg<intflagahb::IntflagahbSpec>;
116#[doc = "Bridge interrupt flag status"]
117pub mod intflagahb;
118#[doc = "INTFLAGA (rw) register accessor: Peripheral interrupt flag status - Bridge A\n\nYou can [`read`](crate::Reg::read) this register and get [`intflaga::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`intflaga::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@intflaga`]
119module"]
120#[doc(alias = "INTFLAGA")]
121pub type Intflaga = crate::Reg<intflaga::IntflagaSpec>;
122#[doc = "Peripheral interrupt flag status - Bridge A"]
123pub mod intflaga;
124#[doc = "INTFLAGB (rw) register accessor: Peripheral interrupt flag status - Bridge B\n\nYou can [`read`](crate::Reg::read) this register and get [`intflagb::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`intflagb::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@intflagb`]
125module"]
126#[doc(alias = "INTFLAGB")]
127pub type Intflagb = crate::Reg<intflagb::IntflagbSpec>;
128#[doc = "Peripheral interrupt flag status - Bridge B"]
129pub mod intflagb;
130#[doc = "INTFLAGC (rw) register accessor: Peripheral interrupt flag status - Bridge C\n\nYou can [`read`](crate::Reg::read) this register and get [`intflagc::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`intflagc::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@intflagc`]
131module"]
132#[doc(alias = "INTFLAGC")]
133pub type Intflagc = crate::Reg<intflagc::IntflagcSpec>;
134#[doc = "Peripheral interrupt flag status - Bridge C"]
135pub mod intflagc;
136#[doc = "INTFLAGD (rw) register accessor: Peripheral interrupt flag status - Bridge D\n\nYou can [`read`](crate::Reg::read) this register and get [`intflagd::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`intflagd::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@intflagd`]
137module"]
138#[doc(alias = "INTFLAGD")]
139pub type Intflagd = crate::Reg<intflagd::IntflagdSpec>;
140#[doc = "Peripheral interrupt flag status - Bridge D"]
141pub mod intflagd;
142#[doc = "STATUSA (r) register accessor: Peripheral write protection status - Bridge A\n\nYou can [`read`](crate::Reg::read) this register and get [`statusa::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@statusa`]
143module"]
144#[doc(alias = "STATUSA")]
145pub type Statusa = crate::Reg<statusa::StatusaSpec>;
146#[doc = "Peripheral write protection status - Bridge A"]
147pub mod statusa;
148#[doc = "STATUSB (r) register accessor: Peripheral write protection status - Bridge B\n\nYou can [`read`](crate::Reg::read) this register and get [`statusb::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@statusb`]
149module"]
150#[doc(alias = "STATUSB")]
151pub type Statusb = crate::Reg<statusb::StatusbSpec>;
152#[doc = "Peripheral write protection status - Bridge B"]
153pub mod statusb;
154#[doc = "STATUSC (r) register accessor: Peripheral write protection status - Bridge C\n\nYou can [`read`](crate::Reg::read) this register and get [`statusc::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@statusc`]
155module"]
156#[doc(alias = "STATUSC")]
157pub type Statusc = crate::Reg<statusc::StatuscSpec>;
158#[doc = "Peripheral write protection status - Bridge C"]
159pub mod statusc;
160#[doc = "STATUSD (r) register accessor: Peripheral write protection status - Bridge D\n\nYou can [`read`](crate::Reg::read) this register and get [`statusd::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@statusd`]
161module"]
162#[doc(alias = "STATUSD")]
163pub type Statusd = crate::Reg<statusd::StatusdSpec>;
164#[doc = "Peripheral write protection status - Bridge D"]
165pub mod statusd;