atsamd11c/
evsys.rs

1#[repr(C)]
2#[doc = "Register block"]
3pub struct RegisterBlock {
4    ctrl: Ctrl,
5    _reserved1: [u8; 0x03],
6    channel: Channel,
7    user: User,
8    _reserved3: [u8; 0x02],
9    chstatus: Chstatus,
10    intenclr: Intenclr,
11    intenset: Intenset,
12    intflag: Intflag,
13}
14impl RegisterBlock {
15    #[doc = "0x00 - Control"]
16    #[inline(always)]
17    pub const fn ctrl(&self) -> &Ctrl {
18        &self.ctrl
19    }
20    #[doc = "0x04 - Channel"]
21    #[inline(always)]
22    pub const fn channel(&self) -> &Channel {
23        &self.channel
24    }
25    #[doc = "0x08 - User Multiplexer"]
26    #[inline(always)]
27    pub const fn user(&self) -> &User {
28        &self.user
29    }
30    #[doc = "0x0c - Channel Status"]
31    #[inline(always)]
32    pub const fn chstatus(&self) -> &Chstatus {
33        &self.chstatus
34    }
35    #[doc = "0x10 - Interrupt Enable Clear"]
36    #[inline(always)]
37    pub const fn intenclr(&self) -> &Intenclr {
38        &self.intenclr
39    }
40    #[doc = "0x14 - Interrupt Enable Set"]
41    #[inline(always)]
42    pub const fn intenset(&self) -> &Intenset {
43        &self.intenset
44    }
45    #[doc = "0x18 - Interrupt Flag Status and Clear"]
46    #[inline(always)]
47    pub const fn intflag(&self) -> &Intflag {
48        &self.intflag
49    }
50}
51#[doc = "CTRL (w) register accessor: Control\n\nYou can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`ctrl::W`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@ctrl`]
52module"]
53#[doc(alias = "CTRL")]
54pub type Ctrl = crate::Reg<ctrl::CtrlSpec>;
55#[doc = "Control"]
56pub mod ctrl;
57#[doc = "CHANNEL (rw) register accessor: Channel\n\nYou can [`read`](crate::Reg::read) this register and get [`channel::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`channel::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@channel`]
58module"]
59#[doc(alias = "CHANNEL")]
60pub type Channel = crate::Reg<channel::ChannelSpec>;
61#[doc = "Channel"]
62pub mod channel;
63#[doc = "USER (rw) register accessor: User Multiplexer\n\nYou can [`read`](crate::Reg::read) this register and get [`user::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`user::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@user`]
64module"]
65#[doc(alias = "USER")]
66pub type User = crate::Reg<user::UserSpec>;
67#[doc = "User Multiplexer"]
68pub mod user;
69#[doc = "CHSTATUS (r) register accessor: Channel Status\n\nYou can [`read`](crate::Reg::read) this register and get [`chstatus::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@chstatus`]
70module"]
71#[doc(alias = "CHSTATUS")]
72pub type Chstatus = crate::Reg<chstatus::ChstatusSpec>;
73#[doc = "Channel Status"]
74pub mod chstatus;
75#[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`]
76module"]
77#[doc(alias = "INTENCLR")]
78pub type Intenclr = crate::Reg<intenclr::IntenclrSpec>;
79#[doc = "Interrupt Enable Clear"]
80pub mod intenclr;
81#[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`]
82module"]
83#[doc(alias = "INTENSET")]
84pub type Intenset = crate::Reg<intenset::IntensetSpec>;
85#[doc = "Interrupt Enable Set"]
86pub mod intenset;
87#[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`]
88module"]
89#[doc(alias = "INTFLAG")]
90pub type Intflag = crate::Reg<intflag::IntflagSpec>;
91#[doc = "Interrupt Flag Status and Clear"]
92pub mod intflag;